列表推导式练习
使用列表推导式完成找到嵌套列表中名字含有两个'e'的所有名字
方法1:
names = [['Tom', 'Billy', 'Jefferson', 'Andrew', 'Wesley', 'Steven', 'Joe'], ['Alice', 'Jill', 'Ana', 'Wendy', 'Jennifer', 'Sherry', 'Eva']] lis = [i for i in range(0,len(names))] for i in names: for j in i: if j.count("e") >= 2: print(j,end=", ")
# Jefferson, Wesley, Steven, Jennifer,
方法2:
names = [['Tom', 'Billy', 'Jefferson', 'Andrew', 'Wesley', 'Steven', 'Joe'], ['Alice', 'Jill', 'Ana', 'Wendy', 'Jennifer', 'Sherry', 'Eva']] print([name for lst in names for name in lst if name.count('e') >= 2])
# ['Jefferson', 'Wesley', 'Steven', 'Jennifer']
合并大小写对应的value值,将key统一成小写
# 方法1: mcase = {'a': 10, 'b': 34, 'A': 7, 'Z': 3} ase = {re.lower() : mcase.get(re.lower(), 0) + mcase.get(re.upper(), 0) for re in mcase} print(ase) # {'a': 17, 'b': 34, 'z': 3} # 方法2: mcase = {'a': 10, 'b': 34, 'A': 7, 'Z': 3} ase = {} for re in mcase : ase[re.lower()] = mcase.get(re.lower(), 0) + mcase.get(re.upper(), 0) print(ase) # {'a': 17, 'b': 34, 'z': 3}