首页>>后端>>Python->python解释器知多少

python解释器知多少

时间:2023-12-12 本站 点击:0

导读:很多朋友问到关于python解释器知多少的相关问题,本文首席CTO笔记就来为大家做个详细解答,供大家参考,希望对大家有所帮助!一起来看看吧!

python解释器是什么

大家都知道,Python是一门解释型语言,解释器是Python运行必不可少的一种工具。所以,我们搭建Python环境,本质上就是对Python进行配置和定制。而解释器就是能够执行用其他计算机语言编写的程序的系统软件,它是一种翻译程序。它的执行方式是一边翻译一边执行,因此其执行效率一般偏低,但是解释器的实现较为简单,而且编写源程序的高级语言可以使用更加灵活和富于表现力的语法。

python解释器

python解释器的介绍:

解释器由一个编译器和一个虚拟机构成,编译器负责将源代码转换成字节码文件,而虚拟机负责执行字节码。

所以,解释型语言其实也有编译过程,只不过这个编译过程并不是直接生成目标代码,而是中间代码(字节码),然后再通过虚拟机来逐行解释执行字节码。

计算机的大脑是CPU, 中文名叫中央处理器,它仍然不能直接处理 Python 语言。CPU 只能直接处理机器指令语言,那是一种由0和1数字组成的语言,这是一种我们人很难直接写出来的语言。

所以,我们需要一个翻译,把Python语言翻译成 计算机CPU 能听懂的机器指令语言,这样计算机才能按照 我们的Python程序的要求去做事。.py结尾的文件需要解释器去运行执行。

执行过程原理:

1.执行 python XX.py 后,将会启动 Python 的解释器。

2.python解释器的编译器会将.py源文件编译(解释)成字节码生成PyCodeObject字节码对象存放在内存中。

3.python解释器的虚拟机将执行内存中的字节码对象转化为机器语言,虚拟机与操作系统交互,使机器语言在机器硬件上运行。

4.运行结束后python解释器则将PyCodeObject写回到pyc文件中。当python程序第二次运行时,首先程序会在硬盘中寻找pyc文件,如果找到,则直接载入,否则就重复上面的过程。

Python解释器执行程序的三个阶段:

第一步:先启动python3解释器。

第二步:Python3解释器就像一个文本编辑器一样将文件python3 D:\test.py从硬盘读入内存。

第三步:Python3解释器解释执行文件代码。

只有第三阶段才识别python的语法。

Python是什么?Python可以干什么?

Python(发音:英[ˈpaɪθən],美[ˈpaɪθɑ:n]),是一种易学且功能强大的编程语言。

这种语言的名字(Python意为“蟒蛇”)来自于BBC节目“Monty Python的飞行马戏团”,而与爬行动物没有关系。在文档中用Monty Python来开玩笑不只是可以的,还是可以推荐的!

Python具有高级有效的数据结构和简单有效的面向对象编程。

Python优雅的语法和动态类型,加上它的解释性,使它成为很多编程平台开放开源和快速开发应用的理想语言。

Python 解释器及丰富的标准库以源码或机器码的形式提供,可以到 Python 官网 免费获取。在下载时要注意你所使用的操作系统类型。在这个官方网站上还提供了许多免费的第三方 Python 模块、程序和工具以及附加文档的发布页面或链接。

Python很容易使用,但它是一种真正的编程语言,提供了很多数据结构,也支持大型程序,远超shell脚本或批处理文件的功能。Python还提供比C语言更多的错误检查,而且作为一种“超高级语言”,它有高级的内置数据类型,比如灵活的数组和字典。正因为这些更加通用的数据类型,Python能够应付更多的问题,超过Awk甚至Perl,而且很多东西在Python中至少和那些语言同样简单。

Python 允许你划分程序模块,在其他的 Python 程序中重用。它内置了很多的标准模块,你可以在此基础上开发程序——也可以作为例子,开始学习 Python 编程。例如,文件输入输出,系统调用,套接字,甚至图形界面接口工作包比如 Tk 。

Python是一种解释型语言,在程序开发阶段可以为你节省大量时间,因为不需要编译和链接。解释器可以交互式使用,这样就可以方便地尝试语言特性,写一些一次性的程序,或者在自下向上的程序开发中测试功能。

Python也是一个顺手的桌面计算器。

Python程序的书写是紧凑而易读的。Python代码通常比同样功能的C,C++,Java代码要短很多,原因列举如下:

(1)高级数据类型允许在一个表达式中表示复杂的操作;

(2)代码块的划分是按照缩进而不是成对的花括号;

(3)不需要预先定义变量或参数。

Python是“可扩展的”:如果你知道怎么写C语言程序,就能很容易地给解释器添加新的内置函数或模块,不论是让关键的程序以最高速度运行,还是把Python程序链接到只提供预编译程序的库(比如硬件相关的图形库)。一旦你真正链接上了,就能在Python解释器中扩展或者控制C语言编写的应用了。

Python本身提供了非常完善的基础代码库,覆盖了网络、文件、GUI、数据库、文本等大量内容。所以,使用Python开发程序,你不必从0开始做,使用基础代码库或第三方库就可以轻松帮助你完成大量的工作。

在实际中,许多大型网站就是用Python开发的,例如YouTube、Instagram,还有国内的豆瓣。很多大公司,包括Google、Yahoo等,甚至NASA(美国航空航天局)都在大量地使用Python。因此,你学习或使用Python并不孤单。

