有没有办法在速记嵌套循环中添加满足条件的所有内容?我的以下尝试不成功:
count += 1 if n == fresh for n in buckets['actual'][e] else 0
sum
与生成器表达式一起使用:
sum(n == fresh for n in buckets['actual'][e])
asTrue == 1
和False == 0
, soelse
不是必需的。
相关阅读:将布尔值用作整数是Pythonic吗? , Python 中的 False == 0 和 True == 1 是实现细节还是由语言保证?
使用sum()
功能:
sum(1 if n == fresh else 0 for n in buckets['actual'][e])
或者:
sum(1 for n in buckets['actual'][e] if n == fresh)