【转】通过PyCharm 把Python 程序打包为exe
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了【转】通过PyCharm 把Python 程序打包为exe,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2193字,纯文字阅读大概需要4分钟。
内容图文
![【转】通过PyCharm 把Python 程序打包为exe](/upload/InfoBanner/zyjiaocheng/624/5dd75f66befc4fe8b7afe28c52bef2fb.jpg)
通过PyCharm 把Python 程序打包为exe
很多人应该都是使用PyCharm 编写python 程序的吧,虽然都是用 pyinstaller 来打包python 程序为exe。但是由于PyCharm 用了虚拟环境venv, 所有一些参数是有区别的,网上查询了很久没有查到这方面的信息,下面这些都是我自己探索出来的lin49940。
步骤一,点击进入PyCharm 的输入终端Terminal
步骤二,输入下面的语句, mypython.py 替换为你自己的程序名称
pyinstaller -c -F mypython.py -p E:/dream/venv/Lib/site-packages
这个命令是把程序打包为单独的一个exe文件, 打包成功后的文件在E:\dream\dist 文件夹下,名称为mypython.exe。
当然你也可以打包为多个文件的形式。
-p E:/******* 就是pycharm 当前项目的虚拟环境了, 里面有编写程序使用到的包,这些包可能没有加入到系统的python 环境中,我们必须指定这个路径,依赖的包才能被打包程序加载到。
pyinstaller 命令具体参数, 可以查看官方文档
https://pyinstaller.readthedocs.io/en/stable/usage.html#options
注意, 32位环境打包的exe 可以在32或64位的机器运行, 64位环境打包的exe 只能在64位的机器上运行。
window 特有的(pyinstaller 3.0 才有)
--win-private-assemblies
这个参数是指将共享的程序集变为私有程序集,这样的话即使改变环境,编译的程序依然只会执行私有程序集而忽视不同环境下的共享程序集。这个参数尤其适合在一台机器上编译完成后在各种不同环境下执行。
与之相近的还有一个参数
--win-no-prefer-redirects
这两个参数是在比较新的pyinstaller版本中才有的选项
对于图形的开发工具, 不要使用 -F 当个文件的方式打包, 这样的话, 你需要去配置环境, 用默认的-D 文件夹的方式打包就行了。
Window 运行, 是需要VC++ redist 的支持的,并且版本和(32位或64位)必须对, 不管是python 的wxPython 还是 c#的WPF 也是一样的,使用 C#app 能使用 Chromium 内核的CefSharp?从V65 版本开始就要VC++ Redist2015 才行。
缺少的一些如api-ms-win-crt-runtime-l1-1-0.dll 这些, 其实就是没有指定的 VC++ redist 版本(最低版本,一般有高版本的也行), 绝对不要自己下载或者去其他电脑拿这些dll 文件过来,很可能不兼任导致的莫名其妙的问题(CLR20R3,Error loading Python DLL loadLibrary Pyinstaller FormatMessageW failed 等奇怪的问题),安装对应版本的VC++ Redist 才是根本解决方法。
VC++ redist 绝对绝对绝对要去微软官网下载, 不要到国内一些下载网站下载,他们的东西杂七杂八的,有点小问题就能坑死你。
https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads
内容总结
以上是互联网集市为您收集整理的【转】通过PyCharm 把Python 程序打包为exe全部内容,希望文章能够帮你解决【转】通过PyCharm 把Python 程序打包为exe所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。