Python中的any函式和all函式

2021-09-27 11:28:32 字數 1695 閱讀 2139

any字面意思任何乙個,any函式用於判定給定的可迭代引數中的元素是否全部為false,如果其中的任何乙個為true,則返回 true,否則,返回false。

元素除了是 0、空、false 外都算 true。

>>> any(['a', 'b', 'c', 'd'])  # 列表list,元素都不為空或0

true

>>> any(['a', 'b', '', 'd']) # 列表list,存在乙個為空的元素

true

>>> any([0, '', false]) # 列表list,元素全為0,'',false

false

>>> any(('a', 'b', 'c', 'd')) # 元組tuple,元素都不為空或0

true

>>> any(('a', 'b', '', 'd')) # 元組tuple,存在乙個為空的元素

true

>>> any((0, '', false)) # 元組tuple,元素全為0,'',false

false

>>> any() # 空列表

false

>>> any(()) # 空元組

false

除了上面對基本可迭代物件的直接判定,還可以對較複雜的可迭代物件通過增加判定條件進行判定。

>>> msgs = [,,]

>>> if any(msg['type'] == "bb" for msg in msgs):

print("not all aa")

else:

print("all aa")

not all aa

all 字面意思為所有的,all函式用於判斷給定的可迭代引數中的所有元素是否都為 true,如果是返回 true,否則返回 false。

>>> all(['a', 'b', 'c', 'd'])  # 列表list,元素都不為空或0

true

>>> all(['a', 'b', '', 'd']) # 列表list,存在乙個為空的元素

false

>>> all([0, 1,2, 3]) # 列表list,存在乙個為0的元素

false

>>> all(('a', 'b', 'c', 'd')) # 元組tuple,元素都不為空或0

true

>>> all(('a', 'b', '', 'd')) # 元組tuple,存在乙個為空的元素

false

>>> all((0, 1, 2, 3)) # 元組tuple,存在乙個為0的元素

false

>>> all() # 空列表

true

>>> all(()) # 空元組

true

同樣的,還可以對複雜的可迭代引數,通過增加判定條件,對其進行判定。

>>> msgs = [,,]

>>> if all(msg['type'] == "aa" for msg in msgs):

print("all aa")

else:

print("not all aa")

not all aa

python中的any 和all 函式

對於all x 引數x中的所有元素不為0 或false,則返回true,否則返回false。另外,如果x為空物件,也是返回true。例如 a all a b c d print 列表list,元素都不為空或0 a b all a b d print 列表list,存在乙個為空的元素 b c all ...

python中all 和any 函式總結

這個函式可能會有點坑,解釋如下 如果iterable的所有元素不為0,false或者iterable為空,函式all iterable 返回true,否則返回false。注意 空元組 空列表返回值為true。例項 all a b c d 列表list,元素都不為空或0 true all a b d ...

matlab 中all和any函式

all函式 檢 測矩陣中是否全為非零元素,如果是,則返回1,否則,返回0。any函式 檢測矩陣中是否有非零元素,如果有,則返回1,否則,返回0。用法和all一樣 語法 b all a b all a,dim 複製 b all a 如果a是乙個向量,如果所有的元素都是非零的,則返回1,如果有乙個元素為...