windows之python3.6的pyinstaller的安装与使用

来源:互联网 发布:淘宝店能升级企业店铺 编辑:程序博客网 时间:2024/06/05 16:42

一、pyinstaller的安装

直接用pip安装是用不了的,会报错,因为还没有适合python3.6的pyinstaller库。
故而,需要直接从github上下载pyinstaller文件——pyinstaller
这里写图片描述
点击红色圈里的选项下载压缩包,解压后得到pyinstaller文件。

二、使用pyinstaller

在网上看了很多博客,最后只能用下面这种无奈的方法转换成exe文件。

<1>打开pyinstaller文件,进入含有pyinstaller.py的目录(开始文件的开始目录)。
打开cmd(Ctrl + R),用cd命令进入到这个目录,如我的目录:
D:\文档堆\码源世界\Python\Python代码\Python生成exe\pyinstaller
则命令如图
这里写图片描述
最后一行的D:\文档堆\码源世界\Python\Python代码\Python生成exe\pyinstaller>表示已经进入到该目录环境下了。

<2>接着把你要转换的.py文件放入该目录下,用hello.py展示。
代码如下:

# hello.pyimport timeprint('hello, python!')time.sleep(10)

然后执行命令:

python pyinstaller.py -F hello.py

这里写图片描述
然后能在该目录下找到生成的hello文件。
这里写图片描述
exe可执行文件在hello里的dist目录下。

三、编自动代码

用pyinstaller转换exe时,需要把文件放入该目录下,感觉这样不妥,于是了解了pyinstaller一些转换命令后,编写了一个简单的转换代码。

简介

启用pyinstaller转换命令不止上述的python pyinstaller.py -F ....
pyinstaller命令的语法是:

python pyinstaller.py [选项] [文件名.py]
在此简单的说一下

选项 说明 -F –onefile 创建一个文件捆绑的可执行文件。 –distpath DIR 在哪里放置捆绑的应用程序(默认:./dist) –workpath WORKPATH 在哪里放置所有的临时工作文件,.log,.pyz等(默认:./build) –specpath DIR 存储生成的spec文件的文件夹(默认:当前目录)

把桌面上的hello.py转换的文件放置在桌面上hello文件中的命令:

python pyinstaller.py -F –distpath C:\Users\Heart\Desktop\hello\dist –workpath C:\Users\Heart\Desktop\hello\build –specpath C:\Users\Heart\Desktop\hello C:\Users\Heart\Desktop\hello.py

命令很长,每次这样输入让人很不爽,于是写个自动转换的代码偷个懒,而且还可以随时改动,很方便。

代码设计

其他选项见英语文章使用PyInstaller不会英语的可以安装个浏览器翻译插件。谷歌浏览器自带有。
博主是如此设计的

这里写图片描述
input文件 放要转换的.py文件;
output文件用于安置转换好的文件;
exe.py为自己编写的自动转换程序。
代码如下:

import os# 获取需要转换的.py格式文件位置pyname = os.listdir('D:/文档堆/码源世界/Python/Python代码/Python生成exe/input')[0]py_path = 'D:/文档堆/码源世界/Python/Python代码/Python生成exe/input/' + pyname# 转换后文件的放置目录filename = 'D:/文档堆/码源世界/Python/Python代码/Python生成exe/output/' + pyname.split('.')[0] + '/'# 指定三个选项的文件路径dist_path = filename + 'dist'build_path = filename + 'build'spec_path = filename# 指定pyinstaller.py位置pyinstaller_path = r'D:\文档堆\码源世界\Python\Python代码\Python生成exe\pyinstaller\pyinstaller.py'# 选项options = ' -F' + ' --distpath ' + dist_path + ' --workpath ' + build_path + ' --specpath ' + spec_path + ' '# 调用系统命令os.system('python ' + pyinstaller_path + options + py_path)

代码里的目录位置需要自己去修改,这些位置都是博主的存放位置。

该代码缺陷是还是限制于input与output文件位置,目录都是定下来了,但优点是简单,傻瓜式的操作,点击即用。

下面给出一下比较灵活的转换代码:

import os# 获取需要转换的.py格式文件位置py_path = input('请输入.py格式的文件位置:\n')# 转换后文件的放置目录file_path = py_path.split('.')[0] + '\\'# 指定三个选项的文件路径dist_path = file_path + 'dist'build_path = file_path + 'build'spec_path = file_path# 指定pyinstaller.py位置,这个需要自己修改pyinstaller_path = r'D:\文档堆\码源世界\Python\Python代码\Python生成exe\pyinstaller\pyinstaller.py'# 选项options = ' -F' + ' --distpath ' + dist_path + ' --workpath ' + build_path + ' --specpath ' + spec_path + ' '# 调用系统命令os.system('python ' + pyinstaller_path + options + py_path)

该代码需要读者自行修改pyinstaller目录位置即可使用。

输入.py格式的文件,则在当前目录下就能生成转换文件。

阅读全文
0 0