python是编译语言吗_Python是编译型语言还是解释型语言?

Python是编译型语言还是解释型语言?相信这个问题肯定困扰了很多人,尤其是一些初学者,其实要弄清楚这个问题很简单,要先弄清楚什么是编译型语言,什么是解释型语言。

计算机说白了就是由无数个开关组合而成的,而每一个开关都只有两种状态,即开关打开(通电状态)和开关关闭(断电状态),所以电脑的进制是二进制的(分别用1和0来表示这两种状态),无数个开关的排列组合,呈现了计算的各种运算。

编译型语言。我们所使用的编程语言编写的程序,只有程序员认识,电脑只认识二进制,那么怎么才能让电脑识别呢,这时就需要一个“翻译官”,对我们程序员编写的代码进行“翻译”,以Java为例,我们编写的代码写在了.java文件中,经过javac.exe编译(“翻译”)后,就被“翻译”成了.class文件,当然.class文件不是二进制文件,也不能直接被计算机执行,而是需要通过Java虚拟机对.class文件进行解释,解释后才得到了编程的结果。在常见的编程语言中Java、C#等就属于这种编译类型的语言。

解释型语言。使用解释型语言编写的程序,无需“翻译官”进行“翻译”,电脑上的解释器能够直接进行识别,例如JavaScript,我们编写的JS文件,或是直接嵌套在HTML中的JS代码,可以直接被电脑上的解释器进行解释、执行,这个解释器就是浏览器。

我们在第一天接触到Python的时候,给我们的定义是Python是解释型语言,可是很多人有怀疑,因为虽然我们编写的Python代码文件是XXX.py文件,但是我们还找到了XXX.pyc文件,这扩展名文.pyc的文件是.py的编译文件,难道Python是变异类型的语言?其实Python类似Java,.pyc文件也不是能直接被计算机运行的二进制文件,而是需要通过虚拟机对.pyc文件进行解释后才被运行出结果。

所以结论是:Python是需要先经过编译,然后虚拟机在进行解释的,所以说Python是编译型语言或是解释型语言都可以。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值