python - 函数any() 和 all() 的区别
2024-09-05 15:28:17
转自:https://www.cnblogs.com/nulige/p/6128816.html
any()与all()函数的区别:
any是任意,而all是全部。
版本:该函数适用于2.5以上版本,兼容python3.x版本。
any(...)
any(iterable) -> bool
Return True if bool(x) is True for any x in the iterable.
If the iterable is empty, return False.
any(iterable)说明:参数iterable:可迭代对象;
如果当iterable所有的值都是0、''或False时,那么结果为False,如果所有元素中有一个值非0、''或False,那么结果就为True
函数等价于:
def any(iterable):
for element in iterable:
if element:
return False
return 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
all(...)
all(iterable) -> bool
Return True if bool(x) is True for all values x in the iterable.
If the iterable is empty, return True.
如果iterable的所有元素不为0、''、False或者iterable为空,all(iterable)返回True,否则返回False;函数等价于:
def all(iterable):
for element in iterable:
if not element:
return False
return True
>>> 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
注意:空元组、空列表返回值为True,这里要特别注意。
最新文章
- C#的winform编程入门简单介绍
- Html/Css(新手入门第二篇)
- [Ubuntu] Ubuntu13.04, the desktop freezed after login
- 胸腺嘧啶“T”
- java之sleep、wait、yield、join、notify乱解
- (转)java之多线程
- memcache的安装及管理
- Android 开源库
- Python-方法重载的问题
- Nagios部署与配置
- dig命令
- H5 标签选择器
- bzoj3702/bzoj2212 二叉树 (线段树合并)
- 常见的web攻击方式
- Java知多少(84)图形界面之布局设计
- SQL Server 2012 无人值守安装(加入新实例)
- shell 全局剔除标点符号
- 几个经典的css技巧
- mysql索引建多了有什么坏处
- 深入理解多线程(一)——Synchronized的实现原理