簡略化されたネストされたループで条件を満たすものをすべて追加する方法はありますか? 私の次の試みは失敗しました:
count += 1 if n == fresh for n in buckets['actual'][e] else 0
sum
ジェネレーター式で使用します。
sum(n == fresh for n in buckets['actual'][e])
True == 1
とのようにFalse == 0
、else
必須ではありません。
関連記事:ブール値を int として使用するのは 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)