编程解释器是什么(怎么理解编程语言中的解释器,求详细介绍)
本文目录
怎么理解编程语言中的解释器,求详细介绍
编译 Compile:把整个程序源代码翻译成另外一种代码,然后等待被执行,发生在运行之前,产物是「另一份代码」。
解释 Interpret:把程序源代码一行一行得读懂然后执行,发生在运行时,产物是「运行结果」。详细了解可以去看黑马程序员的课程。
虚拟机 解释器 是不是说的一个东西有什么区别
Java主要靠Java虚拟机(JVM)在目标码级实现平台无关性。JVM是一种抽象机器,它附着在具体操作系统之上,本身具有一套虚机器指令,并有自己的栈、寄存器组等。但JVM通常是在软件上而不是在硬件上实现。(目前,SUN系统公司已经设计实现了Java芯片,主要使用在网络计算机NC上。另外,Java芯片的出现也会使Java更容易嵌入到家用电器中。)JVM是Java平台无关的基础,在JVM上,有一个Java解释器用来解释Java编译器编译后的程序。Java编程人员在编写完软件后,通过Java编译器将Java源程序编译为JVM的字节代码。任何一台机器只要配备了Java解释器,就可以运行这个程序,而不管这种字节码是在何种平台上生成的(过程如图1所示)。另外,Java采用的是基于IEEE标准的数据类型。通过JVM保证数据类型的一致性,也确保了Java的平台无关性。
简单说,java的解释器只是一个基于虚拟机jvm平台的程序
问题补充:假若我用J**A写了一个程序,能用J**A解释器来执行它吗?你看我理解的对不对,是不是J**A解释器是在开发J**A程序的时候用来调试的,而我们在做完一个整体的程序,并发布给用户后,它们的机子上必需安装有相应的虚拟机,该程序才可以运行
解释器,一个交互式外壳
“互动”一词可以追溯到拉丁语“interagere”。动词“agere”的意思是“做某事”和“行动”,而“inter”表示事物和事件的空间和时间位置,即“介于”或“介于”对象、人物和事件之间。所以“interagere”的意思是“在这些之间行动”或“在这些之间行动”。
考虑到这一点,我们可以说交互式 shell 位于用户和操作系统(例如 Linux、Unix、Windows 或其他)之间。除了操作系统之外,解释器也可以用于像 Python 这样的编程语言。可以从交互式 shell 中使用 Python 解释器。
交互式 shell 也是交互式的,它介于命令或操作及其执行之间。换句话说,shell 等待来自用户的命令,它执行并返回执行结果。之后,shell 等待下一个输入。
生物学中的壳是碳酸钙“墙”,可以保护蜗牛或贻贝免受环境或敌人的侵害。类似地,操作系统中的外壳位于操作系统内核和用户之间。这是双向的“保护”。用户不必使用操作系统复杂的基本功能,而是能够使用相对简单易懂的交互式shell。保护内核免受系统功能的无意和不正确使用。
Python 为 Python Shell(也称为“Python 交互式 Shell”)提供了一个舒适的命令行界面。看起来术语“交互式外壳”是一个同义反复,因为“外壳”本身就是交互式的,至少是我们在前几段中描述的那种外壳。
使用 Python 交互式解释器可以轻松检查 Python 命令。可以通过在 shell 提示符下键入不带任何参数的命令“python”后跟“return”键来调用 Python 解释器:
python
Python 返回以下信息:
仔细查看上面的输出会发现我们使用了错误的 Python 版本。我们想使用Python 3.x,但我们得到的是操作系统的安装标准,即版本2.7.11+。
检查是否安装了 Python 3.x 版本的最简单方法:打开终端。输入python但没有返回。相反,键入“Tab”键。您将看到可能的扩展和其他已安装版本,如果有的话:
如果没有其他 Python 版本出现,则必须安装 python3.x。之后,我们可以通过键入python3来启动新安装的版本:
一旦 Python 解释器启动,您就可以在命令提示符“》》》”处发出任何命令。让我们看看,如果我们输入“hello”这个词会发生什么:
当然,“hello”不是正确的 Python 命令,因此交互式 shell 会返回(“引发”)错误。
我们将使用的第一个真正的命令是打印命令。我们将创建强制性的“Hello World”语句:
再简单不过了,不是吗?哦,是的,它可以用更简单的方式编写。在交互式 Python 解释器中 - 但不是在程序中 - 不需要打印。我们可以只输入一个字符串或一个数字,它就会被“回显”
所以,我们才刚刚开始,我们已经在谈论退出 shell。我们这样做是因为我们知道,如果您不知道如何正确退出程序,那会多么烦人。
结束交互式会话很容易:您可以使用 exit() 或 Ctrl-D(即 EOF)退出。退出函数后面的括号至关重要。(警告:不带括号的退出在 Python2.x 中有效,但在 Python3.x 中不再有效)
在以下示例中,我们通过键入算术表达式将解释器用作简单的计算器:
Python 在表达式中遵循通常的操作顺序。操作的标准顺序用以下枚举表示:
换句话说,表达式“3 + (2 * 4)”中不需要括号:
最近的输出值由解释器自动存储在名为“_”的特殊变量中。因此,我们可以通过在提示后键入下划线来再次打印最近示例的输出:
下划线可以像任何其他变量一样用在其他表达式中:
下划线变量仅在 Python shell 中可用。它在 Python 脚本或程序中不可用。
在 Python shell 中使用变量很简单。如果你是一个绝对的初学者,如果你对变量一无所知,请参阅我们关于变量和数据类型的章节。值可以保存在变量中。变量名不需要任何特殊标记,就像在 Perl 中所做的那样,您必须使用美元符号、百分比符号和 at 符号来标记变量:
到目前为止,我们还没有介绍多行语句。所以初学者可以跳过本章的其余部分,并可以继续后面的章节。
我们将展示交互式提示如何处理像 for 循环这样的多行语句。
在输入“for character in l:”之后,解释器期望下一行的输入被缩进。换句话说:解释器需要一个缩进的块,它是循环的主体。这个缩进的块将被迭代。解释器通过显示三个点“...”而不是标准的 Python 交互式提示“》》》”来显示这种“期望”。交互式 shell 的另一个特点:当我们用完缩进的行时,即块,我们必须输入一个空行来表示块已完成。注意:额外的空行只在交互式 shell 中是必需的!在 Python 程序中,返回到“for”行的缩进级别,即以冒号“:”结尾的缩进级别就足够了。
字符串是通过将一系列字符放在引号中来创建的。字符串可以被单引号、双引号或三引号包围,它们由三个单引号或三个双引号组成。字符串是不可变的。换句话说,一旦定义,它们就不能改变。我们将在另一章中详细介绍这个主题。
三引号中的字符串可以跨越多行而不使用转义字符:
定义了字符串的乘法,它本质上是一个多重连接:
更多文章:
eclipse编写java(eclipse如何创建java项目)
2026年4月20日 04:00
fighter factory studio(sharefactorystudio可以删除吗)
2026年4月20日 02:40
div的css属性(救命,如何用js给div标签添加css属性,当鼠标事件发生的时候,譬如点击某个元素)
2026年4月20日 02:20
dubbo zk面试题(dubbo服务端注册到zookeeper是长连接吗)
2026年4月20日 02:00






