列表推導式性能
含義:經過一行代碼生成列表,列表生成式性能高於列表操做。若是代碼邏輯不復雜狀況下能夠優先使用列表生成式。generator
a = [x for x in range(21) if x%2==0]it
生成器轉換成爲list能夠直接用list(generator)便可。for循環
含義:經過一行代碼生成字典class
將字典的key、value置換過來。sed
my_dict = {'frank': 22, 'bob': 24, 'tom': 28}
reversed_dict = {value:key for key, value in my_dict.items()}
print(reversed_dict)
輸出結果:{22: 'frank', 24: 'bob', 28: 'tom'}
含義:一行的代碼生成集合循環
將字典中的key提取出來,放入一個set中遍歷
my_dict = {'frank': 22, 'bob': 24, 'tom': 28}
my_set = {key for key, value in my_dict.items()}
print(my_set, type(my_set))
輸出結果:
{'tom', 'bob', 'frank'} <class 'set'>
my_set = set(my_dict.keys())生成器