calendarcodediamondfacebookfingerglobalgoogleplushatenahomepagetopplainpocketrssservicetwitterwordpresshome2searchfoldernext-arrowback-arrowfirst-arrowlast-arrow

Python : all()はすべての要素が真、any()は真となる要素が一つでもあれば真

all()、any()は、イテラブル(繰り返し可能なオブジェクト)を一つだけ引数にとり、真理値(True / False)を返す組み込み関数である。

エンジニア速報は Twitter の@commteで配信しています。

Sponsored Link

all() と any() のポイント

  • all()は、引数のイテラブルが「すべての要素が True(真)である」というふうに判定されると True を返す
  • any() は「真となる要素が一つでもあれば真を返す」働きをする。それ以外は False を返す

Python における真理値とは、ある命題が「真」か「偽」かを示す値である。Python で扱う真理値は、真と偽のみ。この値を扱うデータ型として bool 型が用意されている。True や False と書くだけで利用できる。

all()

all()は、引数のイテラブルが「すべての要素が True(真)である」というふうに判定されると True を返す。そして、一つでも False(偽) が存在する場合は、False を返す。

all([True, True, True]) # True
all([True, True, False]) # False

空文字を入れると、False になる。なぜなら、空文字は False だからである。

all(['a', 'b', '']) # False

空文字は False なので、全て空文字にしても False を返す。

all(['', '', '']) # False

空のタプルがあっても False を返す。

all(['a', 2, {}]) # False

None を混入させると False になる。

all(['a', 2, None]) # False

全ての要素に、None を入れると False を返す。

all([None, None, None]) # False

しかし、空のイテラブルは、全てが真となるために True を返すようだ。

all([]) # True

空文字のときに、入力漏れを出力する関数。

x = ['yamada', {'year' : 21}, ''] def func(i): if all(i) == False: return '入力漏れがあります' func(x) # 入力漏れがあります

any()

any() は「真となる要素が一つでもあれば真を返す」働きをする。それ以外は False を返す。

any([True, True, False]) # True
any([False, False, False]) # False

文字が一つでもあれば真となる。

any(['a', 'b', '']) # True

全ての要素が空の場合は False を返す。

any(['', '', '']) # False

None の場合は False を返す。

any([None, None, None]) # False

Python おすすめ本

スポンサード リンク

Comments

Leave a Comment

コメントする

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください