Python速度编译神器学生来看

作者&投稿:友穆 (若有异议请与网页底部的电邮联系)
~

Python速度编译神器快来体验吧

Python速度编译神器

Python的运行速度快吗?虽说不同场景不同定论, 但整体而言

, 它没有C、Java快。这也导致Python凭借可读性、简单易

上手、良好的生态系统横行AI领域时,一提到速度,就成为众

多开发者头疼的问题。

为了解决这一难题,麻省理工学院的计算机科学家出手了,他

们共同研发了一种名为Codon的Python编译器, 可以将

Python代码转化为本地机器代码, 而不会对运行时的性能产生

影响。

当前, Codon已经在Git Hub上开源:https:

//github.com/exaloop/codon, 斩获6300个Star。

1、Codon与C/C++性能相当

"在单线程上, 比Python的典型速度提高了10-100倍或更多,

"Codon repo写道, "Codon的性能通常与C/C++的性能相当

(有时甚至更好)。"

codon

与Python不同的是, Codon支持本地多线程, 这可以使速度

提高许多倍。

Codon最初是作为一个在Python中创建高性能特定领域语言

(DSL, domain-specific language) 的框架而开发的。DSL

是专注于特定目的的语言, 而不是像Python或C这样的通用

编程语言。

据官方Git Hub repo透露, Codon源于Seq项目, 后者是一个

用于生物信息学和遗传学的DSL, 现如今它已经成长为一个与

Python 3基本兼容的语言编译器。

近期, 外媒The Register通过该工具的研究团队内部最新分享

了一个关于Codon的论文。

这篇论文指出, "与其他面向性能的Python实现(如PyPy或

Numba) 不同, Codon是作为一个独立的系统从头开始构建的

, 它可以提前编译为静态可执行文件, 并且不与现有的Python

运行时(如CPython或RPython) 绑定执行。因此, Codon

可以实现更好的性能,并克服运行时的特定问题,如全局解释

器锁"。

2、测试

那么Codon是否真的如说的那样快?在Codon论坛上, 一位

开发者进行了测试:

CPython 3.11

PyPy 7.3.9

Codon compiled

Codon with python interpreter

最终发现, 一个简单的Codon编译的斐波那契脚本比CPython

版本快70多倍。

据Codon官方文档显示, 虽然Codon的语法和语义与Python

的几乎相同,但还是有一些值得一提的区别,如数据类型方面

整数。Codon的int是一个64位有符号的整数, 而Python

的(在版本3之后) 可以是任意大的。然而Codon通过Int[N]

支持更大的整数,其中N是位宽。

字符串。Codon目前使用ASCII字符串, 与Python的

unicode字符串不同。

字典。Codon的字典类型不保留插入顺序, 与Python 3.6的

不同。

此外, Codon和Python在类型检查、数值运算、模块等维度

还有些许的不同, 更详细的内容可参考:https:

//docs.exaloop.io/codon/general/differences据悉, Codon

已经被商业化地应用在金融和生物信息学、深度学习等领域。






python编译时间长
没有尾递归优化。因为某些编译型语言(如C)的编译器有尾递归优化,所以递归算法效率并不低。但是python并没有尾递归优化。Python是一种广泛使用的解释型、高级和通用的编程语言。[1]Python由荷兰数学和计算机科学研究学会的GuidovanRossum创造,第一版发布于1991年,它是ABC语言的后继者,也可以视之为一...

python是一种什么类型的编程语言
Python是一门跨平台、开源、免费的解释型高级动态编程语言。除了解释执行,Python还支持伪编译将源代码转换为字节码来优化程序提高运行速度和对源代码进行保密,并且支持使用py2exe、pyinstaller、cx_Freeze或其他类似工具将Python程序及其所有依赖库打包为扩展程序名exe的可执行程序,从而可以脱离Python解释器环境...

Python是什么编程语言,和C++比怎么样?
python是解释语言,c++是编程语言。1、编译器是off-line,解释器是on-line。编译器把整个程序读进来,进行一系列变大变小转化优化的过程,产生可执行文件,然后编译器退出,由可执行文件来读取和输出数据,python main.py这个命令会启动python虚拟机和解释器,将main.py的代码一行一行解释,只不过不同于...

什么是python编程
Python支持多种编程范型,如函数式、指令式、结构化、面向对象和反射式编程。Python解释器易于扩展,可以使用C或C++或其他可以通过C调用的语言扩展新的功能和数据类型。Python编写的程序不需要编译成二进制代码,可以直接从源代码运行程序,在计算机内部,Python解释器把源代码转换成字节码的中间形式,然后再把...

简述python语言的特点
3、可移植性:Python具有开源的本质,可以被移植在许多的平台上,比如说Lnux、Windows、 FreeBSD、 Macintosh、Solaris、OS\/2、Amiga、AROS、AS\/400等,Python都可以很好的运行其中。4、解释性:Python语言写的程序不需要编译成为二进制的代码,可以直接从源代码运行程序,在计算机内部,Python解释器将源代码...

