py2exe 2.7 将引用matplotlib库的程序转成exe的setup.py 的编写

来源:互联网 发布:量子网络代替互联网 编辑:程序博客网 时间:2024/05/17 00:08

      最近在研究使用py2exe将py文件转成exe,在没有使用第三方类库时很顺利,但是引入第三方库的时候就出现了喝多问题,下面是我多次尝试,然后不断的百度和实践摸索最终得出的setup.py的一些必要内容:

   

# !/usr/bin/env python# -*- coding:utf8 -*-"""@file: setup@author: x00347195@time: 2016/5/17 11:31"""from distutils.core import setupimport py2exeimport glob#参数项:包括引用的库和不引用的dllopts = {    'py2exe': {        "includes": ["matplotlib.backends.backend_tkagg","FileDialog"],        'dll_excludes': ["MSVCP90.dll"]    }}#matplotlib需要用到很多数据资源,这些要用data_files来引入data_files = [              (r'mpl-data', glob.glob(r'F:\Python\Lib\site-packages\matplotlib\mpl-data\*.*')),              (r'mpl-data', [r'F:\Python\Lib\site-packages\matplotlib\mpl-data\matplotlibrc']),              (r'mpl-data\images', glob.glob(r'F:\Python\Lib\site-packages\matplotlib\mpl-data\images\*.*')),              (r'mpl-data\fonts', glob.glob(r'F:\Python\Lib\site-packages\matplotlib\mpl-data\fonts\*.*')),              (r'mpl-data\stylelib', glob.glob(r'F:\Python\Lib\site-packages\matplotlib\mpl-data\stylelib\*.*'))]#最终的setup项引用了以上两项setup(    # options=options,    windows=[{"script": "PythonApplication1.py"}],#这个窗口程序属性是window,如果是控制台程序则是console=[{"文件名"}]    data_files=data_files,#引用数据资源    version='Goku 1.0',    name='sqxu',    options=opts,#p引用的y2exe的设置)