[过去两天我一直在尝试找出为什么无法从BaseProxy
python包(其为Python标准库的一部分)导入multiprocessing类的原因。
Cannot find reference 'BaseProxy' in managers.pypi
(Edit:这是一个PyCharm IDE检查器语句)
BaseProxy
应该使用类似from multiprocessing.managers import BaseProxy
的名称导入,除非我完全错过了商标。我可以使用同一行导入BaseManager
类。
我正在使用的Anaconda环境的python版本是3.7.5,我什至进行了全新安装的Anaconda,因为我认为我的安装可能已损坏。
我已经尝试过pip install multiprocessing --upgrade
;但是,命令行向我抛出此SyntaxError:
print 'Macros:'
^
SyntaxError: Missing parentheses in call to 'print'. Did you mean print('Macros:')?
因此,我相信某些发行版本的python版本被搞砸了,因为print var
适用于早期版本的python。
最后,我尝试在在线Python接口(例如BaseProxy
)上导入Repl (Python = 3.7.4),但成功。
编辑:感谢@ dr.me123,我能够确定问题出在我的IDE,PyCharm和/或我的软件包设置上,因为我能够用另一个IDE(Spyder导入BaseProxy
)在新脚本中使用相同的解释器。
Edit:看来我愚蠢地将上面提到的PyCharm检查器错误与actual导入错误相关联,因为使用BaseProxy的代码部分没有按预期方式运行。创建一个非常简单的测试后,我发现BaseProxy
一直成功导入。但是,某些地方可能还是有些混乱,因为我从其他real导入错误中看到了from __future__ import
语句的追溯–更不用说上面提到的旧print var
语句错误了。
尝试使用另一个软件。 repl.it可能无法安装软件包