python程序如何工作

随着人工智能时代的来临,python成为了人们学习编程的首先语言。那么,python程序怎么运行的?我们下面来介绍下。

python程序执行原理

我们都知道,使用C,C++之类的编译性语言编写的程序,是需要从源文件转换成计算机使用的机器语言,经过链接器链接之后形成了二进制可执行文件。运行该程序的时候,就可以二进制程序从硬盘载入到内存中并运行。

但是对于Python而言,Python源码不需要编译成二进制代码,它可以直接从源代码运行程序。Python解释器将源代码转换为字节码,然后把编译好的字节码转发到Python虚拟机(PVM)中进行执行。当我们运行Python程序的时候,Python解释器会执行两个步骤。

(1) 把源代码编译成字节码。编译后的字节码是特定于Python的一种表现形式,它不是二进制的机器码,需要进一步编译才能被机器执行,这也是Python代码无法运行的像C,C++一样快的原因。如果Python进程在机器上拥有写入权限,那么它将把程序的字节码保存为一个以.pyc为扩展名的文件,如果Python无法在机器上写入字节码,那么宇节码将会在内存中生成并在程序结束时自动丢弃。在构建程序的时候最好给Python赋上在计算机上写的权限,这样只要源代码没有改变,生成的.pyc文件可以重复利用,提高执行效率。

(2) 把编译好的字节码转发到Python虚拟机(PVM)中进行执行。PVM是Python Virtual Machine的简称,它是Python的运行引擎,是Python系统的一部分,它是迭代运行字节码指令的一个大循环,一个接一个地完成操作。

相关推荐

  1. 如何使用 Python 创建 Twitter 应用程序

    2024-03-29 10:12:04       28 阅读
  2. 如何python程序内连续运行多个代码

    2024-03-29 10:12:04       35 阅读
  3. 如何部署基于 Pyramid 的 Python WSGI Web 应用程序

    2024-03-29 10:12:04       29 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-29 10:12:04       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-29 10:12:04       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-29 10:12:04       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-29 10:12:04       20 阅读

热门阅读

  1. 基于Mac M1[ARM64]环境下Docker部署大数据集群

    2024-03-29 10:12:04       17 阅读
  2. React.FC

    2024-03-29 10:12:04       13 阅读
  3. C语音的算法和数据结构

    2024-03-29 10:12:04       22 阅读
  4. SpringBoot单元测试剖析

    2024-03-29 10:12:04       17 阅读
  5. 虚幻C++

    2024-03-29 10:12:04       18 阅读
  6. uniapp页面怎么传参?

    2024-03-29 10:12:04       17 阅读
  7. chrome安装vue插件 vue-devtools

    2024-03-29 10:12:04       23 阅读
  8. Redis 教程系列之Redis 事务(十六)

    2024-03-29 10:12:04       23 阅读
  9. nginx截取url后面的id比较大小

    2024-03-29 10:12:04       19 阅读
  10. 一步步指导:在Chrome中安装Vue插件vue-devtools

    2024-03-29 10:12:04       18 阅读
  11. DFS-蓝桥杯常用Python算法

    2024-03-29 10:12:04       21 阅读