一、在列表中筛选数据
在列表中筛选出大于等于零的数据,一般通用的用法代码如下:
1 data = [3, -9, 0, 1, -6, 3, -2, 8, -6] #要筛选的原始数据列表
2 result = [] #存放筛选结果的列表
3 for x in data: #依次迭代循环每个元素
4 if x >= 0: #判断是否符合筛选条件
5 result.append(x) #大于等于零就将该元素加入结果列表中
6 print(result) #打印输出
在python 中还有更加简洁高效的方法:
1、filter函数:
1 from random import randint
2 #生成一个包含10个随机数的列表,每个元素的取值范围在-10到10之间
3 data = [randint(-10, 10) for _ in range(10)]
4 #filter函数的第一个参数是过虑函数,通常使用lambda匿名函数,第二个参数是要过滤的列表
5 result = filter(lambda x: x >=0, data)
6 print(result)
2、列表解析:
...
result = [x for x in data if x >= 0]
...