我正在尝试python 3中的线程函数以使我自己的ping测试应用程序/日志正常工作,所以我遵循YouTube教程
当我启动 python 3 解释器并运行:
>>> import threading
>>> print_lock = threading.Lock()
它正确返回
>>> print_lock
<_thread.lock object at 0x042093C8>
但是当我在脚本中使用这段代码并尝试将其运行为
python scriptName.py
我收到一个错误,说属性 Lock() 不存在
AttributeError: 'module' object has no attribute 'Lock'
这怎么可能?我已经验证了什么线程。Lock() 在运行 python 解释器时返回,为什么当我尝试在脚本中运行它时无法识别它,我怎样才能让它运行?
您是否碰巧将您的模块(或工作目录中的另一个模块)命名为threading.py
?它会在内置threading
之前导入,从而导致这个确切的问题。
尝试跑步:
print(threading.__file__)
在你的模块中,我怀疑你会发现它不是内置的 Python。