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文件,看上去非常的简洁,而且有了图标后观赏性也大大提高了。

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

最后

分享一份Python的学习资料,但由于篇幅有限,完整文档可以扫码免费领取!!!

1)Python所有方向的学习路线(新版)

总结的Python爬虫和数据分析等各个方向应该学习的技术栈。

比如说爬虫这一块,很多人以为学了xpath和PyQuery等几个解析库之后就精通的python爬虫,其实路还有很长,比如说移动端爬虫和JS逆向等等。

(2)Python学习视频

包含了Python入门、爬虫、数据分析和web开发的学习视频,总共100多个,虽然达不到大佬的程度,但是精通python是没有问题的,学完这些之后,你可以按照我上面的学习路线去网上找其他的知识资源进行进阶。

(3)100多个练手项目

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了,只是里面的项目比较多,水平也是参差不齐,大家可以挑自己能做的项目去练练。

相关推荐
木向几秒前
leetcode22:括号问题
开发语言·c++·leetcode
comli_cn2 分钟前
使用清华源安装python包
开发语言·python
筑基.8 分钟前
basic_ios及其衍生库(附 GCC libstdc++源代码)
开发语言·c++
赵谨言12 分钟前
基于python 微信小程序的医院就诊小程序
经验分享·python·毕业设计
雨颜纸伞(hzs)23 分钟前
C语言介绍
c语言·开发语言·软件工程
J总裁的小芒果25 分钟前
THREE.js 入门(六) 纹理、uv坐标
开发语言·javascript·uv
1.01^100027 分钟前
[1111].集成开发工具Pycharm安装与使用
python·pycharm
HEX9CF27 分钟前
【Django】测试带有 CSRF 验证的 POST 表单 API 报错:Forbidden (CSRF cookie not set.)
python·django·csrf
坊钰1 小时前
【Java 数据结构】移除链表元素
java·开发语言·数据结构·学习·链表
chenziang11 小时前
leetcode hot100 LRU缓存
java·开发语言