赞
踩
''' 推导式: Python推导式是一种独特的数据处理方式,可以从一个数据序列构建另一个新的数据序列的结构体 根据得到的数据类型不同,分为: 1、元组(tuple)推导式 2、列表(list)推导式 3、字典(dict)推导式 4、集合(set)推导式 ''' ''' 1、元组(tuple)推导式 元素推导式可以利用range区间、元组、列表、字典和集合等数据类型,快速生成一个满足制定需求的元组 基本格式: (out_exp_res for item in Sequence)或(out_exp_res for item in Sequence if conditionnal) 1、out_exp_res:生成元素表达式,可以是有返回值的函数 2、for out_exp in sequence:迭代Sequence将out_exp传入到out_exp_res表达式中 3、if conditionnal:条件语句,可以过滤Sequence中不符合条件的值 ''' def tuple_info(): #简单的元组推导式 t1 = (x for x in range(1,11)) #表达式原理 for x in range(1,11): print(x,end=' ') print() t1 =(x for x in range(1,11)) #生成128位ASCII码元组 t2 = ((chr(x),x) for x in range(128)) #生成100以内能被7整除的所有数字的元组 t3 = (x for x in range(100) if x % 7 == 0) for i in range(100): if i % 7 ==0: print(i) #生成99乘法表结果元组 t4 = (x*y for x in range(1,10) for y in range(1,x+1)) for i in range(1,10): for j in range(1,i+1): print(i*j) #将列表中的字符转成大写 words = ['apple','banana','cherry'] upper_words = (word.upper() for word in words ) # 表达式原理: upper_words = [] for word in words: l = word.upper() upper_words.append(l) print(tuple(upper_words)) def list_info(): #简单的列表推导式 l1 = [x for x in range(1,11)] #生成128位ASCII码列表 l2 = [chr(x) for x in range(128)] #生成100以内能被7整除的所有数字的列表 l3 = [x for x in range(100) if x % 7 == 0] #生成99乘法表结果列表 l4 = [x*y for x in range(1,10) for y in range(1,x+1)] #将列表中的字符转成大写 words = ['apple','banana','cherry'] upper_words = (word.upper() for word in words ) #表达式原理: upper_words = [] for word in words: l = word.upper() upper_words.append(l) print(upper_words) def dict_info(): names = ['Bob','Tom','Alice','Jerry','Wendy','Smith'] ages = [52,63,41,58,62,74] d1 = {name:len(name) for name in names } # for k,v in d1.items(): # print(k,v) def set_info(): data = {'Bob', '123','Tom', '456','Alice', 'Jerry796','789', '546Wendy', 'Smith'} s1 = {n for n in data if n.isdigit()} for i in s1: print(i) if __name__ == '__main__': # tuple_info() # list_info() # dict_info() set_info()
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。