threading.Lock()无法通过脚本工作

时间:2016-01-28 01:01:51

标签: multithreading python-3.x

我正在尝试使用python 3中的线程功能来让我自己的ping测试应用/日志工作,所以即时关注youtube tutorial

当我启动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'

这怎么可能?我已经验证了在运行python解释器时threading.Lock()返回的内容,当我尝试在脚本中运行它时,为什么它没有被识别?我怎样才能让它运行?

1 个答案:

答案 0 :(得分:1)

您是否碰巧为您的模块(或工作目录中的其他模块)命名threading.py?它会在内置threading之前导入,导致这个问题。

尝试跑步:

print(threading.__file__)

在你的模块中,我怀疑你会发现它不是内置的Python。