#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
# 生成随机数模块
from random import randint
# 生成10个随机数
data = [randint(-10, 10) for _ in range(10)]
1. 迭代
res = []
for i in data:
if i > 0:
res.append(i)
print(res)
2. 使用 filter
res = filter(lambda x: x > 0, data)
print(list(res))
3. 使用列表解析
res = [i for i in data if i > 0]
print(res)
运行结果:
Geek-Mac:Downloads zhangyi$ python3 Nice.py
[7, 6, 1]
[7, 6, 1]
[7, 6, 1]
推荐优先使用列表解析,运行时间比较:列表解析 > filter > 迭代
字典和集合同上