リストの中に、ある条件を満たしている要素があるかどうか?をチェックしたい場合は、例えばforループなどでひとつひとつ要素を確認していく方法がありますが、Python標準組込み関数のall()やany()を使うと、簡単にそれを実現できます。
- all()関数は要素が全部条件に合致しているかどうか、
- any()関数は一つでも条件に合致している要素があるかどうか
を教えてくれます。
今回は、これらの関数の使い方についてまとめます。
確認した環境
- Ubuntu16.04LTS
- Python3.7.2@Anaconda
all()関数
イテラブルの要素が全て真(または空)の場合、Trueを返します。
# 引数のイテラブルの要素が全て真の場合、Trueを返します。
>>> all([True, True, True])
True
# 引数のイテラブルの要素が全て真でない場合は、Falseを返します。
>>> all([True, True, False])
False
>>> all([False, False, False])
False
# 引数のイテラブルが空の場合もTrueを返します。
>>> all([])
True
<参考>公式リファレンス
https://docs.python.org/ja/3.7/library/functions.html?highlight=all#all
any()関数
イテラブルのいずれかの要素が真の場合にTrueを返します。イテラブルが空の場合はFalseを返します。
# 引数のイテラブルのいずれかの要素が真の場合、Trueを返します。
>>> any([True, True, True])
True
>>> any([True, True, False])
True
# 引数のイテラブルの要素が全て偽の場合は、Falseを返します。
>>> any([False, False, False])
False
# 引数のイテラブルが空の場合はFalseを返します。
>>> any([])
False
<参考>公式リファレンス
https://docs.python.org/ja/3.7/library/functions.html?highlight=all#any
まとめ
組み込み関数のall()関数およびany()関数の使い方についてまとめました。