Python 名称错误:全局名称'_';没有定义

Python 名称错误:全局名称'_';没有定义,python,python-2.7,nameerror,Python,Python 2.7,Nameerror,守则: if (query_id, _) in hashtable[bucket]: 我本以为这会起作用,但结果却出现了以下错误: NameError:未定义全局名称“\u1” hastable[bucket]是一个配对列表,如果这很重要的话(我对此表示怀疑)。有什么想法吗?y中的x不是魔法;它基本上与y相同。uuu包含\uuuux)。因此,中的无法使用占位符进行搜索;左参数已被完全计算。相反,使用 if any(query_id == qid for (qid, _) in hashtabl

守则:

if (query_id, _) in hashtable[bucket]:
我本以为这会起作用,但结果却出现了以下错误:

NameError:未定义全局名称“\u1”


hastable[bucket]
是一个配对列表,如果这很重要的话(我对此表示怀疑)。有什么想法吗?

y中的
x
不是魔法;它基本上与
y相同。uuu包含\uuuux)
。因此,中的
无法使用占位符进行搜索;左参数已被完全计算。相反,使用

if any(query_id == qid for (qid, _) in hashtable[bucket]):

y中的
x
不是魔法;它基本上与
y相同。uuu包含\uuuux)
。因此,
中的
无法使用占位符进行搜索;左参数已被完全计算。相反,使用

if any(query_id == qid for (qid, _) in hashtable[bucket]):
在for循环(与链接的循环类似)中,定义了名为
\uu
的变量。据我所知,你没有给它下定义。您希望
\uu
代表什么

\u
在Python中只是一个普通的变量名,但在交互式解释器中(它代表最后一个变量输出)除外。

在for循环中(与您链接的循环类似),定义了名为
\u
的变量。据我所知,你没有给它下定义。您希望
\uu
代表什么


在Python中只是一个普通的变量名,除了在交互式解释器中(它代表最后一个变量输出)。

在您使用它的概念中,它只存储最后一个输出变量。 我同意:

if query_id in (x[0] for x in hashtable[bucket]):

在您使用的概念中,它只存储最后一个输出变量。 我同意:

if query_id in (x[0] for x in hashtable[bucket]):

你只是在检查
query\u id
?我对第一个成员是
query\u id
的配对感兴趣,我不担心第二个成员@padraiccnningham。然后按照建议在for循环中解包就是你想要的,或者循环并使用
如果sub[0]==..
Yes@padraiccnningham,这也会起作用,非常感谢。哦,为什么要投反对票?我在询问之前搜索了一下,但我想不出来!你只是在检查
query\u id
?我对第一个成员是
query\u id
的配对感兴趣,我不担心第二个成员@padraiccnningham。然后按照建议在for循环中解包就是你想要的,或者循环并使用
如果sub[0]==..
Yes@padraiccnningham,这也会起作用,非常感谢。哦,为什么要投反对票?我在询问之前搜索了一下,但我想不出来!这应该是马蒂亚斯的评论。我期待我链接到的第一个答案的第三项。此外,我希望
[tag:Python]
会自动定义它。很抱歉,我更新了它,希望这是一个更好的答案。这应该是Matthias的评论。我期待我链接到的第一个答案的第三项。此外,我希望
[tag:Python]
会自动定义它。很抱歉,我更新了它,希望这是一个更好的答案。好的,我明白了我的代码失败的原因。你能解释一下你做了什么吗?:)此外,你认为我的问题得了-1分是不是很糟糕/
any
计算其参数的每个元素。当第一项与
query\u id
匹配时,形成其参数的生成器表达式将产生True。好的,这起作用了,我理解了代码失败的原因。你能解释一下你做了什么吗?:)此外,你认为我的问题得了-1分是不是很糟糕/
any
计算其参数的每个元素。如果第一项与
query\u id
匹配,则构成其参数的生成器表达式将生成True。