知行编程网知行编程网  2022-10-31 10:00 知行编程网 隐藏边栏  70 
文章评分 0 次,平均分 0.0
导语: 本文主要介绍了关于python是编译还是解释型语言的相关知识,希望可以帮到处于编程学习途中的小伙伴

python是编译语言还是解释语言


解释型语言和编译型语言

计算机无法识别高级语言,所以当我们运行高级语言程序时,需要一个“翻译器”将高级语言转换成计算机可读的

理解机器语言的过程。这个过程分为两类,一类是编译,二是解释。

在程序执行之前,编译语言会先通过编译器对程序进行编译处理,将程序转化为机器语言。运行时无需翻译,直接执行即可。最典型的例子是C语言。

解释型语言没有这个编译过程,但是在程序运行时,程序通过解释器逐行解释,然后直接运行。最典型的例子是Ruby。

通过上面的例子,我们可以总结出解释型语言和编译型语言的优缺点,因为编译型语言在程序运行之前就已经“翻译”了程序,所以运行时的“翻译”比较少。 ”流程,所以效率比较高。但我们不能一概而论,一些解释型语言在翻译程序时也可以通过解释器的优化来优化整个程序,使效率接近编译型语言,但不能超过编译型语言。

另外,随着Java等基于虚拟机的语言的兴起,我们不能将语言单纯地分为解释语言和编译语言。

以Java为例,Java首先由编译器编译成字节码文件,然后在运行时由解释器解释成机器文件。所以我们说Java是一种先编译后解释的语言。

Python 是一种解释型语言,在我发现 *.pyc 文件的存在之前,我一直相信这一点。

如果是解释型语言,生成的 *.pyc 文件是什么? c应该是compiled的缩写!

为了不让其他学习Python的人被这句话误解,那么我们将在文中澄清这个问题,澄清一些基本概念。 python不完全是

它是一种解释性语言。它被编译。首先将源码py文件编译成pyc或pyo,然后由python虚拟机执行。与py文件相比,编译成pyc和pyo。

pyo本质上和py没有太大区别,只是这个模块的加载速度提高了,代码的执行速度并没有提高。通常不需要主动编译pyc文件。

文件,文档说只要调用import model,model.py就会被编译成pyc然后加载


Python到底是什么

事实上,Python 和 Java/C# 一样,也是一种基于虚拟机的语言。我们先从表面上简单了解一下Python程序的运行过程。

当我们在命令行输入 python hello.py 时,我们实际上激活了 Python“解释器”并告诉“解释器”:你即将开始工作。但在“解释”之前,首先要做的工作其实是编译,跟Java一样。

本文为原创文章,版权归所有,欢迎分享本文,转载请保留出处!

知行编程网
知行编程网 关注:1    粉丝:1
这个人很懒,什么都没写
扫一扫二维码分享