1.生成式(推导式)
如下面的代码,通过如下的形式,从迭代器 prices.items()
中把键值对一个个取出来,然后分成两个参数 key
,value
,再判断是否满足 value>100
,若满足则把这两个参数赋给 for
左边的两个变量(刚好也是同名的) key
和value
。而for
左边的两个参数刚好用冒号连起来,加上外面的花括号,说明最后返回的结果也是一个字典。
这个形式其实只是把多行的代码压缩成一行代码,逻辑不复杂,不过却能把逻辑直观地展现,熟悉之后大家可以习惯用这种写法,能让代码看起来没那么冗余。
prices = {
'AAPL': 191.88,
'GOOG': 1186.96,
'IBM': 149.24,
'ORCL': 48.44,
'ACN': 166.89}
# 用for循环提取出键和值,并找出价格大于100键值对,形成一个新的字典
prices2 = {key: value for key, value in prices.items() if value > 100}
print(prices2)
2.嵌套列表
注意嵌套列表还是一个列表,只是列表中的元素也还是列表