ImportError:使用python代码安装后,没有名为<>的模块

时间:2018-10-09 10:05:22

标签: python

假设我的Python中没有安装pandas和numpy,那么成功安装模块后如何刷新终端。

我尝试使用install.py中的代码安装这2个模块:

try:
    import pandas as pd
except ImportError:
    from pip._internal import main as pip
    pip(['install', '--user', 'pandas'])

try:
    import numpy as np,pandas as pd
except ImportError:
    from pip._internal import main as pip
    pip(['install', '--user', 'numpy'])

print "Dependencies installed successfully"

然后将其导入到我的combined.py中,然后导入pandasnumpy

from install import *
import pandas as pd
import numpy as np

安装成功,但之后发生此错误:

import pandas as pd
ImportError: No module named pandas

当我尝试运行它时,当然会安装pandas和numpy,它没有显示错误,我认为终端无法识别所安装的模块。有解决方案吗?

1 个答案:

答案 0 :(得分:0)

我的猜测是,当您第一次运行它时,解释器不会重新扫描模块,因此已安装了软件包,但是解释器并不知道它。您必须重新启动解释器。也许重新加载sys.path可以完成任务-参见How to refresh sys.path?

import importlib, site
importlib.reload(site)

尽管reload被拒绝是有充分理由的,也许更简单的方法是重新启动解释器-或者,尽管开始变脏,直接将新的pandas和numpy dirs添加到sys.path