Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonのany()とall()関数とは?違いと使い方を徹底解説


Pythonには、「AND」「OR」の論理演算に相当する処理を行うための組み込み関数として、all()any()が用意されています。これらの関数を使うことで、リストやタプルなどのイテラブルの中身を簡潔に判定できます。

Pythonのany()関数

any()関数は、イテラブル内の要素が1つでも真(True)であればTrueを返し、それ以外はFalseを返します。イテラブルが空の場合もFalseを返します。

構文

any(iterable)

引数には、リスト・タプル・辞書などのイテラブルオブジェクトを指定します。

例1:リストの場合

>>> mylst = [False, True, False]
>>> x = any(mylst)
>>> x
True

出力結果:2番目の要素がTrueであるため、結果はTrueになります。

例2:タプルの場合

タプル内にTrueの要素が1つでもあるかどうかを判定します。

>>> # タプル - いずれかの要素がTrueかどうかを確認
>>> mytuple = (0, 1, 0, False)
>>> x = any(mytuple)
>>> print(x)
True

例3:セットの場合

セット内にTrueの要素が1つでもあるかどうかを判定します。

>>> myset = {0, 1, 0}
>>> x = any(myset)
>>> print(x)
True

例4:辞書の場合

辞書を渡した場合は、値ではなくキーに対して判定が行われます。

>>> mydict = {0: "Apple", 1: "Banana"}
>>> x = any(mydict)
>>> print(x)
True

any()の戻り値

any()は以下の値を返します:

  • True – イテラブル内の少なくとも1つの要素がTrueの場合

  • False – すべての要素がFalseの場合、またはイテラブルが空の場合

条件戻り値
すべての値が真True
少なくとも1つの値が真True
すべての値が偽False
空のイテラブルFalse

Pythonのall()関数

all()関数は、イテラブル内のすべての要素が真であればTrueを返し、それ以外はFalseを返します。イテラブルが空の場合はTrueを返す点に注意してください(これはany()とは逆の挙動です)。

構文

all(iterable)

引数には、リスト・タプル・辞書などのイテラブルオブジェクトを指定します。

例1:リストの場合

リスト内のすべての要素がTrueかどうかを判定します。

>>> mylst = [True, True, False]
>>> x = all(mylst)
>>> print(x)
False

リスト内に1つでもFalseが含まれているため、結果はFalseになります。

例2:タプルの場合

タプル内のすべての要素がTrueかどうかを判定します。

>>> mytuple = (0, True, False)
>>> x = all(mytuple)
>>> print(x)
False

例3:セットの場合

セット内のすべての要素がTrueかどうかを判定します。

>>> myset = {True, 1, 1}
>>> x = all(myset)
>>> print(x)
True

例4:辞書の場合

辞書の場合もany()と同様に、キーに対して判定が行われます。

>>> mydict = {0: "Apple", 1: "Banana"}
>>> x = all(mydict)
>>> print(x)
False

all()の戻り値

all()は以下の値を返します:

  • True – イテラブル内のすべての要素がTrueの場合

  • False – イテラブル内に1つでもFalseの要素がある場合

条件戻り値
すべての値が真True
少なくとも1つの値が偽False
すべての値が偽False
空のイテラブルTrue

  1. C/C++の「!」演算子に相当するPythonの機能とは?

    Pythonで「!」演算子に相当するものは? C/C++において、! 記号は論理否定(NOT)演算子として定義されています。Pythonでは、これに相当するのが not 演算子です。 not 演算子は、オペランドが偽(False)であれば真(True)を返し、真(True)であれば偽(False)を返します。つまり、ブール値(真偽値)を反転させる働きを持っています。 基本的な使い方と実行例 >>> not(True) False >>> not(False) True >>> not(20>30) True >>>

  2. Pythonのブール演算子とは?and・or・notの基本と使い方をわかりやすく解説

    Pythonにおけるブール演算子の基本Pythonでは、and、or、not の3つの論理演算子が提供されており、これらは「ブール演算子」とも呼ばれます。条件分岐や繰り返し処理など、プログラムの制御フローを組み立てる際に欠かせない重要な演算子です。それぞれの演算子には以下のような特徴があります。and:2つのオペランド(被演算子)を必要とし、両方が真(True)の場合にのみ True を返すor:2つのオペランドを必要とし、どちらか一方でも真であれば True を返すnot:1つのオペランドを必要とし、その真偽値を反転させるand演算子:両方が真のときだけTrueを返すブール演算子 and は