# 1.公共操作 # del 删除 删除变量或指定容器内数据 变量,容器里面的值 # + 将两个相同类型序列进行连接 字符串,列表,元组 print('1.公共操作') print('a' + 'b') print(['a'] + ['b']) print(('a',)+('b',)) # 元组,要有, # print({1:2}+{2:3}) # 字典不行,报错 # * 复制 将里面的数据线进行复制 字符串,列表,元组 # 语法糖 带来便利的操作 print() print('-'*50) print([1, 2, 3]*3) print((1, 2)*2) # len 获取序列长度 字符串、列表、元组、字典、集合 print() list1 = [1, 2, 3] print(len(list1)) print(list1.__len__()) set1 = {1, 2, 2} # 长度是2,因为去重 print(len(set1)) # reverse 倒置 将容器里面的数据倒置 字符串、列表、元组、字典 # 因为集合中的数据没有顺序 print() list1 = [1, 2, 3] for i in list1: print(i) # 输出123 for i in reversed(list1): print(i) # 输出321 # max、min 求容器数据的最大致最小值 字符串、列表、元组、字典、集合 print() list1 = [1, 2, 3] print(max(list1)) print(min(list1)) str1 = 'adcba' print(max(str1)) # 根据ASCII输出 # sum 求将容器的数据求和 列表、元组、字典、集合 print() list1 = [2, 3, 6] print(sum(list1)) tuple1 = (2, 3, 6) print(sum(tuple1)) set1 = {2, 3, 6} print(sum(set1)) # enumerate 索引映射 将索引映射给容器里面的数据 列表、元组或字符串 print() list1 = ['a', 'b', 'c'] for i in enumerate(list1): print(i) for index, data in enumerate(list1): # 默认start=0 print(index, data) for index, data in enumerate(list1, start=1): # 索引从1开始 print(index, data) # 索引是1,2,3 # in not in 是否存在 判断数据是否存在于容器内 字符串、列表、元组、字典、集合 print() list1 = [1, 2, 3] print(1 in list1) print(1 not in list1)
# 2.容器类型的转换 # list tuple set print() print('2.容器类型的转换') list1 = [1, 2, 3, 2] tuple1 = (1, 2, 3, 2) set1 = {1, 2, 3, 2} # 转成集合会去重! print(set1) # 输出123 因为去重2 print(tuple(list1)) print(list(set1)) # 因为集合去重了2,只剩下了123
# 3.列表推导式 # # 普通写法 # list_data = [] # for i in range(10): # list_data.append(i) # print(list_data) # # 推导式写法 # # 代码简洁,运行速度变快 # # 可读性变差 # print([i for i in range(10)]) print() print('3.列表推导式') # 步骤: # 主体:for循环 # 类型:[] 表示列表 # 返回的数据:i print([i for i in range(10)])
# 4.列表推导式和if一起使用 print() print('4.列表推导式和if一起使用') # 普通写法 list_data = [] for i in range(10): if i % 2 == 0: # 选择0-9中的偶数 list_data.append(i) print(list_data) # 对应的推导式写法 print([i for i in range(10) if i % 2 == 0])
# 5.字典推导式 print() print('5.字典推导式') dict_data = {} for i in range(10): dict_data[i] = i+1 # value是key加1 print(dict_data) # 对应的字典推导式 # 主体:for循环 # 类型:{} 表示字典 # 返回的数据:i:i+1 print({i: i+1 for i in range(10)})
# 6.字典推导式和if一起使用 print() print('6.字典推导式和if一起使用') dict_data = {'小明': 58, '小芳': 80, '小刚': 99, '小雨': 46} print({(i[0], i[1]) for i in dict_data.items() if i[1] < 60}) # 注意这里if后面不能有: print([(i[0], i[1]) for i in dict_data.items() if i[1] < 60]) # 注意这里if后面不能有:
# 7.集合推导式 print() print('7.集合推导式') print({i for i in range(10)}) # 这里是i不是键值对 # 所以是集合不是字典
# 8.三元表达式 print() print('8.三元表达式') score = 40 if score > 60: print('合格') else: print('不合格') print('合格') if score > 60 else print('不合格') score = 50 if score > 60: res = 'True' else: res = 'False' print(res) res = 'True' if score > 60 else 'False' print(res)
# 9.列表推导式和三元表达式一起 # 判断成绩是否合格 print() print('9.列表推导式和三元表达式一起') dict_data = {} for i in range(58, 63): if i > 60: dict_data[i] = True else: dict_data[i] = False print(dict_data) print({i: True if i > 60 else False for i in range(58, 63)})
# 今日练习 # 请用列表推导式完成1到100所有奇数的和 print() print('今日练习') print(sum([i for i in range(1, 101) if i % 2 != 0]))
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python中的公共操作和推导式 - Python技术站