python 时间表列表理解与发电机

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 时间表列表理解与发电机相关的知识,希望对你有一定的参考价值。

import timeit

test_list = '''
def div_by_five(num):
    return True if num % 5 == 0 else False
    
xyz = [i for i in range({}) if div_by_five(i)]
for x in xyz:
    pass
'''
test_gen = '''
def div_by_five(num):
    return True if num % 5 == 0 else False
    
xyz = (i for i in range({}) if div_by_five(i))
for x in xyz:
    pass
'''

test_sizes = [pow(10, x) for x in range(7)]
iterations = 100

results = [
    (
        timeit.timeit(test_list.format(size), number=iterations),
        timeit.timeit(test_gen.format(size), number=iterations)
    )
    for size in test_sizes
]

print(results, test_sizes)

以上是关于python 时间表列表理解与发电机的主要内容,如果未能解决你的问题,请参考以下文章

深入理解Python列表(list)

列出与给定前缀匹配的单词的新单词表(python 理解问题)

发电机与电动机

工厂松饼发电机列表

Python在列表理解中使用枚举

多个列表的产品-单个列表与列表数组,需要帮助理解[重复]