登录
/
注册
首页
论坛
其它
首页
科技
业界
安全
程序
广播
Follow
关于
签到
每天签到奖励2-10圆
导读
排行榜
TG频道
发帖说明
登录
/
注册
账号
自动登录
找回密码
密码
登录
立即注册
搜索
搜索
关闭
CSDN热搜
程序园
精品问答
技术交流
资源下载
本版
帖子
用户
软件
问答
教程
代码
写记录
VIP申请
VIP网盘
网盘
联系我们
发帖说明
每日签到
道具
勋章
任务
淘帖
动态
分享
留言板
导读
设置
我的收藏
退出
腾讯QQ
微信登录
返回列表
首页
›
资源区
›
代码
›
【Python学习笔记】 第2章 Python如何运行程序 ...
【Python学习笔记】 第2章 Python如何运行程序
[ 复制链接 ]
蔓好
2025-6-5 16:10:27
Python解释器简介
我们在Python的官网下载并安装Python后,它会生成一些组件,包括解释器和一套支持库。Python的代码必须在解释器中运行。
程序运行
程序员的视角
一个Python程序仅是一个包含Python语句的文本文件。例:创建script0.py文件,并写上:
print("Hello, world!")
print(2 ** 100)
复制代码
然后,我们在命令行窗口,调用Python执行文件:
Python的视角
在解释器解释文件的内容时,还会做一些别的事情。
字节码编译
如果Python在机器上拥有写入权限,那么它把程序的字节码保存为一个以.pyc为扩展名的文件,这个就是字节码文件。在版本3.2之前,文件与源文件同目录;在版本3.2之后,文件在__pycache__目录中。在这个目录中还保存了编译它们的Python版本信息。
Python这么做的目的是对启动速度优化。下次运行程序时,Python先检查:
源文件是否改变
:检查源文件和字节码文件最后一次修改的时间戳。
Python的版本
:是否版本不同。
然后确定是否要重新编译并生成字节码文件。大型程序中,字节码文件有助于加速启动。
Python虚拟机
Python将程序编译成字节码后,就可以发送到Python虚拟机上执行。Python虚拟机是解释器的一部分,也是解释器的最后一环。
性能的含义
Python的源代码在写好后可以立刻运行。字节码只是特定于Python的一种表现形式。Python仍然需要解释字节码,这使得Python的运行速度不如C/C++。
开发的含义
Python的编译后立刻执行的特性使得开发周期大大缩短。
执行模型的变体
Python的各种实现
CPython:标准Python
最初的、标准的Python
Jython:基于Java的Python
设计目的是与Java编程语言集成。作用是将Python源代码编译成Java字节码,使其可以运行在Java虚拟机上。
IronPython:基于.NET的Python
可以与Windows平台上的.NET框架以及与之对应的Linux开源的Mono编写成的应用相集成。
Stackless:注重并发的Python
它不会在栈上保存状态,使得Python更容易移植到较小的栈架构中。
PyPy:注重速度的Python
执行优化工具
Cython:Python和C的混合
Shed Skin:Python到C++的转换器
Psyco:原先的即时编译器
冻结二进制文件
有时候我们希望能够拥有一个把Python程序编译成二进制文件的简单方法。
实现上述想法的工具有:py2exe(Windows)、PyInstaller(Linux、Mac OS X)等等。
未来的可能性
未来也许有新的字节码格式和实现方式的变体将被采用。比如:
Parrot:提供多种语言通用的字节码格式、虚拟机以及优化技术。
Unladen Swallow:将Python提速至少5倍。
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
Python
学习
笔记
2章
如何
相关帖子
如何搭建智能DNS服务器?
浅谈如何更好的进行需求评审
【经验贴】多项目并行,如何解决资源管理这个难点?
读高性能MySQL(第4版)笔记15_备份与恢复(下)
第2章 Git安装
如何把一个接口设计好?
借助Aspose.Email,在 Python中创建事件日历
学习ReAct并使用langgraph实现一个简单的ReAct AI Agent!!
一生一芯学习:基础设施(2)
HTML学习日记
vip免费申请,1年只需15美金$
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
千斤顶
照妖镜
相关推荐
安全
如何搭建智能DNS服务器?
0
802
能氐吨
2025-10-10
安全
浅谈如何更好的进行需求评审
1
276
边书仪
2025-10-10
安全
【经验贴】多项目并行,如何解决资源管理这个难点?
0
716
拼匍弦
2025-10-10
安全
读高性能MySQL(第4版)笔记15_备份与恢复(下)
1
2
蓝娅萍
2025-10-10
安全
第2章 Git安装
0
297
薯羞
2025-10-10
安全
如何把一个接口设计好?
0
370
戎玉珂
2025-10-10
业界
借助Aspose.Email,在 Python中创建事件日历
0
646
巴沛若
2025-10-10
业界
学习ReAct并使用langgraph实现一个简单的ReAct AI Agent!!
0
31
稼布欤
2025-10-10
业界
一生一芯学习:基础设施(2)
0
351
毋峻舷
2025-10-10
安全
HTML学习日记
0
469
季卓然
2025-10-10
回复
(1)
窟聿湎
前天 16:27
回复
使用道具
举报
照妖镜
感谢分享
vip免费申请,1年只需15美金$
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
回复
本版积分规则
回帖并转播
回帖后跳转到最后一页
签约作者
程序园优秀签约作者
发帖
蔓好
前天 16:27
关注
0
粉丝关注
23
主题发布
板块介绍填写区域,请于后台编辑
财富榜{圆}
anyue1937
9999501
dage888
999994
富账慕
10007
4
匝抽
9986
5
孙淼淼
9992
6
柴古香
9993
7
筒濂
9982
8
凌彦慧
9988
9
崔瑜然
9984
10
慢秤
9979
查看更多