提升Python程序性能的5个习惯
来源:晋城IT培训学院时间:2020/10/21 16:45:59
1、使用局部变量
尽量使用局部变量代替全局变量:便于维护,提高性能并节省内存。
使用局部变量替换模块名字空间中的变量,例如ls=os.linesep。一方面可以提高程序性能,局部变量查找速度更快;另一方面可用简短标识符替代冗长的模块变量,提高可读性。
2、减少函数调用次数
对象类型判断时,采用isinstance()优,采用对象类型身份(id())次之,采用对象值(type())比较次。
#判断变量num是否为整数类型
type(num)==type(0)#调用三次函数
type(num)istype(0)#身份比较
isinstance(num,(int))#调用一次函数
不要在重复操作的内容作为参数放到循环条件中,避免重复运算。
如需使用模块X中的某个函数或对象Y,应直接使用fromXimportY,而不是importX;X.Y。这样在使用Y时,可以减少一次查询(解释器不必首先查找到X模块,然后在X模块的字典中查找Y)。
3、采用映射替代条件查找
映射(比如dict等)的搜索速度远快于条件语句(如if等)。Python中也没有select-case语句。
4、直接迭代序列元素
对序列(str、list、tuple等),直接迭代序列元素,比迭代元素的索引速度要更快。
5、采用生成器表达式替代列表解析
列表解析(listcomprehension),会产生整个列表,对大量数据的迭代会产生负面效应。
而生成器表达式则不会,其不会真正创建列表,而是返回一个生成器,在需要时产生一个值(延迟计算),对内存更加友好。
#计算文件f的非空字符个数
#列表解析
l=sum([len(word)forlineinfforwordinline.split()])
#生成器表达式
l=sum(len(word)forlineinfforwordinline.split())
尊重原创文章,转载请注明出处与链接:http://www.peixun360.com/2348/news/268484/违者必究!
以上就是晋城IT培训学院 小编为您整理 提升Python程序性能的5个习惯的全部内容。