尽管已安装,但无法在.py脚本中导入plotly.express

时间:2020-10-02 17:52:53

标签: python python-3.x pip plotly windows-subsystem-for-linux

在将其标记为重复之前,我已经为此花了很长时间,并尝试了我在网上找到的所有故障排除选项。希望外面有人知道发生了什么事。

当我尝试执行plotly.express导入时,它失败并显示以下错误:

File "/mnt/e/Backup/facebook/plotly.py", line 2, in <module>
    import plotly.express as px
ModuleNotFoundError: No module named 'plotly.express'; 'plotly' is not a package

如果我尝试import plotly,则不会出现任何错误,但是无法使用plotly.express。

我所看到的针对该错误的修复程序全部表明未完全安装并通过pip进行了安装。 运行pip3 list显示已安装plotly。

ahren@AhrBeast:~$ pip3 list | grep plotly
plotly                 4.11.0              
plotly-express         0.4.1  

从终端导入plotly.express可以正常工作:

ahren@AhrBeast:~$ python3
Python 3.8.2 (default, Jul 16 2020, 14:00:26) 
[GCC 9.3.0] on linux
>>> import plotly.express as px
>>> px.data.iris()
     sepal_length  sepal_width  petal_length  petal_width    species  species_id
0             5.1          3.5           1.4          0.2     setosa           1
1             4.9          3.0           1.4          0.2     setosa           1
...

由于plotly.express在终端上运行,我认为VSCode可能在与终端不同的环境中运行我的代码,但事实并非如此。

#!/usr/bin/env python3
import sys
print(sys.executable)

结果:/usr/bin/python3 在终端上也是如此

>>> import sys
>>> print(sys.executable)
/usr/bin/python3

最后,我尝试设置Jupyter笔记本,并在其中进行plotly.express(通过Anaoconda在Windows上使用不同的环境),但是需要能够在我的.py脚本中本机使用而不是在笔记本中。

我不确定目前还可以尝试什么,所以如果有人有任何值得赞赏的指针。

1 个答案:

答案 0 :(得分:0)

您的脚本名为plotly.py。运行脚本时,Python将其目录添加到sys.path,因此import plotly导入脚本。没有报告错误,但是它导入了错误的plotly

import plotly.expresssys.path中搜索plotly,找到脚本,尝试导入plotly.express,但失败。

最重要的是:重命名脚本,记住不要给脚本命名与现有模块和软件包相同的名称。例如,切勿命名脚本email.pytest.py