首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带有runpy的pyinstaller导入错误

带有runpy的pyinstaller导入错误
EN

Stack Overflow用户
提问于 2017-10-25 11:53:00
回答 1查看 997关注 0票数 2

我有文件import1.py

代码语言:javascript
复制
import os
import runpy
filename = r'C:\pyinstallerTest\test.py'
runpy.run_path(filename)

文件test.py是:

代码语言:javascript
复制
import matplotlib.pyplot as plt
import numpy as np
from astroML import *
from tkinter import *

t = np.arange(0.0, 2.0, 0.01)
s = 1 + np.sin(2*np.pi*t)
plt.plot(t, s)

plt.xlabel('time (s)')
plt.ylabel('voltage (mV)')
plt.title('About as simple as it gets, folks')
plt.grid(True)
plt.savefig(r"C:\pyinstallerTest\test.png")
plt.show()
print('hello world')

我尝试了以下命令,用于从import1.py 1.py创建exe文件

代码语言:javascript
复制
pyinstaller --onefile import1.py

成功地创建了import1.exe文件。但是,当我运行import1.exe文件时,会得到以下错误:

代码语言:javascript
复制
Traceback (most recent call last):
  File "import1.py", line 4, in <module>
  File "runpy.py", line 263, in run_path
  File "runpy.py", line 96, in _run_module_code
  File "runpy.py", line 85, in _run_code
  File "C:\pyinstallerTest\test.py", line 1, in <module>
    import matplotlib.pyplot as plt
ImportError: No module named 'matplotlib'
[1828] Failed to execute script import1

对我来说,这是更多的学习练习,所以我不想在这里寻找其他更好的方法。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-10-25 12:31:08

PyInstaller没有看到matplotlib,所以它在编译时忽略它,因此在运行exe时看不到它。尝试将其添加为隐藏的导入:

代码语言:javascript
复制
pyinstaller --onefile --hidden-import=modulename import1.py

模块名应该是它所在位置的完整路径。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46931743

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档