您的位置:首页 > 编程语言 > Python开发

【Python】 for, list_comprehension, map_function, generator_expression效率比较

2014-07-16 11:25 323 查看
<pre name="code" class="python">import time, sys
reps = 1000
size = 10000

# 测试主体
def tester(func, *args):
startTime = time.time()
for i in range(reps):
func(*args)
elapsed = time.time() - startTime
return elapsed

# for
def forStatement():
res = []
for x in range(size):
res.append(abs(x))

# list comprehension
def listComprehension():
res = [abs(x) for x in range(size)]

# map function
def mapFunction():
res = map(abs, range(size))

def generatorExpression():
res = list(abs(x) for x in range(size))

# 测试输出
print sys.version
tests = (forStatement, listComprehension, mapFunction, generatorExpression)
for testfunc in tests:
print testfunc.__name__.ljust(20), '=>', tester(testfunc)




内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: