python:setdefault()、zip()、enumerate()、sorted()

python:setdefault()、zip()、enumerate()、sorted()

  1. 列表推导实现男女孩配对: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']
    
  1. 序列缝合:zip()

    name=['anne','beth','che']
    age=[12,21,22,23]
    print(list(zip(name,age)))  # [('anne', 12), ('beth', 21), ('che', 22)]
    
  1. 遍历序列同时获取值和索引:enumerate()

    names=['anne','beth','che']
    for index,name in enumerate(names): # 同时获取值和索引
        if 'che' in name:
            names[index]='jin'
    print(names)                       # ['anne', 'beth', 'jin']
    
  1. 排序:sorted()

    print(sorted('aBc'))                # ['B', 'a', 'c']
    print(sorted('aBc',key=str.lower))  # ['a', 'B', 'c']
    
上一篇:使用dlopen加载动态库


下一篇:73. 矩阵置零