“没有名为math的模块”(和其他模块)错误与Docker解释器,但执行和断点工作

时间:2018-04-16 18:20:42

标签: docker pycharm

我完全按照PyCharm教程配置了Docker解释器:https://www.jetbrains.com/help/pycharm/using-docker-as-a-remote-interpreter-1.html,然后等待索引和骨架提取完成。

我尝试执行该文件,甚至设置断点。这一切都奏效了。

但是,import math行显示错误No module named math。自动填充不起作用。更奇怪的是某些内置库导入,但有些则没有。

内置库导入:mathjsonurllibiocsv,{ {1}},numberscurses

执行导入的内置库:loggingosretime

注意:导入测试并非详尽无遗。其他内置库可能导入也可能不导入。

我正在使用PyCharm Professional 2018.1。还测试了版本2017.3,并且出现了相同的错误(仅测试argparse)。如果我使用我的本地Python解释器,导入和自动完成工作就可以了。

我使用import math作为远程Docker解释器,python:latest作为解释器路径。目前,这适用于python。如果我使用Python 3.6.5启动解释器,然后尝试docker run -it python:latest,那么一切正常:

import math

我有JetBrains filed a bug,但由于这是该功能的基本功能,可能我做错了。

1 个答案:

答案 0 :(得分:2)

4月27日,JetBrains confirmed it as a bug with Docker 18.03.1-ce stable onwards

建议的解决方法是将Docker降级为 18.03.0稳定版本。

我认为手动将.py源(在容器内的/usr/local/lib/python3.6中)复制到本地解释器路径可能会自动完成并且文档也可以正常工作(尽管依赖于非Python代码的库)不行。