Bootstrap

python优化

1. 把函数单独import的模块写在函数里面;

2. 少用全局变量,python 访问局部变量会比全局变量要快得多;

3. 对成员的查找字典比列表更快;

from time import time

t = time()

list = ['a','b','is','python','jason','hello','hill','with','phone','test', 'dfdf','apple','pddf','ind','basic','none','baecr','var','bana','dd','wrd'] #list = dict.fromkeys(list,True) print list

filter = [] for i in range (1000000):

     for find in ['is','hat','new','list','old','.']:

         if find not in list:

             filter.append(find)

print "total run time:"

print time()-t

4. 尽量减少循环过程中的计算量,有多重循环的尽量将内层的计算提到上一层。

5. 尽量用xrange代替range,xrange会比range性能优很多,因为不需要一上来就开辟一块很大的内存空间。

6. 要进行多个字符串连接的时候使用尽量使用 join() 而不是 +:,在字符的操作上 join 比 + 要快,因此要尽量使用 join 而不是 +。

7. 优化多个判断表达式的顺序:

A. and表达式应该把满足条件少的放在前面

B. or表达式应该把满足条件多的放前面

8. 使用is代替==:

A. i for i in a if i == 100

B. I for i in a if a is 100

9. 使用while 1 代替 while True,因为在python2.X中True是一个全局变量,而不是关键字

10. C语言实现的包比python自带的包要快很多

 

;