python的语言特点有哪些
3、可移植性:由于其具有开源本质,Python已经被移植在许多平台上,这些平台包括Linux、Windows FreeBSDMacintosh等。4、解释性:Python语言写的程序不需要编译成二进制代码可以直接从源代码运行程序。5、可扩展性:Python本身被设计为可扩充的并非所有的特性和功能都集成到语言核心。 Python提供了丰富的API和...

Python语言到底有哪些优点呢?
Python是一种跨平台的计算机程序设计语言, 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,Python越来越多被用于独立的、大型项目的开发。python语言有什么特性?1.简单易学、明确优雅、开发速度快 ①简单...

编程语言Python和Java哪个简单呀?
Python 的数据分析功能很强大,对大数据的统计和分析结果快捷又准确。Python 的应用很广泛,可以开发简单的小程序,也可以开发复杂的高级应用。Python 支持面向过程和对象,可以通过C语言编写扩充模块,并且支持在不同的平台运行。🌷Python 的缺点。Python 编译的速度较慢,特别是翻译过程非常消耗时间。

python和php哪个快
PHP比Python更快。PHP是一种为Web开发而设计的服务器端脚本语言,它最初被设计为快速生成动态网页。由于其面向Web开发的特性,PHP在解析和执行代码时通常具有高性能和快速响应的特点。它特别适合于在服务器上与数据库交互,进行后端操作,从而提供快速的网页加载速度和响应时间。此外,PHP有编译过程进行优化...

Python是一门怎样的编程语言
5、可扩展性,如果你需要你的一段关键代码运行得更快或者希望某些算法不公开,可以把部份程序用C或C++编写库,然后用python调用。6、可嵌入式,可以把python嵌入到C\/C++程序,从而向你的程序用户提供脚本功能。python语言的缺点:1、速度慢,由于是解释型所以运行速度相比编译型语言要慢,跟Java相比也要...

前进区13896626930: 菜鸟学python用那种编译器比较好? -
郎新养阴: 图形界面比较复杂,但是时间久了用起来就容易了!命令行的编译方式也是比较方便的,推荐你用这个直接下载后输入python 加上 你要执行的脚本 就可以执行!比较方便(关键是命令行有逼格,帅气),而且命令行也培养你对shell的兴趣,可以接触更多知识!反正哪种都可以的!希望对你有帮助!望采纳

前进区13896626930: python编译器哪个好 -
郎新养阴: 编辑器没有什么最好的,得看你个人喜好了.个人推荐Pycharm挺好用的,功能较多

前进区13896626930: 请推荐1,2个好用的能够编译,运行python程序的软件 -
郎新养阴: python 是脚本语言,不用编译,安装之后双击*.PY文件就可以运行,如果需要打包成EXE文件可以用PY2EXE之类的程序打包,]

前进区13896626930: 学习Python 用什么编译器 -
郎新养阴: 问的应该是IDE吧,初学者可以用spyder,等入门以后可以考虑用pycharm

前进区13896626930: 自学python 用什么编译器 -
郎新养阴: pycharm:为Python而生的,大小项目都可以 sublime text:适合轻量级开发 anaconda:适合大数据分析处理.建议用pycharm,个人在用,很不错

前进区13896626930: 有哪些值得推荐的 Python 开发工具 -
郎新养阴: 入门推荐使用python自带工具IDLE,适合入门编写小的python程序,集成IDE工具推荐pyCharm,一直使用这个特别好用.

前进区13896626930: python 开发工具哪个最好 -
郎新养阴: 1)eclipse + pydev + wxpython2)netbeans + wxpython3) emacs + wxpython4) boa-constructor + 1)- 3)

前进区13896626930: python中有没有像dreamweaver那样实时显示编译效果的编译器呢? -
郎新养阴: dw显示效果也是显示的html部分 又不是程序部分 python是一种程序脚本 就好比dw你也不能显示php结果一样 如果你有py做gui 比如pyqt 所见即所得 但是功能 还是得你敲代码

前进区13896626930: Python开发用什么开发软件最好? -
郎新养阴: 因人而异,也因项目而异.只是一些简单的程序,自带的IDLE就够用,不用安装,启动还快.比较复杂的项目,用pycharm的比较多,也是python开发最流行的IDE.不过也有些开发者习惯了vscode的操作,自然也就偏爱它.

前进区13896626930: 开发python用什么软件 -
郎新养阴: Python开发软件可根据其用途不同分为两种,一种是Python代码编辑器,一种是Python集成开发工具,两者的配合使用可以极大的提高Python开发人员的编程效率,以下是常用的几款Python代码编辑器和Python集成开发工具.一、Python代码编...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网