VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > Python基础教程 >
  • 如何让你的Python代码更加pythonic ?(3)

 

NP:

1
2
3
4
5
6
7
8
9
10
11
12
sum = 0
maxNum = -float('inf')
minNum = float('inf')
prod = 1
for num in numList:
    if num > maxNum:
        maxNum = num
    if num < minNum:
        minNum = num
    sum += num
    prod *= num
# sum = 15 maxNum = 5 minNum = 1 prod = 120

经简单测试,在numList的长度为10000000时,在我的机器上对列表求和,P耗时0.6s,NP耗时1.3s,将近两倍的差距。所以不要自己造轮子了。

 

列表推导式

P:

1
2
= [x*for in range(10if % 3 == 0]
#l = [0, 9, 36, 81]

NP:

1
2
3
4
5
= []
for in range(10):
    if % 3 == 0:
        l.append(x*x)
#l = [0, 9, 36, 81]

相关教程