但是,Python并不是完美的,也并非万能的。它的第一个缺点就是运行速度慢,由于Python是解释型语言,与其它编译型语言比起来要慢得多,不过当前的计算机硬件和网络设备的性能改善很多,而且很多情况下,你不需要那么快的速度去做工作,Python的慢性子是可以忍受的。

它的第二个缺点就是代码是可见的,你编写的Python程序共享给其他人时,其他人是可以看到源代码的,这一方面是由于Python的宗旨是开源共享,另外一方面是它是解释型的,拿过来,用你的Python解释器直接解释运行就可以了,没必要封装编译成机器代码。

(注:本文整理了官方文档与网络其它文档中的一些内容)

本号将在今后逐步发布Python方面的文章,希望你能收藏关注本号,有空来看看,留下你的足迹,给本站前行的动力。

微信搜索 “优雅的代码” 关注本站的公众号,以获取最新内容。

个人成长离不开各位的关注,你的关注就是我继续前行的动力。

Python 入门指南之使用 Python 解释器

Python 解释器通常被安装在目标机器的 /usr/local/bin/python3.5 目录下。将 /usr/local/bin 目录包含进 Unix shell 的搜索路径里,以确保可以通过输入:

命令来启动他。[1] 由于 Python 解释器的安装路径是可选的,这也可能是其它路径,你可以联系安装 Python 的用户或系统管理员确认(例如, /usr/local/python 就是一个常见的选择)。

在 Windows 机器上,Python 通常安装在 C:Python35 位置,当然你可以在运行安装向导时修改此值。要想把此目录添加到你的 PATH 环境变量中,你可以在 DOS 窗口中输入以下命令:

通常你可以在主窗口输入一个文件结束符(Unix 系统是 Control-D ,Windows 系统是 Control-Z )让解释器以 0 状态码退出。如果那没有作用,你可以通过输入 quit() 命令退出解释器。

Python 解释器具有简单的行编辑功能。在 Unix 系统上,任何 Python 解释器都可能已经添加了 GNU readline 库支持,这样就具备了精巧的交互编辑和 历史 记录等功能。在 Python 主窗口中输入 Control-P 可能是检查是否支持命令行编辑的最简单的方法。如果发出嘟嘟声(计算机扬声器),则说明你可以使用命令行编辑功能;更多快捷键的介绍请参考 交互式输入行编辑 历史 回溯。如果没有任何声音,或者显示 ^P 字符,则说明命令行编辑功能不可用;你只能通过退格键从当前行删除已键入的字符并重新输入。

Python 解释器有些操作类似 Unix shell:当使用终端设备(tty)作为标准输入调用时,它交互的解释并执行命令;当使用文件名参数或以文件作为标准输入调用时,它读取文件并将文件作为 脚本 执行。

第二种启动 Python 解释器的方法是 python -c command [arg] ... ,这种方法可以在 命令行 执行 Python 语句,类似于 shell 中的 -c 选项。由于 Python 语句通常会包含空格或其他特殊 shell 字符,一般建议将 命令 用单引号包裹起来。

有一些 Python 模块也可以当作脚本使用。你可以使用 python -m module [arg] ... 命令调用它们,这类似在命令行中键入完整的路径名执行 模块 源文件一样。

使用脚本文件时,经常会运行脚本然后进入交互模式。这也可以通过在脚本之前加上 -i 参数来实现。

调用解释器时,脚本名和附加参数传入一个名为 sys.argv 的字符串列表。你能够获取这个列表通过执行 import sys ,列表的长度大于等于1;没有给定脚本和参数时,它至少也有一个元素: sys.argv[0] 此时为空字符串。脚本名指定为 '-' (表示标准输入)时, sys.argv[0] 被设定为 '-' ,使用 -c 指令 时, sys.argv[0] 被设定为 '-c' 。使用 -m 模块 参数时, sys.argv[0] 被设定为指定模块的全名。-c 指令 或者 -m 模块 之后的参数不会被 Python 解释器的选项处理机制所截获,而是留在 sys.argv 中,供脚本命令操作。

从 tty 读取命令时,我们称解释器工作于 交互模式 。这种模式下它根据主提示符来执行,主提示符通常标识为三个大于号( );继续的部分被称为 从属提示符 ,由三个点标识( ... )。在第一行之前,解释器打印欢迎信息、版本号和授权提示:

输入多行结构时需要从属提示符了,例如,下面这个 if 语句:

关于交互模式更多的内容,请参见 交互模式。

默认情况下,Python 源文件是 UTF-8 编码。在此编码下,全世界大多数语言的字符可以同时用在字符串、标识符和注释中 — 尽管 Python 标准库仅使用 ASCII 字符做为标识符,这只是任何可移植代码应该遵守的约定。如果要正确的显示所有的字符,你的编辑器必须能识别出文件是 UTF-8 编码,并且它使用的字体能支持文件中所有的字符。

你也可以为源文件指定不同的字符编码。为此,在 #! 行(首行)后插入至少一行特殊的注释行来定义源文件的编码:

例如,如果你的编辑器不支持 UTF-8 编码的文件,但支持像 Windows-1252 的其他一些编码,你可以定义:

这样就可以在源文件中使用 Windows-1252 字符集中的所有字符了。这个特殊的编码注释必须在文件中的 第一或第二 行定义。

Footnotes

结语:以上就是首席CTO笔记为大家整理的关于python解释器知多少的相关内容解答汇总了,希望对您有所帮助!如果解决了您的问题欢迎分享给更多关注此问题的朋友喔~


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:/Python/27962.html