Python文件.py转换为.exe可执行程序,制作.exe文件图标
当大家想要将自己写的Python程序对别人进行展示的时候,你是否还是打开你的Pycharm进行运行展示?
假如是专业的人士看你的代码,一眼就能看懂你的代码,而其实我们可以不需要给代码,利用pyinstaller直接将你的Python程序打包成.exe文件格式,发给别人进行展示时,别人就会就像安装一个软件一样,直接点击exe文件就可以运行,完全封装好,别人看不到你的代码,你也再也不用一个一个得进行运行展示了,直接丢你已经打包好了的.exe文件程序就好了,是不是即保密又省时?
就像下面这样,直接点击.exe文件就可以运行了:
https://zhuanlan.zhihu.com/p/160182242
使用pyinstaller可以将你的.py文件直接转换成.exe格式,在没有部署python环境的windows机器上直接运行你的程序,PyInstaller 是一个用来将 Python 程序打包成一个独立可执行软件包,支持 Windows、Linux 和 Mac OS X。
话不多说,马上教大家如何操作:
第一步:我们需要准备好需要转换的py文件和一张用于做图标的照片,将他们存放于同一个文件夹中。
没有图标的.ico文件?
这里提供一个可以将图片转换为图标文件的网站:http://www.bitbug.net/,点击选择文件,选择你想要转换的图片,输入附加码,点击生成ico图标,就自动生成好了如上图的.ico图标
注意:文件的路径全部为英文路径
第二步:在放你的python文件的环境里面,添加镜像源下载安装好pyinstaller,命令如下:
pip install -i https://pypi.douban.com/simple pyinstall
第三步:安装好后,用cmd命令切换激活到你程序所在的环境里面,我的放在了我创建的py35环境中,然后定位到你程序存放的地方,如下图我的程序放在D:\Project\Demo下,然后输入命令:pyinstaller --icon=lover.ico -F lover.py,将你.exe程序换上你想换上的图标,这里我制作的的icon为lover.ico,-F参数是指示生成exe文件,lover.py就是你想要转换为.exe文件的.py文件了。
开始运行,等待运行结束
运行结束后,我们会发现在我们存放项目的文件夹内会多出四个文件,则运行成功,其中我们打包好了的.exe文件就存放在dist文件夹内,然后你将你的exe文件发给别人,就可以运行了。
这里需要提醒的是:假如你的python程序里面带有图片或者视频的话,你需要将你的图片和.exe文件同时发给对方,这就像你在应用商店下载一个程序软件时,为什么它安装好的安装包里面会有图标之类的文件的存在。
另外在你使用pygame模块的load图片时,建议使用相对路径,这样别人运行时才可以加载你的图片,否则使用绝对路径的话,如D:\这种形式,别人是无法在自己的电脑上找到在你的绝对路径图片的。
很多人在使用相对路径的时候,往往会出现图片加载错误,pygame.error: Couldn't open ./image/...,而出现闪退问题
这是因为我们将我们的.exe文件和我们图片不是按照我们之前使用的相对路径进行存放,这里需要我们将我们的.exe文件和图片放在同级目录下,这样点击.exe文件就可以加载图片运行了,如开头。
到此,你就可以将上述文件的内容发给你想要发送的人直接运行展示了,无需你将你的代码发过去了,想要源代码,在后台回复关键字:表白神器,即可获取。
写了这么久,希望您们能够给我点个在看,您们的支持是我继续创作的动力。
更多有关python、深度学习和计算机编程和电脑知识的精彩内容,可以关注微信公众号:码农的后花园

