python:setdefault()、zip()、enumerate()、sorted()
-
列表推导实现男女孩配对:setdefault() 以首字母为键的字典列表
girls=['alice','bernice','clarice'] boys=['chris','arnold','bob'] letterGirls={} for girl in girls: letterGirls.setdefault(girl[0],[]).append(girl) #以女孩首字母创建列表字典 如:‘a’:[] print([b+'+'+g for b in boys for g in letterGirls[b[0]]]) #以男孩的首字母匹配女孩首字母列表 # 结果:['chris+clarice', 'arnold+alice', 'bob+bernice']
-
序列缝合:zip()
name=['anne','beth','che'] age=[12,21,22,23] print(list(zip(name,age))) # [('anne', 12), ('beth', 21), ('che', 22)]
-
遍历序列同时获取值和索引:enumerate()
names=['anne','beth','che'] for index,name in enumerate(names): # 同时获取值和索引 if 'che' in name: names[index]='jin' print(names) # ['anne', 'beth', 'jin']
-
排序:sorted()
print(sorted('aBc')) # ['B', 'a', 'c'] print(sorted('aBc',key=str.lower)) # ['a', 'B', 'c']