【发布时间】:2021-01-13 09:06:25
【问题描述】:
我的 python 代码包括 tkinter 和 matplotlib。我用 pyinstaller 创建了一个 .exe。当我运行 exe 时,我收到以下消息:
appdata\local\programs\python\python37-32\lib\site-packages\PyInstaller\loader\pyimod03_importers.py:623:
MatplotlibDeprecationWarning: The MATPLOTLIBDATA environment variable
was deprecated in Matplotlib 3.1 and will be removed in 3.3.
exec(bytecode, module.__dict__)
当我使用 Anaconda Prompt 运行它时,会出现消息并且我的界面运行正常。如果我使用 Windows 命令行(或双击)运行它,则会出现消息但没有出现界面。
如果我禁止 matplotlib 导入,则该 exe 也适用于 Windows 命令行。这个问题显然是由 matplotlib 引起的,但我不知道如何解决它。你能帮帮我吗?
谢谢。
使用:Python 3.7.9 Pyinstaller 3.6 Matplotlib 3.2.2
【问题讨论】:
-
我猜它必须与 PATH 或 PYTHON_PATH 相关。也许在 Anaconda 和 Windows 命令行中尝试
pip show matplotlib。我猜它们不同是因为 Anaconda 有自己的安装路径。 -
感谢您的回答。我没有成功用 Windows 命令行显示路径。如果你是对的,你有解决这个问题的想法吗?
-
您至少应该能够显示路径。在 Anaconda Prompt 和 Windows 设置中尝试
echo $PATH和echo $PYTHON_PATH显示所有环境变量。 -
也许您还应该检查是否可以将您的依赖项捆绑到您的 .exe 文件中。很高兴知道您是如何创建 .exe
-
好的,谢谢您的回答。我们假设路径不同。我用一个简单的命令行
pyinstaller mycode.py创建了我的exe。也许有一些选项可以解决我的问题?
标签: python-3.x windows matplotlib anaconda pyinstaller