首页 / 知识
Python解释器的诞生
2023-11-12 13:40:00
1991年,第一个Python解释器诞生,它是用C语言实现的,并能够调用C语言的库文件。从一出生,Python已经具有了:类,函数,异常处理,包含表和词典在内的核心数据类型,以及模块为基础的拓展系统。
这里需要牵扯一个“编译器”的概念,其主要作用是便于人编写,阅读,维护的高级计算机语言翻译为计算机能识别,运行的低级机器语言的程序。
编译器翻译语言方式有2种:编译、解释。
①编译型语言:需通过编译器(compiler)将源代码编译成机器码,之后才能执行的语言。
一般需经过编译(compile)、链接(linker)这两个步骤。编译是把源代码编译成机器码,链接是把各个模块的机器码和依赖库串连起来生成可执行文件。
②解释型语言:解释性语言的程序不需要编译,相比编译型语言省了道工序,解释性语言在运行程序的时候才逐行翻译。
Python是一种解释型语言,它的源代码不需要编译,可以直接从源代码运行程序。Python解释器将源代码转换为字节码,然后把编译好的字节码转发到Python虚拟机(PythonVirtualMachine,PVM)中执行。
当我们执行Python代码的时候,在Python解释器用四个过程“拆解”我们的代码:
首先,当你把键入代码交给Python处理的时候会先进行词法分析,如果你键入关键字或者当输入关键字有误时,都会被词法分析所触发,不正确的代码将不会被执行。
Python会进行语法分析,例如当"foriintest:"中,test后面的冒号如果被写为其他符号,代码依旧不会被执行。
进入最关键的过程,在执行Python前,Python会生成.pyc文件,这个文件就是字节码。
将编译好的字节码转发Python虚拟机中进行执行:由PythonVirtualMachine(Python虚拟机)来执行这些编译好的字节码。
以上内容为大家介绍了Python解释器的诞生,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注我们http://www.mobiletrain.org/
最新内容
相关内容
linux系统名称命令?
linux系统名称命令?,系统,工作,地址,管理,信息,标准,名称,网络,命令,目录,Linux系统常见命令linux系统常用操作命令如下:ls:全拼list,功能是列出linux系统命令行在?
linux系统命令行在?,系统,地址,工作,管理,信息,工具,最新,密码,首页,标准,怎么把linux系统的命令行打开在Linux系统中,打开命令行窗口需要使用linux系统测试命令?
linux系统测试命令?,系统,工作,地址,标准,信息,命令,数据,单位,软件,目录,软件测试中常用的Linux命令有哪些?1、Linux常用命令包括ls、cd、wclinux系统安卓命令?
linux系统安卓命令?,系统,软件,信息,数据,地址,标准,名字,设备,工作,网络,linux怎么用命令看android手机上已安装应用的名字,包名,版本,图标..Python编程语言的优缺点
Python编程语言的优缺点,代码,网站,航空,管理系统,培训,系统,概念,网络,基础,机器人,Python是一种编程语言,它的名字来源于一个喜剧。是由Guidpython标识符有哪些基础原则?
python标识符有哪些基础原则?,最新,技术,标识符,名称,培训,合法,基础知识,基础,数字,企业,在Python学习中,你会接触到标识符,这也是Python的基础比较好用的Python代码编辑器
比较好用的Python代码编辑器,代码,平台,环境,培训,教育,设计,数据,办公,人员,分析,Python是一款非常简单的编程语言,其功能使用起来都十分方便零基础学python到底难不难?
零基础学python到底难不难?,基础,项目,动力,培训,百度,同学,培训班,知识点,语言,难点,Python语言一直被称为是很容易学习的编程语言,那么零基础报名Python培训选择哪种方式比较好
报名Python培训选择哪种方式比较好?,培训,工作,基础,时间,情况,在线,最划算,环境,系统,方式,Python不仅是一种高级的编程语言,而且还是一种应用Python数据分析有哪些重要的库?
Python数据分析有哪些重要的库?,数据,分析,标准,庞大,通用,平台,培训,工具,基础,灵活,众所周知,有很多编程语言都可以应用于数据分析领域,但PythPython数据分析相关的技术
Python数据分析相关的技术,数据,工具,化学,设计,分析,网络,软件,系统,工程,商业,1.机器学习和计算机视觉Crab:灵活、快速的推荐引擎gensim:人性Python语言支持编程方式有哪些
Python语言支持编程方式有哪些,数据,设计,中心,代码,第三,网站,人工智能,平台,位置,培训,Python是一种跨平台的计算机程序设计语言,是一个高层