pyinstaller可以打包python项目吗

pyinstaller可以打包python项目吗图1

刚好之前写过该文章,希望对你有所帮助。

在之前文章《让你的代码更好的交付,使用Python实现模块打包发布》中,分享了测试开发工程师在进行交付时,对交付模块使用Wheel库将其打包成.whl文件,已达到提高交付、部署效率的目的。同时,采用统一的发布方式,也有助于提高测试开发的规范性。


PyInstaller安装

建议使用pip的方式进行安装,否则可能会报缺失其他依赖库的情况,需要逐个手动安装。

pip install PyInstaller


PyInstaller使用

如下简单代码示例,其中导入了Python内置库——time模块和第三方库——csv模块,实现了每次运行时,在新生成的csv文件中写入固定数据。

pyinstaller可以打包python项目吗图2pyinstaller可以打包python项目吗图3

在该模块目录内执行如下命令,执行日志如下:

pyinstaller WriteFiles.py

pyinstaller可以打包python项目吗图4

其中在当前目录中可以看到生成了.uildWriteFilesWriteFiles.exe文件

pyinstaller可以打包python项目吗图5

我们执行WriteFiles.exe,可以发现在当前目录下,新增了WriteFile_1550935956.csv文件。

pyinstaller可以打包python项目吗图6


扩展:PyInstaller常用参数说明

  • -F:打包单个文件,生成结果是一个.exe格式文件。
  • -D:打包多个文件,生成结果是一个目录,包含第三方依赖、资源、.exe文件等,适合以框架形式编写工具模块,默认参数。
  • -c:使用Windows控制台子系统执行,显示命令行窗口,默认参数。
  • -w:使用Windows子系统执行,当程序启动的时候不会打开命令行,编写GUI程序时使用此参数有用。
  • -p:指定额外的import路径,类似于使用PYTHONPATH,多个目录可以用路径分割符(Windows使用分号,Linux使用冒号)。
  • –add-data:打包额外资源,多个资源可以使用路径分割符(Windows使用分号,Linux使用冒号)。
  • –add-binary:打包额外的代码,多个代码可以使用路径分割符(Windows使用分号,Linux使用冒号)。同时–add-binary添加文件的引用文件会一并添加进来。
  • -i :添加.exe文件的icon图标。
  • -n:编辑.exe文件和.spec的文件名。

我们尝试使用其中 -F, -n 参数,只生成一个文件名为Toutiao的.exe格式文件。我们执行如下命令,运行日志如下:

pyinstaller -F -n Toutiao.exe WriteFiles.py

pyinstaller可以打包python项目吗图7

其中在当前目录中生成了.distToutiao.exe文件 ,目录结构如下。

pyinstaller可以打包python项目吗图8

除了PyInstaller模块能够将模块打包成.exe格式的可执行程序,还可以了解下pyexe模块,它也可以实现相同效果的打包,这里就不做单独的介绍了。

若对你有所帮助,欢迎大家评论、留言。

本文来自投稿,不代表天一生活立场,如若转载,请注明出处:http://tiyigo.com/it/14300.html

(0)
上一篇 2023-02-08 09:24
下一篇 2023-02-08 09:33

相关推荐

  • 在office中smartart层次结构图

    SmartArt是powerpoint独具特色的一个功能,是office办公套件中设计好的图形与文字相结合的一种专业图形,使用它可以更直观地显示出内容中的流程、概念、层次结构和关系…

    2023-01-16
  • 傻瓜式装系统的方法,现在有几种装系统方法

    其实我个人觉得傻瓜式安装操作系统并不理想。为什么呢?一这种安装操作系统方式会自带捆绑,而且无用软件一大堆。二有些傻瓜式安装操作系统会在底层植入木马,在后台窃取个人信息,非常的不安全…

    2023-08-12
  • 怎么把mp4格式变成mp3格式

    把MP4转换成MP3格式,很明显,MP4是视频格式,MP3是音频格式,视频转音频!还可以说成是提取视频中的音频或声音,其实这种需求在用户当中还是有一些的,比如需要提取某部电脑里面某…

    2023-02-07
  • 华硕飞行堡垒7怎么样(华硕飞行堡垒7星陨版)

    在全球硬件市场上,华硕代表着“坚如磐石”的品质;在当前的游戏本业界,ROG代表着极致的性能与游戏体验,更是代表着一种“信仰”。随着玩家群体的逐渐细分,诸多个性化的需求也促使着游戏本…

    2023-03-08
  • 如何实现tomcat自动化部署

    最近接触了jenkins这个东西,所以花点时间了解了下。它可以在代码上传仓库(如github,gitee,gitlab)后,在jenkins(一个网站界面)中通过获取代码仓库中最新…

    2023-08-28
  • word如何快速添加斜线表头和表尾

    ①绘制单斜线表头:可以通过绘制表格的方式,也可以通过设置单元格的边框来实现; ②绘制多斜线表头:可以使用插入形状的方式来实现; 01 绘制单斜线表头 方法1:设置边框斜线来绘制表头…

    2023-03-29
  • ps里的堆栈怎么运用

    堆栈是PS中非常好玩的一种功能,逐渐得到使用者的认可和喜爱。特别是合成灯轨和星轨的功能,减轻了拍摄的难度,也解放了相机拍星轨时的超长曝光。一张漂亮星轨的照片,和用堆栈命令,简单几步…

    2023-07-12
  • 有哪些惊艳的黑白色的画作

    在中国漫长的绘画艺术历史发展长河中,黑白画的表达方式是一个独特的存在,我也非常喜欢这种方式,其方便、简捷、明朗的风格让人爱不释手,欲罢不能。看到这个提问,刚好我手上有一份20多年前…

    2023-04-23
  • 如何拍出梦幻效果的照片(教你拍出梦幻照片的8个小技巧)

    教你用5毛钱打造出朦胧梦幻大片,超值的柔美人像摄影技巧! 朦胧梦幻的片子很受女孩子的喜爱,毕竟每个女孩子都有个梦幻的公主梦嘛。那么今天就来教大家如何在前期拍摄时就打造出柔美朦胧的效…

    2023-08-01
  • 用什么app拦截骚扰电话和短信

    其实,现在各大厂商的手机都集成了骚扰拦截功能,如华为的emui、魅族的Flyme和MIUI等,他们都可以有效的拦截骚扰电话和短信。下边以MIUI为例作个介绍。 找到“安全中心”,点…

    2023-05-18