我的问题与网络上现有的问题没有什么不同。我来详细强调一下。我有this代码,可以通过读取指定的.txt文件来进行打印。我打算像以前一样建造它。我的setup.py应该可以完成这项工作。setup.py的内容是here
如你所见,在我的上述两个文件中,我没有任何与tkinter相关的包。我在终端中做了python setup.py build
,它执行得很好。但不能将我的实际代码用于windows命令脚本
build\\exe.win-amd64-3.5\\draw_precision_recall_curve.exe D:\dataset\Fire_Smoke\Train\filelist.txt
pause
它抛出这样的轨迹:
Traceback (most recent call last):
File "C:\python354\lib\site-packages\cx_Freeze\initscripts\__startup__.py", line 14, in run
module.run()
File "C:\python354\lib\site-packages\cx_Freeze\initscripts\Console.py", line 26, in run
exec(code, m.__dict__)
File "draw_precision_recall_curve.py", line 3, in <module>
import matplotlib.pyplot as plt
File "C:\python354\lib\site-packages\matplotlib\pyplot.py", line 115, in <module>
_backend_mod, new_figure_manager, draw_if_interactive, _show = pylab_setup()
File "C:\python354\lib\site-packages\matplotlib\backends\__init__.py", line 62, in pylab_setup
[backend_name], 0)
File "C:\python354\lib\site-packages\matplotlib\backends\backend_tkagg.py", line 4, in <module>
from . import tkagg # Paint image to Tk photo blitter extension.
File "C:\python354\lib\site-packages\matplotlib\backends\tkagg.py", line 5, in <module>
from six.moves import tkinter as Tk
File "C:\python354\lib\site-packages\six.py", line 92, in __get__
result = self._resolve()
File "C:\python354\lib\site-packages\six.py", line 115, in _resolve
return _import_module(self.mod)
File "C:\python354\lib\site-packages\six.py", line 82, in _import_module
__import__(name)
ImportError: No module named 'tkinter'
我没有办法解决这个问题,看看这里和那里的相关职位。 感谢您的帮助
您可能没有使用
tkinter
,但是您正在使用matplotlib
,并且它使用tkinter
实际上,
matplotlib
给你a choice of backends。但是IIRC,默认值是tkinter
(或者可能是TkAgg
,它使用tkinter
),如果您没有安装可选的Win32本机后端,并且总是在非Mac Unix上所以:
matplotlib
非图形化方式(例如,生成要保存的文件),请显式指定一个非交互式后端李>tkinter
,要么选择一个不同的交互后端,并在你的应用程序中绑定李>例如,假设您只想生成一堆图形作为PNG文件。您可以使用
AGG
非交互式后端,而不是通过默认的TkAgg
后端执行此操作,如下所示:相关问题 更多 >
编程相关推荐