专栏首页北京马哥教育python文件打包实战技巧

python文件打包实战技巧

众所周知,python是一种脚本语言,python程序必须在python环境下运行,所以如果想把自己写的程序给别人看的话,就比较麻烦,他需要先配置python环境,对于电脑小白来说这是“要命”的事情。而且如果是客户的话,也不想让对方知道源代码,那么怎样才能既保留自己的源代码同时又能让对方很方便的使用自己的程序呢?

PyInstaller的安装可以在命令行输入以下命令直接安装:

pip install PyInstaller

如果看到Successfully install PyInstaller-x.x.x就表示安装成功。(x.x.x代表版本)也可以在python官网下载。

下面开始进行文件打包

先在桌面建一个文件夹并把需要打包的代码文件放入其中。

新建文件夹

在文件夹内空白处按住Shift并点击鼠标右键,然后点击在此处打开Powershell窗口。

打开命令窗口

输入以下命令开始打包:Pyinstaller test.py

出现如下图所示内容就表示打包完成了。

打包完成

注意:由于电脑管家会把这种文件识别为木马病毒,所以出现该情况就需要自己找回文件,恢复并添加至信任区。

找回文件

然后再看刚才新建的文件夹,会发现多了很多文件,只需要在build文件下找到test.exe就可以了,exe后缀的文件就是电脑可执行文件,其他的文件都可以删除掉,只需要将exe文件发送给其他人,不管对方有没有python环境,他只要双击就可以运行,而且也看不到源代码。

通过上述默认打包方式就可以对代码文件进行简单的打包了,但是还是觉得不太美观,而且很多没用的文件显得冗余,所以PyInstaller还提供了其他的打包形式。

-F 只产生单个的可执行文件

-D 产生一个目录包含多个文件(exe在其中,此为默认打包方式)

-w 去除运行时出现的命令行黑窗口

-i 将ico后缀的图片作为可执行文件的图标

等等还有很多命令(可以去官网看官方文档),最主要的就只需记住这些就行了。

它们的用法如下:pyinstaller -w -F -i favicon.ico test.py

其中favicon.ico为图标。需要放在代码文件同目录下。

然后跟第一次打包方式相同,只是输入命令的时候换成后面的。按照这种方式(只要有-F命令的)打包成功后,这时的exe可执行文件在dist文件夹下。

打开发现有且只有这个exe文件,看上去非常的简洁,而且有了图标后观赏性也大大提高了。

通过以上步骤,代码文件就打包好了。

原文链接:https://www.cnblogs.com/woshijiuke/p/12784811.html

我来说两句

0 条评论
登录 后参与评论

相关文章

  • python文件打包实战技巧

    众所周知,python是一种脚本语言,python程序必须在python环境下运行,所以如果想把自己写的程序给别人看的话,就比较麻烦,他需要先配置python环...

    小小科
  • 使用linux if 命令来判断条件的总结

    -w当由pathname指定的文件或目录存在并且可执行时返回真。一个目录为了它的内容被访问必然是可执行的。

    小小科
  • 亲自动手写一个python库(二)

    引言 经过上一节中所述,我们搭建好了一个Python环境用于库开发,我们在这一节真正开始搭建一个库,并将其发布。 项目文档结构 首先我们先构建出自己项目的文档...

    小小科
  • python文件打包实战技巧

    众所周知,python是一种脚本语言,python程序必须在python环境下运行,所以如果想把自己写的程序给别人看的话,就比较麻烦,他需要先配置python环...

    小小科
  • Python如何发布程序

    ##如何发布一个Python程序: ####1.安装一个pyInstaller ######在pycharm里点 file ----->settings--...

    py3study
  • Python源文件打包成可执行的exe应用,给你的代码变个身!

    我们平常所写的程序一般都是在编译环境下运行的,然而这对于那些没有开发环境或者对程序一无所知的小白就很不友好了,

    灰小猿
  • Web网站一键转「可深度定制的」App

    在本文中,我们将介绍一个骚操作,通过开心App[1]将我们想要转换的网址或者代码包一键转化成可深度定制的专属App,这是送给未涉及安卓开发、IOS开发的小伙伴们...

    石璞东
  • Apache libcloud中对CloudStack的支持

    原文地址:https://dzone.com/articles/cloudstack-support-apache

    Steve Wang
  • Apache libcloud中的CloudStack支持

    阅览者注意:这篇文章的内容是由Sebastien Goasguen在Build a Cloud博客撰写的 。

    Hero
  • vps设置

    mv -f a/* /b/ 强制移动,当b目录中有和a中冲突的文件夹时候,使用cp

    用户2657851

扫码关注云+社区

领取腾讯云代金券