python字典生成式(推导式)的用法

prices = {
    'AAPL': 191.88,
    'GOOG': 1186.96,
    'IBM': 149.24,
    'ORCL': 48.44,
    'ACN': 166.89,
    'FB': 208.09,
    'SYMC': 21.29
}
# 用股票价格大于100元的股票构造一个新的字典
prices2 = {key: value for key, value in prices.items() if value > 100}
print(prices2)

下面主要针对推导式这句代码解释一下:

字典推导式的语法是 {key: value for key, value in iterable if condition},其中 key 和 value 是根据迭代过程中得到的键值对的键和值,iterable 是一个可迭代对象,condition 是一个条件表达式。这个语法是用来构建一个新的字典,其中包含满足条件的键值对。

prices.items() 返回了一个迭代器,该迭代器包含了 prices 字典中的键值对。

for key, value in prices.items() 这部分是一个迭代过程,它遍历了 prices 字典中的每一个键值对。在每次迭代中,key 变量被赋值为当前键,value 变量被赋值为当前值。

if value > 100 是一个条件,它检查当前值是否大于 100。如果满足条件,就会执行 {key: value} 这部分代码。

{key: value} 这部分代码构建了一个新的字典,其中键为当前迭代到的键,值为当前迭代到的值。这个键值对被添加到最终的字典中。
最终,字典推导式会返回一个新的字典,其中包含了满足条件的键值对。
因此,这段代码的作用是遍历 prices 字典中的每一个键值对,如果值大于 100,则将这个键值对添加到新字典 prices2 中。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值