Python使用cx_Freeze库生成msi格式安装文件的方法

yipeiwu_com6年前Python基础

本文实例讲述了Python使用cx_Freeze库生成msi格式安装文件的方法。分享给大家供大家参考,具体如下:

①.需要在目录下面创建一个文件 。setup.py

②.写入代码:

import sys
from cx_Freeze import setup, Executable
import os
os.environ['TCL_LIBRARY'] = r'C:\Python36-32\tcl\tcl8.6'
os.environ['TK_LIBRARY'] = r'C:\Python36-32\tcl\tk8.6'
include_files=[
  r'C:\Python36-32\DLLs\tcl86t.dll',
  r'C:\Python36-32\DLLs\tk86t.dll'
]
# Dependencies are automatically detected, but it might need fine tuning.
build_exe_options = {"packages": ["os"], "excludes": ["tkinter"],"include_files":include_files}
# GUI applications require a different base on Windows (the default is for a
# console application).
base = None
if sys.platform == "win32":
  base = "Win32GUI"
setup(name="video1",#打完包后取的名字
   version="2.1",#版本
   description="aaaaa",#描述
   options={"build_exe": build_exe_options},
   executables=[Executable("video.py", base=base)])

③.命令:

python setup.py bdist_msi   生成安装包以及直接运行的exe文件

python setup.py build       生成exe可执行程序

注:此处使用的cx_Freeze库可使用pip命令安装:

pip install cx_Freeze

此外,若使用Python2.7环境下安装时提示Python error: Microsoft Visual C++ 9.0 is required ,则需要安装一个Micorsoft Visual C++ Compiler for Python 2.7 的包,即可解决问题。

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总

希望本文所述对大家Python程序设计有所帮助。

相关文章

Python调用SQLPlus来操作和解析Oracle数据库的方法

先来看一个简单的利用python调用sqlplus来输出结果的例子: import os import sys from subprocess import Popen, PIPE...

python+matplotlib实现动态绘制图片实例代码(交互式绘图)

python+matplotlib实现动态绘制图片实例代码(交互式绘图)

本文研究的主要是python+matplotlib实现动态绘制图片(交互式绘图)的相关内容,具体介绍和实现代码如下所示。   最近在研究动态障碍物避障算法,在Python语言进行算法仿真...

Tensorflow的可视化工具Tensorboard的初步使用详解

Tensorflow的可视化工具Tensorboard的初步使用详解

当使用Tensorflow训练大量深层的神经网络时,我们希望去跟踪神经网络的整个训练过程中的信息,比如迭代的过程中每一层参数是如何变化与分布的,比如每次循环参数更新后模型在测试集与训练集...

Python列表的切片实例讲解

Python列表的切片实例讲解

之前讲过python列表的基本操作,我们今天继续讲解列表中的切片等操作,列表的切片就是根据索引取列表中的数据,切片并不会改变原列表。接下来跟着小编一起学习python列表的其他操作吧。...

python 实现在Excel末尾增加新行

实例如下所: import os import xlrd import xlwt from xlutils.copy import copy def excelwrite(L=No...