python中map、any、all函数用法分析
2015-04-21 11:47
1011 查看
最近想学python,就一直比较关注python,昨天在python吧看到有个帖子提问怎么在python中怎么判断密码是否符合规范,回帖中有很多用循环的,除此外还有一个没有用循环,代码非常简练,下面是代码:
def volid(pwd): a = any(map(str.isupper,pwd)) b = any(map(str.islower,pwd)) c = any(map(str.isdigit,pwd)) d = not all(map(str.isalnum,pwd)) return all([a,b,c,d])
这里的isupper islower isdigit isalnum 函数都很好理解,就是判断是不是大写,是不是小写,是不是数字,是不是全是数字和字母(反过来就是判断有没有其他符号),而这里的map函数就是把后面那个集合的每个元素用第一个参数的函数执行一遍,返回一个bool类型的集合,最外层的any和all函数就比较容易理解了,可以用“或”和“与”来理解,如果参数集合有一个为真,any函数就返回true,相当于把所有元素“或”一下,只有当参数集合全部为真,all函数才返回true,其他情况都是返回false ,所以如果volid函数传入一个包含大写小写字母数字和特殊符号的字符串后,abcd就被赋值为true,最后return true,所以这个函数就可以判断密码够复杂。
给自己留个问题吧,如果要求四项中只需要满足两项,函数该怎么写比较简练。感兴趣的朋友可以动手实践一下。
希望本文所述对大家的Python程序设计有所帮助。
您可能感兴趣的文章:
相关文章推荐
- Python函数any()和all()的用法及区别介绍
- python 中的map any all 函数
- Python map和reduce函数用法示例
- python中的函数any()和all()
- python中Genarator函数用法分析
- python之函数用法any()
- Python中的map()函数和reduce()函数的用法
- Python callable()函数用法实例分析
- Python中map()函数用法-对列表中每个元素做相同操作,并返回list
- Python SQLite3数据库日期与时间常见函数用法分析
- Python中的对象,方法,类,实例,函数用法分析
- python内建函数any()和all()
- python中的函数any()和all()
- Python---高级函数map, filter, zip, enumerate等的用法
- python any和all的用法, 可以查找某些字符串是否存在
- Python列表list内建函数用法实例分析【insert、remove、index、pop等】
- Python lambda函数基本用法实例分析
- python函数局部变量用法实例分析
- Python中函数的参数定义和可变参数用法实例分析
- 不曾见过的Python函数——any(),all()