1. 公共操作
1.1 运算符
+(合并):字符串,列表,元组
*(复制):字符串,列表,元组
in(元素是否存在):字符串,列表,元组,字典
2. 公共方法
len():计算容器中元素个数
del或del():删除
max():返回容器中元素最大值
min():返回容器中元素最小值
range(start,end,step):生成从start到end的数字,步长为step,供for循环使用。[start,end)
enumerate():函数用于将一个可遍历的数据对象组合为一个索引序列,同时列出数据和数据下标,一般在for循环当中
enumerate(可遍历对象,start=0)
注意:
start参数用来设置遍历数据的下标的起始值,默认为0
list1 = ["Tom","Jerry","Jack","James","Ray"]
for i in enumerate(list1):
print(i) '''(0, 'Tom')
(1, 'Jerry')
(2, 'Jack')
(3, 'James')
(4, 'Ray')''''
enumerate返回的是元组,第一个数据是原对象下标,第二个是原对象数据
3. 推导式
3.1 列表推导式
while循环实现:
list1 = []
i = 0
while i < 10 :
list1.append(i)
i +=1
for循环实现:
list1 = []
for i in range(10) :
list1.append(i)
推导式实现:
list1 = [i for i in range(10)]
带if的推导式:
list1 = [i for i in range(10) if i%2 ==0]
多for推导式:
list1 = [(i,j) for i in range(5) if i%2 == 0 for j in range(5) if j%2 !=0]
# [(0, 1), (0, 3), (2, 1), (2, 3), (4, 1), (4, 3)]
3.2 字典推导式
创建一个字典:
dict1={i:i**2 for i in range(5) if i%2 == 0}
# {0: 0, 2: 4, 4: 16}
合并列表:
list1 = ['name','age','gender']
list2 = ["Tom",18,"男"]
dict1 = {list1[i]:list2[i] for i in range(len(list1))}
# {'name': 'Tom', 'age': 18, 'gender': '男'}
如果两个了列表元素个数不同,len统计元素多的列表时会报错
提取字典目标数据:
dict1 = {'Kobe':24,'James':23,'Jordan':23,'Wade':3,'Yao':11}
player = {key:value for key,value in dict1.items() if value>20}
print(player)
# {'Kobe': 24, 'James': 23, 'Jordan': 23}
3.3 集合推导式
list1 = [1,2,2,3,4]
s = {i ** 2 for i in list1 if i%2 == 0}
# {16,4}
总结:
列表推导式:
[elem for i in range() if 条件]
字典推导式:
[key: value for i in … if 条件]
集合推导式:
[elem for i in … if 条件]