python中的any ,all方法

 python中 any()和all() 方法

目录

 python中 any()和all() 方法

all(iterable)

any(iterable)

day20201204 补 

any() 相当于下面的用法 

all() 相当于下面的用法

总结

参考链接


可以用来判断 值是否为空. 

any 只要iterable 中有一个为真, 则返回真.  all 有一个 为假 ,返回假. 


all(iterable)

all() 函数用于判断给定的可迭代参数 iterable
中的所有元素是否不为 0、''、False 或者 iterable 为空,
如果是返回 True,否则返回 False。

 

1. 来看一个例子

# 简单来说 如果每个元素都是有值的,返回True 
names = ('name', 'laoda', 'laoer',)
names2 = ('name', 'laoda', 'laoer', False)
names3 = ('name', 'laoda', 'laoer', [])

print(all(names))    # True
print(all(names2))   # False
print(all(names3))   # False

 

any(iterable)

any() 函数用于判断给定的可迭代参数 iterable 
是否全部为空对象,如果都为空、0、false,则返回 False, 
如果不都为空、0、false,则返回 True.  有一个不为空返回True 

 

2 . 来看一下例子

#  简单来说,有一个不为空,返回True 
names = ('frank', 'lijiaxuan', 'weiliang', 'lile', ' ')
defaults = ('', None, [], (), False,)
hobbys = ['name', False, [], (), ]

print(any(names))     # True
print(any(defaults))  # False
print(any(hobbys))    # True


 

day20201204 补 

关于 any  和all 的使用,有一个特殊情况,就是传入值为空的可迭代对象。all 返回真, any 返回假。 看下面详细 解释。

any() 相当于下面的用法 

如果 `any(iterable)` 中可迭代对象有值的情况下,如果有一个为真,则返回真值。 如果可迭代对象**没有值**则返回 假值

 

def any(iterable):
    for element in iterable:
        if element:
            return True
    return False

 

如果 `any(iterable)` 中 可迭代对象是空的, 那么默认返回 False ,这一点要注意。

all() 相当于下面的用法

如果 `all(iterable)` 中可迭代对象有值的情况下,如果有一个为假,则返回假值。 如果可迭代对象**没有值**则返回 真值

 

def all(iterable):
    for element in iterable:
        if not element:
            return False
    return True

 

如果 `all(iterable)` 可迭代对象是空的, 那么默认返回 True ,这一点要注意。

所以 对于 对于空值的可迭代对象, `all([])` 就为真值, `any([])` 为假值。

而 `all([[]])` 对于 列表中嵌套一个列表, 相当于可迭代对象 有一个值,有一个空值,而 all 的判断 如果有一个为假,则返回 假值。

 

>>> all([])
True
>>> all([[]])
False
>>> all([0])
False

 

总结

any 一般判断 是否值全部为空,0,false 这种情况.

any 判断iterable 全为空 返回False
有一个为真, 返回 真 True

all 一般判断 所有元素 都不为空, 返回 True
有一个假,返回假. python 中的'假' ,包含 {} [] , 0 false () ,''

参考链接

all基本用法

any基本用法

官方文档 any

官方文档 all

 


   分享快乐,留住感动.  '2018-05-26 10:18:52'  --frank 
   分享快乐,留住感动. '2020-12-04 22:33:53'  --frank 
 

  • 2
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值