Python代码阅读--列表元素逻辑判断
作者:FelixZ 发布时间:2022-08-05 16:12:57
标签:Python,列表,元素,逻辑,判断
目录
1、every
2、some
3、none
1、every
def every(lst, fn=lambda x: x):
return all(map(fn, lst))
# EXAMPLES
every([4, 2, 3], lambda x: x > 1) # True
every([1, 2, 3]) # True
every
用于判断列表 lst
中的元素是否都符合给定的判断条件 fn 。
代码中首先使用 map 返回一个迭代器,该迭代器会将判断条件 fn 应用于所有的列表元素上。然后使用 all 函数判断迭代器中的元素是否都为 True 。
all(iterable)
接收一个可迭代对象,如果这个对象中的所有元素都为 True ,则函数返回 True 。注意,当该对象为空时,也返回 True 。该函数等价于:
def all(iterable):
for element in iterable:
if not element:
return False
return True
2、some
def some(lst, fn=lambda x: x):
return any(map(fn, lst))
# EXAMPLES
some([0, 1, 2, 0], lambda x: x >= 2 ) # True
some([0, 0, 1, 0]) # True
some
用于判断列表 lst 列表中是否存在符合给定的条件 fn 的元素。
代码中首先使用 map
返回一个迭代器,该迭代器会将判断条件 fn 应用于所有的列表元素上。然后使用 any 函数判断迭代器中是否至少有一个元素为 True
。
any(iterable)
接收一个可迭代对象,如果这个对象中有任一元素为 True ,则函数返回 True 。注意,当该对象为空时,返回 False 。该函数等价于:
def any(iterable):
for element in iterable:
if element:
return True
return False
3、none
def none(lst, fn=lambda x: x):
return all(not fn(x) for x in lst)
# EXAMPLES
none([0, 1, 2, 0], lambda x: x >= 2 ) # False
none([0, 0, 0]) # True
none
用于判断列表 lst 中的元素是否都不符合给定的判断条件 fn 。
代码中首先使用生成器表达式生成一个生成器,该生成器会将判断条件 not fn
应用于所有的列表元素上。然后使用 all 函数判断迭代器中的元素是否都为 True
。
lst = [0, 1, 2, 0]
def fn(x):
return x >= 2
type(not fn(x) for x in lst) # <class 'generator'>
来源:https://www.tuicool.com/articles/2iyEVnZ


猜你喜欢
- 博主在开发一些C端小软件时,喜欢用json作为序列化方案,故总结下python中json库常见用法。导包自带的库,无需额外安装。import
- 下面的查询选择所有 date_col 值在最后 30 天内的记录。 mysql> SELECT something FROM tbl_
- 本文记录了mysql 5.7.23 winx64安装教程,具体内容如下Step1官方:下载地址选择手动下载版本解压到自己指定的路径上图中的m
- 原问题是这样的:如何用SQL语句(不是Oracle),求出下表每一行的5个字段中的最大值,最后生成一个新字段。例如:第一行最大值 -5.0
- 代码如下:<% Response.Buffer = True '一般情况下,当用户请求
- php ffmpeg获取视频缩略图1.环境centos 7ffmpeg version 2.8.15 Copyright2.centos7安
- 本文实例为大家分享了python实现移动木板小游戏的具体代码,供大家参考,具体内容如下一、游戏简介本游戏是通过python编写的小游戏,给初
- 目录1、SKlearn 是什么2、SKlearn 的安装3、SKlearn 内置数据集测试问题数据集实际问题数据集4、Sklearn 数模笔
- 几周前, Elastic Beanstalk声明在AWS云中配置和管理Docker容器。在本文中,我们通过一个简单的注册表单页面应用去理解D
- 好吧,我承认我是对晚上看到一张合适的票转让但打过电话去说已经被搞走了这件事情感到蛋疼。直接上文件吧。#coding: utf-8'&
- 最近跟着OpenCV2-Python-Tutorials在学习python_opencv中直方图的反向投影时,第一种方法是使用numpy实现
- 说起 Python 强大的地方,你可能想到是它的优雅、简洁、开发速度快,社区活跃度高。但真正使得这门语言经久不衰的一个重要原因是它的无所不能
- 前言:平时根据需求写代码.人工进行测试往往不会面面俱到,还会因为需求的改变繁琐的进行测试通过完成一个测试函数,可以大大简化测试的步骤,并且在
- 最好不要在 base 环境中安装或者配置一些包之类的,它是 Python 的基础环境,为了更好的管理 Python 环境
- 今天看到everything搜索速度秒杀windows自带的文件管理器,所以特地模仿everything实现了文件搜索以及打开对应文件的功能
- 传统来说,大家在CSS中使用的颜色要么是16进制格式,要么是rgb格式,就像rgb(171,205,239)。CSS3带来了一些新的处理颜色
- MySQL低调宣布它将不再把MySQL企业版服务器作为一个tar包发布,而这距离这个公司宣布将MySQL分为免费版和付费版的时间还不到一年。
- 突然登陆MySQL时,出现禁止访问或者无法连接到数据库,回到服务,去打开wampmysqld ,发现 ”windows无法启动MySQL服务
- 查看系统帮助help contentsmysql> help contents;You asked for help about he
- 方法一:<span style="font-size:14px;">#read txt method one