当前位置:网站首页 > 编程语言 > 正文

py文件打包成apk(py文件打包成dll)



目录

一、资料说明

二、步骤

第一步,安装pyinstaller(你可以通过pycharm或cmd安装)

第二步,在工作目录上打cmd,输入以下命令

第三步,dist查看打包成功的exe文件,并加入两个文件夹

第四步,在dist目录全选,右键添加压缩(完美版打包)

三、疑问和总结

①有简单打包方法吗?

②打包好后,我进入dist发现只有一个exe文件,不添加Platforms和imageformats文件夹和图片资源可以运行吗?

 ③按照四个步骤走完,能实现什么效果

④打包图片不显示怎么办

⑤第三方库找不到怎么办

⑥'NoneType' object has no attribute 'write'怎么办

7.打包闪退问题

8.批处理快速打包

9.打包报错:Miniconda version: Failed to extract ucrtbase.dll: failed to open target file! fopen:Permission denied

四、总结


本人原创资料,写于大三,改于大四,本人py迷,如说的不对,欢迎大家指正!

省略安装方法,pycharm/cmd方式安装,如何安装可参考网络资料

pyinstaller -F -w -i rocket.ico untitled.py --upx-dir D:python解释器펎px-4.1.0-win64

  • -F表示打包一个文件
  • -w表示软件不带命令行
  • -i表示icon图标地址,没有可以不打,建议打完整路径,不要像我上面那样
  • untitled.py是你的py文件
  • upx是压缩打包文件的工具路径(:https://github.com/upx/upx/releases/tag/v4.1.0),当然upx也可以不下载,只是压缩文件大小罢了

【简略版打包命令】

pyinstaller -F -w untitled.py

温馨提示:以上做法需要设置好环境变量,因为在命令提示符(CMD)中执行某个命令时,系统会根据环境变量中的路径查找相应的可执行文件(.exe)

参考路径:

D:pythonLibsite-packagesPyQt5Qt5pluginsplatforms下的两个文件夹(这两个文件夹作用:imageformats保证正常显示图片,platforms保证打包发给别人能够顺利启动,如果不拷进去,可参考后面内容--用打包命令额外打包一些第三方库)

【小结】走到这步,你就可以将dist文件夹打包给你的好朋友用了。但是上图显然有太多dll文件,不太简洁,如果你想将单独的一个exe文件发给你的好友,请看第四步。

【注意】若没有下载好WINRAR,需要提前下载

【注意】此步骤建议"压缩文件名"和"解压后运行"填写一样的内容,即cmd打包生成的exe名字,例如jiemian.exe(我将打包生成的untitled.exe改名为jiemian.exe),上图中abc.exe是WINRAR打包的结果,jiemian.exe是py打包的结果。

我打包出来abc.exe,发给小伙伴,小伙伴可以移动到任何位置使用!别人就看不到你的dll文件和png文件啦!~

有,打包成功后进入dist,有一个exe文件,你把dll文件、Platforms、png等依赖文件黏贴进去,全部文件压缩发给别人,别人也可用,不过别人会看到你的dll文件、png文件,不太简洁。

若您想打包成一个exe文件(不含任何dll文件,须使用winrar方法压缩,方法就是上面的方法)

列个表:

  不添加Platforms 不添加imageformats文件夹和图片资源 自己用 可以用 可以用,但是不显示图片资源 发给别人用 直接用不了 添加Platforms下可以用,不显示图片资源

1.因为你的电脑安装了py,系统会根据你设置好的环境变量找到你的第三方库PYQT5,因此你自用可以不粘帖Platforms文件夹进去。

2.这两个文件夹的位置参考


D:pythonLibsite-packagesPyQt5Qt5plugins


3.解释:将图片资源imageformats文件夹、platforms文件夹移动到exe同级目录中(假如不把图片移进去,无法访问所有图片;不把imageformats移进去,无法访问ico文件;不把platforms文件夹移进去,别人打不开你的exe)

你将你的exe文件发给你的小伙伴,小伙伴没安装py也可以用,而且是一个单独的exe文件,移动到哪里都可以!

可以参考我大四时候写的,效果有用!

多加一句代码,红色的是我虚拟环境下的包的位置,如果你不想拷文件,可以换成如下打包命令:

pyinstaller  -F -w -i pdf.ico --paths="F:pycharmGUI8venvLibsite-packages" --upx-dir F:python解释器펎px-4.1.0-win64  untitled.py

原因:py会输出信息,而打包时候没将控制台打包进去

三个方案:

方案一:最简单,打包代码去掉-w,让控制台和exe一同打开。

方案二:将Pyinstaller版本降低(我没试过,网友说的,大家可以试试)

方案三:将标准输出和标准错误流重定向到一个空文件或者其他地方(我也没试过,大家可以试试,本人经历有限)

最后还是带着控制台输出了,大四作(= =欢迎大家补充解决方案) 

【描述】打包成main.exe,双击运行闪退

直接在该目录cmd,输入main.exe运行,命令行会直接输出报错信息 

双击即可,一键打包!

 
   

原因:360等杀毒软件干扰

解决方案:关闭退出或者软件添加信任即可。(以下以360企业安全云为例,其他软件自行百度即可)

 

 

 

我花了不少钱找人反复测试写好的软件,写成本贴,求点个赞吧!

初创时间本人大三,一个小小的笔记,各位大佬轻喷!!~

大四了,再补充一下:升级了系统WIN11后问题超级多,以前打包都是一次过的,emmm,现在又是打包有问题又是被当作病毒禁止掉,我醉了。。。 

到此这篇py文件打包成apk(py文件打包成dll)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • Ubuntu源码下载gzip(ubuntu下载github代码)2025-11-19 17:18:07
  • 赛博朋克2077 战斗(赛博朋克2077 战斗技巧)2025-11-19 17:18:07
  • linux修改文件权限(linux修改文件权限不够)2025-11-19 17:18:07
  • 文件目录下打开命令行(在目录下打开命令行)2025-11-19 17:18:07
  • 打印机共享失败11b(打印机共享失败709)2025-11-19 17:18:07
  • 虚拟机win7镜像文件iso下载(虚拟机win732位镜像文件)2025-11-19 17:18:07
  • xvv是什么牌子(xvov是什么品牌)2025-11-19 17:18:07
  • 左斜杠怎么写(左斜杠是什么符号)2025-11-19 17:18:07
  • 字体图标生成(字体图标生成器)2025-11-19 17:18:07
  • 删除虚拟适配器是什么意思(删除所有虚拟适配器是什么意思)2025-11-19 17:18:07
  • 全屏图片