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逆向等等。

img

(2)Python学习视频

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

在这里插入图片描述

(3)100多个练手项目

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

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/586136.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PulseGAN

研究背景 远程光电容积描记术 (rPPG) 是一种非接触式技术,用于测量面部视频中的心脏信号。健康监测和情绪识别等许多领域都迫切需要高质量的 rPPG 脉冲信号。然而,由于脉搏信号不准确的限制,现有的大多数rPPG方法只能用于获取平均心率&#…

AD域组策略

题目: 除manager 组和IT组,所有用户隐藏C盘;除manager 组和IT组,所有普通给用户禁止使用cmdIT01用户登陆域后,会自动增加驱动器X,该驱动器自动关联DC1的C:\tools文件夹;sales用户组的InternetE…

2023“信息安全管理与评估“---单机取证(高职组)

介绍: 竞赛有固定的开始和结束时间,参赛队伍必须决定如何有效的分配时间。请认真阅读以 下指引! (1)当竞赛结束,离开时请不要关机; (2)所有配置应当在重启后有效&#xf…

ESP32S3+HX8347+3线SPI运行LVGL例程

一、clone lv_port_esp32到本地 git clone https://github.com/lvgl/lv_port_esp32.git 二、增加hx8347.c、hx8347.h components\lvgl_esp32_drivers\lvgl_tft下新增2个文件:hx8347.c、hx8347.h。因为lv_port_esp32中没有hx8347的驱动,需要自己写。这两个…

1.2.0 IGP高级特性之FRR

理论部分参考文档:Segment Routing TI-LFA FRR保护技术 - 华为 一、快速重路由技术 FRR(Fast Reroute)快速重路由 实现备份链路的快速切换,也可以与BFD联动实现对故障的快速感知。 随着网络的不断发展,VoIP和在线视频等业务对实时性的要求越…

web:[BJDCTF2020]The mystery of ip(ssti模板注入、Smarty 模板引擎)

题目 进入页面显示如下 点击flag页面得到ip 点击hint页面 在hint.php的源代码页面中发现 由题目可以知道要从ip入手 这里尝试抓包加上X-Forwarded-For请求头修改为127.0.0.1 因为直接将127.0.0.1输出到页面,可以猜测是ssti模板注入 可以继续验证 这里发现输入什么…

【数据结构】八、查找

一、基本概念 静态查找:只查找,不改变集合内数据元素 动态查找:有则输出元素,无则添加元素 二、静态查找表 2.1顺序查找 在线性表、链表、树中依次查找 2.2折半查找(二分查找) 在有序的线性表中&…

HTML5 `<audio>` 面试题

HTML5 <audio> 面试题 什么是HTML5 <audio>元素&#xff1f; 元素是HTML5的音频播放器。它允许在网页中嵌入音频文件&#xff0c;并提供了控制音频播放的功能。 如何在HTML中嵌入音频文件&#xff1f; 使用 <audio> 元素&#xff0c;通过设置 src 属性指定…

获取PG库 database与 user 创建时间以及cluster初始化时间

