繁体   English   中英

我如何解决NameError:在Python 3.3中没有定义名称'threading'

[英]How do I solve NameError: name 'threading' is not defined in python 3.3

我有以下程序,没有别的,python 3.3。 当我运行它。 我明白了

NameError: name 'threading' is not defined

我用谷歌搜索,但没有给出的答案解释我的情况。 任何线索? 谢谢!

#!/usr/bin/python

import Utilities
import os
import sys
import getopt
import time
from queue import Queue
from threading import Thread

_db_lock=threading.Lock()

我也试过了

_db_lock=threading.Lock

您必须导入线程。 将以下内容添加到文件的开头:

import threading

错误源自该行:

_db_lock=threading.Lock()

那是因为您使用from threading import Thread ,但是您从未真正将threading引入本地命名空间。 到目前为止只有Thread (尽管从技术上讲,导入就在那里,但它不在命名空间中,你不能使用它)。

如果出于某种原因,您希望保持threading不会“污染”您的命名空间,请以与导入Thread相同的方式导入Lock ,如下所示:

from threading import Thread, Lock
_db_lock = Lock()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM