python简单技巧

for循环快捷键
iter 回车 或者TAB

编码方式
ASCLL编码:包含英文数字等字符,每个字符1个字节
GBK编码: 兼容ASCALL编码,包含21003个中文,英文1个字节,汉字2个字节
Unicode字符集: 国际统一编码,旧字符集每个字符2字节,新字符集4字节
UTF-8编码:Unicode的存储于传输方式,英文1字节,中文3字节


使用字符串添加值产生垃圾内存多
例:

result ='' 
for number in range(10):
result +=str(number)        #这种方法简单但是产生新字符串垃圾内存

建议:
列表变字符串

list_result = []
for number in range(10):
list_result.append(str(number))
str_result = "".join(list_result)
print(str_result)

例2

result = []
while True:
    str_number = input("请输入:")
    if str_number =="":
    break
    result.append(str_number)
str_result = "-".join(result)
print(str_result)

字符串变列表
列表 = “a-b-c-d”.split(“分隔符”)

: list_result = “孙悟空_猪八戒_唐僧”.split(“_”)
print(list_result) [‘孙悟空’, ‘猪八戒’, ‘唐僧’]

列表添加元素 list01.append() list01.insert()
列表删除元素 list01.remove(元素) 或del

列表转字典
列表转换为字典的格式要求:列表中元素必须能够一分二
例: list =[(“a”,“b”),(“c”,“d”)]
list01 = [(“唐曾”,500),[“猪八戒”,100],“沙僧”]
dict01 = dict(list01) 得到 {‘唐曾’: 500, ‘猪八戒’: 100, ‘沙’: ‘僧’}

列表推导式
:list01 = [14,34,45,62,2,6]
list_result = [number for number in list01 if number>10 ] #大于10的数字列表
“”"
使用列表推导式生成1–50之间能被3或者5整除的数
使用列表推导式生成5–100之间的数字平方
“”"
list_number = [number for number in range(1,50) if number %3 0 or number %50]
list_number = [number **2 for number in range(5,101)]

python有多少种数据类型 == 两种 一种是可以变的 一种是不可变得


元组容器的思想
容器名称[开始:结束:间隔]
例:

month = int(input("请输入月份:"))
if month ==2print("28天")
#elif month ==4 or month ==6 or month ==9 or month ==11:
elif month in (4,6,9,11):
    print("30天")
 elseprint("31天")

改为:

       month = int(input("请输入月份:"))
       tuple_days = (31,28,31,30,31,30,31,31,30,31,30,31)
       print(tuple_days[month -1])

字典添加元素

  1. 字典不存在该key 添加 ,否则是修改
    格式: 字典[键] = 值
添加修改之前判断 
**例:** 
```python
新增键值做判断
    if "ss" not in dict01:
        dict01["ss"] = 113 
修改数据做判断:
    if "qtx" in dict01:
       dict01["qtx"] = 34
删除del字典[键]
    del dict01["bj"]
遍历
    (所有键) 
   格式:for 键名 in 字典  
  for key in dict01:
      print(key)
   (所有值)
   格式:for 值名 in 字典.values():
    for value in dict01.values():
        print()
   (所有的键和值)
    格式:for 键,值 in 字典.items():
     for key,value in dict01.items():
          print(key)
          print(value)
```|

**字典推导式**
    例:
         #dict01 = {}
         # for number in range(1,11):
              # if number %2 ==0:
                     #dict01[number] =number

推导式
dict01 = {number:number **2 for number in range(1,11) if number %2 ==0}

推导式2
list_name = [“张无忌”,“赵敏”,“周芷若”]
list_room = [101,102,103]
dict_info = {list_room[i]:list_name[i] for i in range(len(list_room))}
print(dict_info)

取值 :reserved_dict_info = {value:key for key,value in dict_info.items()} //键值倒转


集合管理
“”"
价值1:去重复
价值2 :数学运算(交集(共同元素),并集(不重复的,其他语言是或),补集,子集,超集)
“”"

  1. 创建 :
    list01 = [“孙悟空”,“猪八戒”,“唐僧”]
    set01 = set(list01)

  2. 添加 :
    set01.add(“沙僧”)

  3. 删除:
    set01.remove(“猪八戒”)


‘’’
列表适合:存储单一维度的信息
疫情地区列表(地区)

字典适合:存储多个维度的信息
疫情信息(地区、新增人数、现有人数…)
‘’’

你可能感兴趣的:(python,笔记,Linux系统运维,python,django)