欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

python 为什么效率低

程序员文章站 2022-03-27 09:37:23
...
Python是一款优雅的编程语言,在人工智能、云计算、大数据飞速发展的今天,Python受到了社会各界的关注,从国内的阿里、搜狐、知乎、腾讯、网易、土豆、新浪到国外的谷歌、Dropbox、Facebook、Redhat、Uber等都在大规模的使用Python完成各种任务!

python 为什么效率低

Python的用途越来越广泛,很受欢迎,必然因为其有很多优点,但是Python也拥有一大缺点,相比于C语言,

Python运行效率低,那么是什么原因导致的呢?

1. python是动态语言

动态语言是一类在运行时可以改变其结构的语言,如新的函数、对象、代码可以被引入,已有的函数可以被删除或其他结构上的变化等,该类语言更具有活性,但是不可避免的因为运行时的不确定性也影响运行效率。

2. python是解释执行

相比于C语言编译性语言编写的程序,Python是解释执行语言,其运行过程是Python运行文件程序时,Python解释器将源代码转换为字节码,然后再由Python解释器来执行这些字节码。其每次运行都要进行转换成字节码,然后再有虚拟机把字节码转换成机器语言,最后才能在硬件上运行,与编译性语言相比,其过程更复杂,性能肯定会受影响。

3. Python中一切都是对象

Python是一门面向对象的编程语言,其设计理念是一切皆是对象,如数字、字符串、元组、列表、字典、函数、方法、类、模块等都是对象,包括代码,每个对象都需要维护引用计数,因此,增加了额外工作,影响了性能。

4. Python GIL

GIL是Python最为诟病的一点,因为GIL,Python中的多线程并不能真正的并发,即使在单线程,GIL也会带来很大的性能影响,因为python每执行100个opcode就会尝试线程的切换,因此,影响Python运行效率。

5. 垃圾回收

Python采用标记和分代的垃圾回收策略,每次垃圾回收的时候都会中断正在执行的程序,造成所谓的顿卡,影响运行效率。

以上就是python 为什么效率低的详细内容,更多请关注其它相关文章!

相关标签: python