最近在学习Python, 虽然说语法不是很复杂,可是还是有很多微妙之处,下面是对"推导列表的简单例子"
所谓的"推导列表"就是更具表达式来生成有规则的列表.
#简单的推导列表 def singleSlightlyLoopSample(): list1=[x*x for x in range(100)]; print(list1); #包含元祖的推导列表 def doubleSlightlyLoopSample(): list1=[(x,y) for x in range(10) for y in range(10,20)]; print(list1); print("please input entry to exit!"); #利用条件判断的推导列表 def conditionSlightlyLoopSample(): girls = ['alice', 'bernice', 'clarice'] boys = ['chris', 'arnold', 'bob'] #只有boy和girl的第一个字母都相同时才会组成元祖 list1=[(b,g) for b in boys for g in girls if b[0]==g[0]] print(list1); #利用字典生成的推导列表 def conditionSlightlyLoopSampleByDict(): girls = ['alice', 'bernice', 'clarice','david'] boys = ['chris', 'arnold', 'bob','jason'] #根据女孩名字的第一个字母,以及名字生成一个字典 girlsDict=dict([(k[0],k) for k in girls]) #根据boy名字的第一个字母作为key到女孩的字典中取查找 bMppingG=[(b,girlsDict.get(b[0])) for b in boys] print(bMppingG); #singleSlightlyLoopSample(); #doubleSlightlyLoopSample(); #conditionSlightlyLoopSample(); conditionSlightlyLoopSampleByDict();