\

Pythonにはallanyという組み込み関数があります。これらの関数は、if文における複数条件をスマートにしてくれます。

allとanyの基本

  • allはPythonの組み込み関数で、リストなどの中身がすべてTrueであればTrueを返す関数です。
  • anyは中身に一つでもTrueがあればTrueを返します。

例えば、以下のように書くことができます。

if all([ a > 0, a % 2 == 0, a != 10, a != 100, ]):
    pass

これは、すべての条件式が揃っているので美しいと言えます。

注意点

allを使った場合、一旦リストを生成するため、すべての条件が評価されます。単に右側の条件も評価するから遅い、というだけならあまり問題はないのですが、次のようなケースで問題が起こります。

if a is not None and a > 0: # aはNoneかもしれないが、短絡評価によってエラーが出ない
    pass

これを

if all([ a is not None, a > 0, ]):
    pass

こう書き換えてしまうと、コメントに書いたようにエラーが起きてしまいます。

以上、Pythonのallanyについての基本的な使い方と注意点を説明しました。これらの関数を理解し、適切に使用することで、より効率的なコーディングが可能になります。

投稿者 admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です