Pythonのリストがあり、要素が負かどうかをチェックしたいのですが、すべての要素に「負」のチェックを適用して、負の要素があるかどうかを確認するための簡単な関数または構文はありますか?ドキュメンテーション似たようなものは見つかりませんでした。私が思いついた最良のものは次のとおりです。
if (True in [t < 0 for t in x]):
# do something
これはあまり洗練されていないと思います。Python でこれを行うより良い方法はあるでしょうか?
参照リストのすべての要素が条件に一致するかどうかを確認するにはどうすればよいですか?すべての要素の条件をチェックします。「any」と「all」のチェックは関連していることに留意してください。ド・モルガンの法則により「または」と「そして」が関連しているのと同じです。
any
ここでの既存の回答では、反復処理を実行するために組み込み関数を使用しています。Python の any 関数と all 関数はどのように機能しますか?any
およびその対応するものの説明についてはall
、を参照してください。
チェックしたい条件が「別のコンテナに見つかる」の場合は、次の項目のいずれかがリスト内にあるかどうかを確認するにはどうすればよいですか?そしてそれに対応する次の項目がすべてリストに含まれているかどうかを確認するにはどうすればよいですか?とを使用するany
とall
機能しますが、より効率的なソリューションも可能です。
ベストアンサー1
if any(t < 0 for t in x):
# do something
また、「True in ...」を使用する場合は、ジェネレータ式にして、O(n) メモリを消費しないようにします。
if True in (t < 0 for t in x):