提高for循环迭代列表速度---Python列表推导式

什么是列表推导式

如果我们有一个列表,并希望抽取列表中的元素,那么最标准的方法是使用 Python 循环,但是我们也可以直接通过列表推导式,它只需一行代码就能搞定所有操作。

基础列表推导式
import time

numberArr = [number for number in range(0, 1000000)]

start = time.time()
testArr = [i for i in numberArr]
end = time.time()
print(end - start) # 0.06299924850463867

start = time.time()
testArr = []
for i in numberArr:
    testArr.append(i)
end = time.time()
print(end - start) # 0.15299725532531738
列表推导式+条件语句
import time

numberArr = [number for number in range(0, 1000000)]

start = time.time()
testArr = [i for i in numberArr if i % 8 == 0]
end = time.time()
print(end - start) # 0.05502510070800781

start = time.time()
testArr = []
for i in numberArr:
    if i % 8 == 0:
        testArr.append(i)
end = time.time()
print(end - start) # 0.08500814437866211

猜你喜欢

转载自blog.csdn.net/HHH_LLL/article/details/107315241
今日推荐