1779930755cmy0 最近的时间轴更新
1779930755cmy0

1779930755cmy0

V2EX 第 512547 号会员,加入于 2020-10-13 14:12:04 +08:00
1779930755cmy0 最近回复了
2022-06-14 12:05:50 +08:00
回复了 LeeReamond 创建的主题 Python Python 现代化打包应用到 exe 的方式?
2022-06-14 10:37:07 +08:00
回复了 LeeReamond 创建的主题 Python Python 现代化打包应用到 exe 的方式?
就我的经验来说,@Osk 这位老哥的办法是最简单、可操作性最强且不容易出问题的,我在这里稍微补充一点细节:
1. 从 python 官网下载 embedded 版本的 python 压缩包,目前最后支持 win7 的版本是 3.8 ,我个人用的是 3.8.7 。
2. 解压 python embedded 压缩包(假设解压到 c:/python )以后,找到 [python38._pth] 这个文件并打开,去掉 [import site] 前面的 [#] 。
3. 下载 [get-pip.py] 文件,放到 python 文件夹里,打开 cmd ,进入 c:/python 目录,执行 python get-pip.py ,跑完以后 python embedded 就有了使用 pip 安装模块的能力,之后就可以在 pycharm 中安装模块了,比如 pyqt5 。如果使用 cmd 安装模块,需要先 cd c:/python ,然后 python -m pip install 模块名。
4. 写程序的过程中要注意,在 main.py 中引用自己写的.py 文件时可能会失败,这是环境变量的问题,我的解决办法是在程序开头添加临时环境变量,如果自己写的需要引用的.py 文件跟 main.py 在同一路径下的话,可以这么写:
import sys
sys.path.append(os.path.dirname(os.path.abspath(__file__))),这一句的意思是把 main.py 所在路径临时添加到系统变量中。
5. 写完 python 程序以后,写一个批处理 bat 文件,假设文件名为“启动程序.bat”,用来执行 main.py 程序,这是因为环境变量里没有嵌入式 python 的路径,需要指定 python.exe 的路径。一个简单的写法如下:
cd c:/python
python "c:/python/Projects/hello world/main.py"
pause
6. 如果不喜欢程序打开后伴随的 cmd 控制台窗口,可以去搜索隐藏控制台的 bat 代码,写在“启动程序.bat”开头即可。
7. 将整个 python 文件夹压缩,发给其他人,随便他解压到哪个地方,只要双击“启动程序.bat”,就能运行你写好的 py 程序,到此真正实现免配置、便携化 python 程序的目的。
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   4236 人在线   最高记录 6543   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 11ms · UTC 05:26 · PVG 13:26 · LAX 22:26 · JFK 01:26
Developed with CodeLauncher
♥ Do have faith in what you're doing.