IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> Python学习 02 工作模式与程序执行 -> 正文阅读

[Python知识库]Python学习 02 工作模式与程序执行

工作模式

IDLE是Python自带的一个集成开发环境,这类工具会让程序编写更加轻松。可以在终端输入idle指令打开它。

在这里插入图片描述

IDLE提供了交互模式和脚本模式两种工作模式。

交互模式

打开IDLE,显示的就是交互式界面。在>>>之后输入Python语句然后按下回车键,就会显示执行的结果。

4

对于算术表达式12 + 6,Python打印了运算结果18

对于输出语句print("hello world"),Python打印了语句hello world

第三句代码通过赋值语句创建language变量并为其赋值为Python

在这里插入图片描述

输入复合语句时,前面的>>>会变成...作为延续行提示符,IDLE没有显示这个符号,但不要自己添加。想退出这个代码块,需要按下两次回车键。

在终端输入python指令同样可以进入交互式环境。

在这里插入图片描述

脚本模式

交互模式可以让用户得到实时反馈,但无法保存结果以便之后再去执行。IDLE提供了脚本模式,可以用来编写和保存代码。

在交互模式菜单窗口通过File -> New File新建一个脚本窗口。输入所有要执行的代码。

print("1 + 1")
print("hello world")

通过File -> Save As将文件保存到指定位置,起名为helloWorld.py文件,文件名以.py为扩展名。

依次点击Run -> Run Module即可运行这个程序,运行结果会在交互模式窗口显示。

在这里插入图片描述

在终端输入python [文件名]也可以运行Python脚本程序。

在这里插入图片描述


交互模式适合做即时验证,脚本模式适合编写需要今后运行的程序。灵活运用这两种工作模式可以提高编程效率。


程序执行

当Python运行脚本处理代码之前,Python还执行了一些步骤:先将文件编译成字节码,然后转发到虚拟机中。

字节码编译

执行程序时,Python会先将源代码编译成字节码的形式。字节码是与平台无关的Python虚拟机指令,它不是机器的二进制代码,而是特定于Python的一种表现形式。字节码的运行速度会比源代码语句快得多。

编写模块hello.py,并在helloWorld.py中导入它。运行程序后,路径下多出了__pycache__子目录,该目录中包含了hello.pyc文件,该文件的命名包含了模块名和编译它的Python版本信息。这种命名规范确保了不同版本Python生成的字节码不会相互覆盖。

--- hello.py ---
def hello(name):
    print(f"hello, {name}")
    
    
--- helloWorld.py ---
from hello import hello

hello('Python')

在这里插入图片描述

通过python -m py_compile [文件名]指令可以将单个Python文件编译成字节码。

在这里插入图片描述

Python保存字节码是对启动速度的优化。每当运行程序时,Python会自动检查源文件与字节码文件最后一次修改的时间戳,同时检查是否使用了不同的Python版本。如果上次保存字节码之后没有修改过源代码,那么Python将会跳过编译步骤并加载对应的.pyc文件。Python的版本信息在3.2版本之前存储在字节码文件中,在3.2版本之后存储在字节码文件名中。

Python源文件的修改和版本的变化都会触发新的字节码文件的编译。字节码文件只会针对被导入的文件生成,是对导入的优化。在交互式命令行中输入的命令不会生成字节码。字节码会在内存中生成,并在程序结束时被丢弃。

Python虚拟机

程序编译成字节码后,会发送到Python虚拟机程序(PVM)上执行。PVM本质上是迭代运行字节码指令的循环,依次完成各操作指令。PVM是Python运行时的引擎,是实际运行脚本的组件。

在这里插入图片描述


Python的传统运行时执行模型是将输入的源代码转换为字节码,然后发送到PVM中运行。PVM仍需解释字节码,字节码指令比CPU指令需要更多的工作。但与其他经典解释器不同,Python并不需要反复地分析和分解每一行源代码语言的文本。因此纯Python代码的运行速度介于传统的编译语言和解释语言之间。


本文参考:《Python学习手册》《Python编程初学者指南》

  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2022-09-24 20:53:29  更:2022-09-24 20:56:56 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/17 0:16:44-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码