Python文件.py转换为.exe可执行程序,制作.exe文件图标的更多相关文章
- 将python包发布到PyPI和制作whl文件
参考链接:wheel和egg的不同怎样将自己写的包传达到PyPi发布你自己的轮子 - PyPI打包上传实践PyPI官网上传包教程 wheel文件Wheel和Egg都是python的打包格式,目的是支持 ...
- Python自制小时钟,并转换为exe可执行程序详解
一,简介Python写完程序,要靠命令来执行太LOW,太低调了,还不华丽了. 再说别人的电脑,都没有Python库,怎么执行,还能不能愉快的一起玩耍了. 所以哪怕只会写一个HelloWorld,也要弄 ...
- 将Python源程序打包成可独立执行的文件
有时候需要将编写好的脚本发送给别人,但是在没有安装运行环境或依赖库的情况下,Python脚本程序无法执行.PyInstaller工具可以快速的将python脚本打包成一个二进制可执行的exe程序,并且 ...
- 简单python脚本,将jupter notebook的ipynb文件转为pdf(包含中文)
直接执行的python代码ipynb2pdf.py 主要思路.将ipynb文件转成tex文件,然后使用latex编译成pdf.由于latex默认转换不显示中文,需要向tex文件中添加相关中文包. 依赖 ...
- Django 中 python manage.py makemigrations 与 python manage.py migrate
执行 python manage.py makemigrations django根据settings.py里面的INSTALLED_APPS项设置找到对应app里的models.py,应用里面创建的 ...
- python -m xxx.py和python xxx.py的区别
先看下python -m site作用是显示sys.path的值内容,也就是python搜索模块的目录,作用类似于linux下的PATH python -m SimpleHTTPServer 会在sy ...
- Python的.py文件打包成exe可执行文件
前几天做了几个简单的爬虫python程序,于是就想做个窗口看看效果. 首先是,窗口的话,以前没怎么接触过,就先考虑用Qt制作简单的ui.这里用前面sinanews的爬虫脚本为例,制作一个获取当天sin ...
- (转)使用 PyInstaller 把python程序 .py转为 .exe 可执行程序
最近使用Python为项目开发一款绘图工具(绘出 声场三维模型).因为希望能把Python脚本发布为脱离Python平台运行的可执行程序,比如单个的exe文件.PyInstaller恰满足这个需求.本 ...
- python生日贺卡制作以及细节问题的解决最后把python项目发布为exe可执行程序过程
自己今天第一次做一个python生日贺卡: 效果图 参考之前有位大佬的作品,自己稍微的改造了一下下 首先:上程序 Birthday.py """ ----------- ...
随机推荐
- 解决:HBuilder X 未检测到手机或模拟器
1.问题 我使用Android 9版本的手机,开发者选项已开启USB调试,但是HBuilderX未检测到手机或模拟器. 2.解决办法 1.找到HBuilderX安装目录下的D:\Archive\HBu ...
- Bytom Dapp 开发笔记(三):Dapp Demo前端源码分析
本章内容会针对比原官方提供的dapp-demo,分析里面的前端源码,分析清楚整个demo的流程,然后针对里面开发过程遇到的坑,添加一下个人的见解还有解决的方案. 储蓄分红合约简述 为了方便理解,这里简 ...
- 2020-07-24:聊一下zookeeper的同步算法。
福哥答案2020-07-24: 同步算法基于 ZAB 协议,一种快速 Paxos 算法. 快速Paxos算法Paxos算法可能出现死循环,就是在两个Proposer总是在交替prepare.并且,Pa ...
- PHP 开发工程师基础篇 - PHP 字符串
字符串 (String) 字符串是一系列字符的集合.如 “abc”. 在 PHP 中,一个字符代表一个字节,一个字节 (Byte) 有 8 比特 (bit). PHP 仅支持 256 字符集,因此 P ...
- odoo12 Tree视图创建编辑旁边新增按钮,并根据条件隐藏
前言 我们通常在form视图中可以很简单地在header里面添加按钮,但是在某些情况下,我们也需要在Tree视图中添加按钮,但是odoo官方目前没有给我们提供相应的接口,因此,我们尝试自己来实现它.最 ...
- C、C++、Java、Python该怎么选
对于很多对编程感兴趣的小伙.或是正在读计算机专业的大学生来说,不知道要选择哪一门编程语言发展.对于计算机专业的学生,一般的学习都普遍会开始设C.C++.Java等热门的编程语言,但还是不太清楚选择哪一 ...
- vue watch/ computed的应用(做一个简单的父子之间的传递/电话号码的搜索)
父组件中当点击搜索的时候请求接口,然后把新的数据用 computed 传递给子组件 <van-search v-model="onSeachPhone" show-actio ...
- SpringSecurity权限管理系统实战—五、整合SpringSecurity(下)
系列目录 前言 上篇文章SpringSecurity整合了一半,这次把另一半整完,所以本篇的序号接着上一篇. 七.自定义用户信息 前面我们登录都是用的指定的用户名和密码或者是springsecurit ...
- 记录一下navicat的快捷键
1.ctrl+q 打开查询窗口2.ctrl+/ 注释sql语句3.ctrl+shift +/ 解除注释4.ctrl+r 运行查询窗口的s ...
- 利用哈希map快速判断两个数组的交集
在大多数情况,也就是一般的情况下,大家都能想出最暴力的解法,通常也就是采用遍历或者枚举的办法来解决问题. 该题需要找出两个数组的交集,最简单的一个办法就是用A数组里面的所有数去匹配B数组里面的数.假设 ...