Home

Awesome

PyStand

Python 独立部署环境。Python 3.5 以后,Windows 下面都有一个 Embedded Python 的独立 Python 运行环境,这个 PyStand 就是配合 Embedded Python 使用的。

特性介绍

功能说明

使用方式

常见问题

安装依赖

用一个同 Embedded Python 相同版本的 Python 做一个 venv,然后 pip 独立安装好模块后将 site-packages 内对应的包复制到 PyStand.exesite-packages 下直接使用。

查看错误

如果在 cmd.exe 内部运行 PyStand.exe 可以看到标准输出和标准错误。不过推荐的做法是 PyStand.int 里尽量精简,比如:

import main
main.main()

把你的主程序写到 main.py 里面,用你常规方式把程序调试通顺了,然后再在 PyStand.intimport 一下即可,实在 PyStand.int 有错误,再到命令行下面去运行 PyStand.exe 查看错误。

MessageBox

PyStand 添加了一个 os.MessageBox(msg, title) 的接口,可以用来简单显示个对话框。

更换图标

可以替换 appicon.ico 文件并重新编译 PyStand.exe ,或者使用 Resource Hacker 直接 替换 Release 内下载的 PyStand.exe 文件的程序图标。

脚本组织

可以在 PyStand.exe 同级目录新建一个 script 文件夹,将脚本放进去,PyStand.int 里面就是添加一下 sys.path 然后 import 即可。

发布打包时将 script 文件夹用 zip 压缩成 script.egg 文件,PyStand.int 里检测到该文件存在就加入到 sys.path,然后再 import

静态入口

部分网友有个需求,担心用户把可执行文件改名,但 .int 文件没改名导致出错的问题,因此增加了一个名为 _pystand_static.int 的入口文件,在 PyStand 主程序启动时,如果检测到在主程序同目录下存在该文件,则会优先加载,不存在才回去找 PyStand.int 文件。

这样主程序就允许随意改名了,只要把入口写在 _pystand_static.int 中即可。

使用例子

这个回答里我说了详细的用法以及 PyInstaller 的优缺点:

更多的用法可以见 Release 下面的例子。

常见问题

其他用户使用中碰到什么疑问?如何解决的?

碰到疑问不妨快速过一下。