推导式comprehensions(又称解析式),是Python中很强大的、很受欢迎的特性,具有语言简洁,速度快等优点。
推导式包括:
1.列表推导式
2.字典推导式
3.集合推导式
1.列表:
[expr for item in collection if condition] #用中括号
[表达式 for 项目 in 采集 if 条件]
例: 整除3的数字列表
num = [x for x in range(100) if x % 3 == 0]
print(num)
2.字典:
{key : value for item in collection if condition} # 字典用大括号
例1:快速更换key和value
mcase = {'a': 10, 'b': 34}
mcase_frequency = {v: k for k, v in mcase.items()}
print(mcase_frequency)
3.集合:
{expr for item in collection if condition} #集合也应该是大括号
例:
strings = ['a','is','with','if','file','exception']
{len(s) for s in strings} #有长度相同的{ }会只留一个 [ ]多个,这在实际上也非常有用
set([1, 2, 4, 9])