代码实现 echo "获取数据库创建时间" data_dir$(psql -U postgres -d postgres -X -qAt -c "show data_directory" ) db_dirs$(ls $data_dir/base |grep -v pgsql_tmp) for db_oid in $db_dirs dodb_exists$(psql -U postgres -d postgres -X -qAt -c &qu…

macos下转换.dmg文件为 .iso .cdr文件的简单方法

为了让镜像文件在mac 和windows平台通用, 所以需要将.dmg格式的镜像文件转换为.iso文件, 转换方法也非常简单, 一行命令即可 hdiutil convert /path/to/example.dmg -format UDTO -o /path/to/example.iso 转换完成后的文件名称默认是 example.iso.cdr 这里直接将.cdr后缀删…

C#高级 08Json操作

1.概念 Json是存储和交换文本信息的语法。类似于XML。Json比XML更小、更快、更易解析。Json与XML一样是一种数据格式。Json是一种轻量级的数据交换格式。它基于ECMAScript的一个子集。Json采取完全独立于语言的文本格式&#xff0c; 但是也使用了类似于C语言的习惯。这些特性使…

Kotlin基础语法

Kotlin基础语法 Kotlin内置数据类型变量可读可写变量可读变量 自动类型推导机制when表达式range表达式字符串模版函数函数定义函数简写默认参数具名函数参数Unit函数反引号函数匿名函数隐式返回函数作为形参函数引用函数作为返回值 可空性高级函数 let非空断言空合并操作符 高级…

Mac系统通过homebrew安装postgresql和postgis

花费了大概一天的时间安装postgresql和postgis&#xff0c;期间遇到了大量的坑&#xff0c;记录下来分享给大家&#xff0c;方便自己以后再次安装&#xff0c;也帮助别人踩坑 tip:我的系统是MAC ,通过homebrew安装的 最开始是通过homebrew安装了 postgresql13 &#xff0c;但…

2047过滤空格(C语言)

目录 一&#xff1a;题目 二&#xff1a;思路分析 三&#xff1a;代码 一&#xff1a;题目 二&#xff1a;思路分析 1.首先&#xff0c;这道题是一个字符串的问题&#xff0c;我们要先知道字符串存放在char类型的数组中的&#xff0c;并不是一个变量就可直接存放的下一个完整…

1.Linux快速入门

Linux快速入门 Linux操作系统简介Linux操作系统优点Linux操作系统发行版1. Red Hat Linux2. CentOS3. Ubuntu4. SUSE Linux5. Fedora Linux 32位与64位操作系统的区别Linux内核命名规则 Linux操作系统简介 Linux操作系统是基于UNIX以网络为核心的设计思想&#xff0c;是一个性…

云计算:OpenStack 配置云主机实例的存储挂载并实现外网互通

目录 一、实验 1. 环境 2.配置存储挂载 3.云主机实例连接外部网络&#xff08;SNAT&#xff09; 4.外部网络连接云主机实例&#xff08;DNAT&#xff09; 二、问题 1.云主机 ping 不通外部网络 2.nova list 查看云主机列表报错 3.nova list 与 virsh list --all有何区…

Go语言中的包管理工具之Go Modules的使用

GoLang 中常用的包管理的方式 常用的有三种 Go PathGo VendorGo Modules 关于 Go Modules 1 ) 概述 Go的包管理&#xff0c;经过社区和官方的共同努力下&#xff0c;最终在百家争鸣后Go官方在 2018.8 推出了go 1.11版本中的Go Modules&#xff0c;并且很快成为一统江湖的包…

python学习 21 excel分列

简单做了个模板&#xff0c;能干这个&#xff1a; 指定sheet中某列数据进行按需拆分&#xff0c;拆分后新建一个test的sheet&#xff0c;将数据分别存入test的不同列中。 import os import xlwings as xw import re #excel路径 pathrC:\Users\xxx\Desktop\123.xlsx#设置需要…

【代码随想录】刷题笔记Day42

前言 这两天机器狗终于搞定了&#xff0c;一个控制ROS大佬&#xff0c;一个计院编程大佬&#xff0c;竟然真把创新点这个弄出来了&#xff0c;牛牛牛牛&#xff08;菜鸡我只能负责在旁边喊加油&#xff09;。下午翘了自辩课来刷题&#xff0c;这次应该是元旦前最后一刷了&…

行车记录仪变清晰,变高清的办法一定要收藏

有时候我们会发现行车记录仪拍摄的视频不够清晰&#xff0c;特别是出现事故需要视频为证的时候&#xff0c;如果视频太模糊&#xff0c;很难获得交警的支持&#xff0c;那么如何让行车记录仪拍摄的视频变得更加清晰呢&#xff1f; 小编给大家分享几个办法&#xff0c;建议收藏…