在一个项目中,我需要从Python3.6中的线程模块导入RLock。 但是无论我做什么,我仍然会遇到相同的错误:
from threading import RLock
ImportError: cannot import name 'RLock'
每次我要导入此模块(线程)时,我都会遇到此错误。
我已经升级了点子,但不起作用。
如果有人对我有解决方案,我将非常感激。
此错误与我所在的文件夹无关。我注意到在Python2.7中运行命令时:
import threading
有效。 但是,如果我在Python3.6下运行此命令,它将无法正常工作,但仍会出现相同的输出错误。
我检查了一下,只有的threading.py文件是:
/snap/core/6673/usr/lib/python3.5/threading.py
/snap/core/6818/usr/lib/python3.5/threading.py
/snap/core/6964/usr/lib/python3.5/threading.py
/snap/core18/941/usr/lib/python3.6/threading.py
/snap/core18/970/usr/lib/python3.6/threading.py
/snap/docker/384/usr/lib/python2.7/threading.py
/snap/docker/384/usr/lib/python3.5/threading.py
/snap/gnome-3-26-1604/74/usr/lib/python3.5/threading.py
/snap/gnome-3-26-1604/82/usr/lib/python3.5/threading.py
/snap/gnome-3-28-1804/36/usr/lib/python3.6/threading.py
/snap/gnome-3-28-1804/40/usr/lib/python3.6/threading.py
/snap/libxml2/69/usr/lib/python2.7/threading.py
/usr/lib/python2.7/threading.py
/usr/lib/python2.7/threading.pyc
/usr/lib/python3.6/threading.py
/usr/lib/python3.7/threading.py
答案 0 :(得分:1)
我认为您有一个称为线程的Python文件。您应该重命名文件,导入将起作用。我刚刚使用Python3.6.6进行了尝试,它可以按预期工作。
代码
from threading import RLock
rl = RLock()
print(rl)
输出:
>>>python other.py
<_RLock owner=None count=0>
答案 1 :(得分:0)
我通过查看完整的错误日志找到了问题的根源(我应该在这里指定,我对此表示歉意)。原来我有一个名为 token.py 的文件。通过重命名,错误消失了。
谢谢您的回答。