相同之处 二者均是将高级语言转换为计算机可以识别的机器语言。 不同之处 1. 编译器 首先对整个程序进行分析,是否有错误,如果没有,对整个文件进行编译(input:整个文件)编程语言:C, C++, C#, Scala, Java 2. 解释器 执行程序时,对程序逐行转换编译,以ipython为例,编译的时候从上自下逐行编译,遇到问题报错(input:单行代码)。编程语言:PHP, Perl, Python, Ruby 详细解释参考链接