PyQt5环境搭建及cx_freeze打包exe
Python的图形库也有好几个,Qt文档和使用面还是要广一些。
打包成可执行文件的也有好几个,PyInstaller用的比较多,但是PyInstaller目前还不支持Python3.6(开发版支持3.6,但是我测试我的项目,打包出来的exe执行结果有问题)。
于是就选择了PyQt+cx_freeze。
安装PyQt5和cx_freeze用pip命令即可安装,非常方便。
pip install PyQt5
pip install cx_freeze
安装完毕后,测试一下:
新建hello.py
内容如下
#!/usr/bin/python3
# -*- coding: utf-8 -*-
import sys
from PyQt5.QtWidgets import QApplication, QWidget
from PyQt5.QtGui import QIcon
if __name__ == '__main__':
app = QApplication(sys.argv)
w = QWidget()
icon = QIcon("icon.png")
w.setWindowIcon(icon)
w.resize(400, 300)
w.move(400, 300)
w.setWindowTitle('hello world')
w.show()
sys.exit(app.exec())
说明:
- 开一个Qt的窗口,并将icon.png作为它的icon,这个icon也会显示在windows的任务栏上
- 调整窗口的大小到400x300,也移动到400,300处
- 将窗口的标题指定为"hello world"
使用python hello.py
命令,看到下面的图形界面,证明PyQt安装正常
下面就是将这个hello.py打包成可执行文件了。
打包exe文件
新建setup.py,内容如下
from cx_Freeze import setup, Executable
import sys
base = 'WIN32GUI' if sys.platform == "win32" else None
executables = [Executable("hello.py", base=base, icon='icon.ico')]
packages = []
include_files=['icon.png']
options = {
'build_exe': {
'packages':packages,
'include_files': include_files
},
}
setup(
name = "prog",
options = options,
version = "1.0",
description = 'desc of program',
executables = executables
)
说明:
- executable内的hello.py就是要打包的python脚本,icon就是这个exe的图标
- include_files表示要打包的其他文件,我这里是有一个icon.png需要一起打包
- setup内的name, version, description都可以自己填写,相信大家都知道这些是什么含义
在命令行转到刚刚的setup.py文件的目录,使用如下命令打包exe:
python setup.py build
打包以后,出来了一大堆,文件夹大小是179M。里面大概像这个样子,hello.exe就是打包出来的可执行文件了
双击exe,运行完全正常。
相关源码:Github-Syler-Fun-PyQt-cx_freeze
PyQt5环境搭建及cx_freeze打包exe的更多相关文章
- [ PyQt入门教程 ] PyQt5环境搭建和配置
PyQt入门系列教程主要目的是希望通过该系列课程学习,可以使用PyQt5工具快速实现简单的界面开发,包括界面设计.布局管理以及业务逻辑实现(信号与槽).简单说就是可以使用PyQt5工具快速画一个控件摆 ...
- Android环境搭建及Ionic打包(win7)
本人刚刚接触Ionic3,初步进行打包操作,将其遇到的问题和整个流程记录下载,方便以后的巩固,也为小白们提供一个参考.因本人没有appleヽ(ー_ー)ノ,而且使用的是WIN7系统,所以暂时只提供了WI ...
- Python3+Pycharm+PyQt5环境搭建
操作系统:Windows 10 Python版本:3.7及以上版本均可 PyCharm:PyCharm 2019.3 1.安装 PyQt5 及其拓展工具. pip install pyqt5 pip ...
- Python3+Pycharm+PyQt5环境搭建步骤
搭建环境: 操作系统:Win10 64bit Python版本:3.7 Pycharm:社区免费版 一.Python3.7安装 下载链接:官网 https://www.python.org/downl ...
- Mac Python PyQt5 环境搭建
pip install pyqt5 测试开发环境 在Terminal里敲下以下代码,如果没有报错就说明安装成功了. python -c "import PyQt5" 或是如下图,导 ...
- cx_freeze打包EXE文件
创建setup.py文件 import osimport sysfrom cx_Freeze import setup, Executable build_exe_options = dict(pac ...
- Python3 GUI:PyQt5环境搭建
配置镜像源 最近用Python内置的Thinter写了个小工具,发现界面略朴素,于是决定转向PyQt5.先配置镜像源,否则只能龟速下载. C:\Users\你的用户名下新建目录pip 在pip目录下新 ...
- PyQT5速成教程-1 简介与环境搭建
本文由 沈庆阳 所有,转载请与作者取得联系! PyQt简介 一个良好的界面是人机交互中十分重要的一环. Python作为脚本语言,起初并未拥有GUI开发的部分.但随着其开放的扩展性,使得Python不 ...
- win7下nsis打包exe安装程序教程
下载软件包: NSIS中文版 :https://pan.baidu.com/s/1mitSQU0 装好之后会出现两个软件:Nullsoft Install System 和 VNISEdit 编译环境 ...
随机推荐
- xmlplus 组件设计系列之五 - 选项卡
这一章将设计一个选项卡组件,选项卡组件在手持设备上用的比较多,下面是一个示意图: 选项卡组件的分解 在具体实现之前,想像一下目标组件是如何使用的,对于设计会有莫大的帮助.通过观察,可以将选项卡组件分为 ...
- C语言学习第五章
今天要进行一个重要元素数组的学习了.这一章要掌握什么是数组,数组怎么样命名,数组怎么样使用,以及一些常见的错误和需要注意的事项. 一. 数组的基本概念 数组是可以在内存中连续存储多个元素的结 ...
- ASP.NET MVC 常用扩展点:过滤器、模型绑定等
一.过滤器(Filter) ASP.NET MVC中的每一个请求,都会分配给对应Controller(以下简称“控制器”)下的特定Action(以下简称“方法”)处理,正常情况下直接在方法里写代码就可 ...
- DirectFB 之 字体显示
通过本文,可以简单地了解directfb字体内部运行机制. 简介 SetFont函数,是每次写字体前必须调用的一个函数,否则directfb程序将会报错.这个函数是将某种字体与某个surface相关联 ...
- linux 中的搜索命令
which 查看可执行文件的位置. whereis 查看文件位置. locate 配合数据库查看文件位置. find 实际搜索硬盘查询文件名称. grep 查找文件内容 一般不常用find命令,因为f ...
- 深刻认识shift_ram IP core——图像处理学习笔记
在进行图像处理算法中,往往需要生成图像像素矩阵,这对于C语言来说可以直接用数据表示,但是对于verilog来说便不是那么容易了,硬件描述语言不比软件,它的核心不再算法,而是在于设计思想,加速硬件.在进 ...
- 使用font-size:0去掉inline-block元素之间的空隙
现代浏览器的最新版都支持inline-block,只有该死的ie6.7不支持inline-block,但ie6.7可以通过 display:inline: zoom:1: 来模拟 下面是inline- ...
- css浮动布局,浮动原理,清除(闭合)浮动方法
css浮动 1.什么是浮动:在我们布局的时用到的一种技术,能够方便我们进行布局,通过让元素浮动,我们可以使元素在水平上左右移动,再通过margin属性调整位置 2.浮动的原理:使当前元素脱离普通流,相 ...
- 音频特征提取——librosa工具包使用
作者:桂. 时间:2017-05-06 11:20:47 链接:http://www.cnblogs.com/xingshansi/p/6816308.html 前言 本文主要记录librosa工具 ...
- poj1797 Heavy Transportation Dijkstra算法的简单应用
题目链接:http://poj.org/problem?id=1797 题目就是求所有可达路径的其中的最小值边权的最大值 即对于每一条能够到达的路径,其必然有其最小的承载(其实也就是他们自身的最大的承 ...