课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
Python编程是目前大多数软件开发程序员都在学习与应用的一个编程开发语言,而本文我们就简单来了解一下,Python编程性能优化都有哪些方法。
1、变量定义
多使用局部变量少使用全局变量,命名空间中局部变量优先搜索
2、条件判断
可以使用字典的keyvalue特性,直接用key命中条件,避免if判断
用in操作在判断是否存在方面替换ifelse判断
用max,min等内置函数在判断大小方面可以替换ifelse
用bool可以判断出True或False,结合int(bool(object))可以在判断真值方面替换ifelse
使用any或all将多个判断一起处理,减少ifelse的分支
if条件的短路特性。ifaorb这种判断中,如果a是True就不会判断b,所以将True条件写在前面可以节省判断时间。同理and判断将假写在前面,后面一个条件不判断
3、数据类型
使用dict或set查找,替换list或tuple
集合的交并补差操作效率非常高。for循环和集合都可以处理的选择集合解决,集合的效率远高于循环
4、循环
用for循环代替while循环,for循环比while循环快
使用隐式for循环代替显式for循环。如sum,map,filter,reduce等都是隐式for循环。隐式循环快于显式循环
尽量不要打断循环。打断循环的放在外面。有判断条件的语句和与循环不相关的操作语句尽量放在for外面
应当将长的循环放在内层,短的循环放在外层,以减少CPU跨切循环层的次数
使用生成式替换循环创建
5、合理使用迭代器和生成器
需要迭代出大量数据的场景,不需要将所有数据创建出来,合理使用生成器减少内存消耗
6、python代码的执行过程为:
编译器将源码编译成中间状态的字节码
解释器执行字节码,将字节码转成机器码在cpu上运行
python慢的原因主要是因为解释器。解决办法有两个:
一是解决办法是使用C/C++语言重写Python函数,但是这要求程序员对C/C++语言熟悉,且调试速度慢,不适合绝大多数Python程序员。
另外一种非常方便快捷的解决办法就是使用Just-In-Time(JIT)技术。
Just-In-Time(JIT)技术为解释语言提供了一种优化,它能克服上述效率问题,极大提升代码执行速度,同时保留Python语言的易用性。使用JIT技术时,JIT编译器将Python源代码编译成机器直接可以执行的机器语言,并可以直接在CPU等硬件上运行。这样就跳过了原来的虚拟机,执行速度几乎与用C语言编程速度并无二致。
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。