Python之all()\any()

Python有很多很有用的内建函数,今天就讲all()any()这两个函数:这两个函数的参数都是iterable,也就是为list或者tuple

all(iterable):

>>> help(all)
Help on built-in function all in module __builtin__:

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元素都不为False、''、0或者iterable为空,则all(iterable)为True,也就是说只要iterable元素有一个为"假",则为False,"全‘真’为True,有‘假’为False"
  • 特别要注意官网注释,当iterable为空的时候,函数返回值为True
  • 等价于函数:
    def all(iterable):
    for item in iterable:
    if not item:
    return False
    return True
all()举例:
>>> all(['a',(2,4),1,True]) //list都为"真"
True
>>> all(['a',(),1,True])   //list元素中有空tuple
False
>>> all(['a',(2,4),0,True])
False
>>> all(['a',(2,4),3,False])
False
  
 >>>all([])
 True 
 >>> all(())
 True
 >>> all({})
 True
 >>> all('')
 True

any(iterable):

>>> help(any)
Help on built-in function any in module __builtin__:

any(...)
    any(iterable) -> bool

    Return True if bool(x) is True for any x in the iterable.
    If the iterable is empty, return False.
  • iterable的任何元素都为False、0,'',或者iterable全为空,则any(iterable)为False,也就是说所有的iterable都为'假',则any(iterable)为False,"全‘假’为False,有‘真’为True"
  • 特别要注意:*官网注释,当iterable为空的时候,函数返回值为False
  • any(iterable)等价于:
    def any(iterable):
    for item in iterable:
    if item:
    return True
    return False
any()举例
>>> any(['a',(2,4),3,True]) 
True
>>> any(['a',(2,4),3,False])
True
>>> any(['a',(),3,False])   
True
>>> any(['',(),0,False]) 
False
>>> any(('a',(),3,False))
True
>>> any(('',(),0,False)) 
False

>>> any(())
False
>>> any([])
False
>>> any('')
False
>>> any({})
False

上面讲解了迭代器的两个内建函数any()\all(),Python的内建函数还是很有意思,也很方便的,关于any()\all()只要记住两点:
all():"有‘假’为False,全‘真’为True,iterable为空是True"
any():"有‘真’为True,全‘假’为False,iterable为空是False"

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,280评论 19 139
  • PYTHON-进阶-ITERTOOLS模块小结转自wklken:http://wklken.me/posts/20...
    C_Y_阅读 1,100评论 0 2
  • 个人笔记,方便自己查阅使用 Py.LangSpec.Contents Refs Built-in Closure ...
    freenik阅读 67,816评论 0 5
  • 内置函数Python解释器内置了许多功能和类型,总是可用的。他们是按字母顺序列在这里。 abs(x)返回一个数的绝...
    uangianlap阅读 1,305评论 0 0
  • 大多数编程语言都有自己的内置函数,Python也不例外,同样提供了丰富的内置函数,其中包括算术函数、字符串操作函数...
    简书冷雨阅读 968评论 0 0