Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/319.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Python2.7和easygui 0.95中使用py2exe时出错_Python_Py2exe - Fatal编程技术网

在Python2.7和easygui 0.95中使用py2exe时出错

在Python2.7和easygui 0.95中使用py2exe时出错,python,py2exe,Python,Py2exe,我正在将我的python 2.7.6代码(仅使用easygui.py(v0.95))转换为.exe,但在使用 python setup.py py2exe 我的setup.py from distutils.core import setup import py2exe import easygui import matplotlib.pyplot as plt import os setup(console=["DataAnalysis-v2.5.py"]) 我的代码的顶部行 impor

我正在将我的python 2.7.6代码(仅使用easygui.py(v0.95))转换为.exe,但在使用

python setup.py py2exe
我的setup.py

from distutils.core import setup
import py2exe
import easygui
import matplotlib.pyplot as plt
import os

setup(console=["DataAnalysis-v2.5.py"])
我的代码的顶部行

import os
import easygui
import matplotlib.pyplot as plt
*************更新******************************** 因此,我在numpy和matplot lib中遇到一个错误。我从portable python的sitepackages部分复制了numpy、matplotlib和dateutil,并将其粘贴到python 27的lib site packages部分。出于某种原因,numpy使exe快速关闭并崩溃

下面是当我点击exe时在cmd中显示的内容

Traceback (most recent call last):
  File "DataAnalysis-v2.5.py", line 3, in <module>
  File "matplotlib\__init__.pyc", line 838, in <module>
  File "matplotlib\__init__.pyc", line 749, in rc_params
  File "matplotlib\__init__.pyc", line 664, in matplotlib_fname
  File "matplotlib\__init__.pyc", line 292, in wrapper
  File "matplotlib\__init__.pyc", line 585, in _get_data_path_cached
  File "matplotlib\__init__.pyc", line 581, in _get_data_path
RuntimeError: Could not find the matplotlib data files
回溯(最近一次呼叫最后一次):
文件“DataAnalysis-v2.5.py”,第3行,在
文件“matplotlib\\ uuuuu init\ uuuuu.pyc”,第838行,在
文件“matplotlib\\ uuuuu init\ uuuuu.pyc”,第749行,在rc_参数中
matplotlib\ uuuu init\ uuuuu.pyc文件,第664行,matplotlib\ ufname
包装器中第292行的文件“matplotlib\\ uuuuuu init\ uuuuuu.pyc”
文件“matplotlib\\ uuuuuu init\ uuuuuuuuu.pyc”,第585行,位于缓存的“获取数据”路径中
文件“matplotlib\\ uuuuu init\ uuuuu.pyc”,第581行,在\ u get\ u data\ u路径中
运行时错误:找不到matplotlib数据文件

问题似乎是您错误地传递了console关键字。应该向它传递一个要编译的脚本列表。因为您传递了一个字符串,它是可编辑的,但不是列表,py2exe正在尝试从输入字符串中的每个字母创建脚本

for c in "Data Analysis-v2.4.py":
  # D
  # a
  # t
  # ...

for fname in ["Data Analysis-v2.4.py"]:
  # produces "Data Analysis-v2.4.py".

setup.py文件的内容将有助于确定导致此错误的原因。脚本的名称是什么?它是
Data Analysis-v2.4.py
(应避免在.py文件的名称中使用空格)或者它是
mycode.py
?另外,这里的文档中要注意:控制台应该是一个列表,而不是字符串值。
console=[“Data Analysis-v2.4.py”]
。正如下面答案的注释中已经指出的,请仔细查看py2exe wiki。您需要添加类似于
设置的内容(…data_files=matplotlib.get_py2exe_datafiles(),)
到你的
setup.py
中,找不到matplotlib数据文件的错误应该会消失。另外,请看一看。顺便问一下:你在冻结的应用程序的dist dir中看到文件夹mpl data了吗?好的,我编译了它,但它不起作用。所以我从便携式python中取出numpy、matplot和dateutil库,并将其粘贴到库中python27的文件夹(我需要这些lib来编写代码)。现在我得到了一个缺少的DLL错误。感谢到目前为止的帮助!好的,我下载了DLL,现在我没有收到该错误,它创建了exe。但是当我单击exe时,它会快速关闭。一些关于matplot库的错误。只需将其粘贴到python27的lib文件夹中就可以了?或者有安装matplotlib的方法吗?谢谢!@WaqarKhawaja-此处提供了有关让matplotlib使用py2exe的详细信息:。是的,我刚刚尝试过,但无法使其正常工作。我有matplot v1.2.1,所以我只是尝试使用该代码,直到站点中的数据文件部分结束,但仍然无法正常工作。这是我第一次使用py2exe,因此我不确定如何在setup.py wi中设置格式这就是我现在在那里的东西。