怎么把 python 打包成 exe 可执行文件?

2015-10-25 23:01:59 +08:00
 oska874

如题,自己写了个小程序,有两个源文件,用到了 tkinter 库,怎么打包成 exe 文件。用 pyinstaller 打包成一个文件,但是执行有问题:点击以下 button ,就会重复新建一个窗口程序。该怎么办?
系统是 win10 64bit , python 是 2.7.10 。

11433 次点击
所在节点    Python
22 条回复
oska874
2015-10-27 23:52:57 +08:00
@owwlo 果然,换成 threading 就正常了,不过有个问题,怎么杀死 threading ?、
@geeklian 没看懂你的内容。 我这么做的目的就是避免在第三方电脑上安装 python ,即使绿色的也要避免。
@fangdingjun 我试了把 console 改成 false ,但是启动的时候还是会弹出来一个 cmd 窗口,怎么去掉?
owwlo
2015-10-28 00:26:50 +08:00
@oska874 python 并不提供 api 来杀死 thread ,因为 thread 是程序 process 的一部分,杀死可能会导致进程出现严重的错误。需要在代码里声明如何让线程退出。根据你的情况你在 start_transd 里面分别使用了 TftpServer 、 FTPHandler 和 HTTPServer ,需要针对每种 server 定义“停止”的方法。用 TftpServer 举例, http://tftpy.sourceforge.net/sphinx/, TftpServer 有 stop 方法,可以在 listen 的时候保存 TftpServer 的实例并在点击 stop 按钮的时候触发“ TftpServer 实例”.stop()

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/231022

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX