Python中单个下划线“_”variables的用途是什么?
在这个代码中_
之后是什么意思?
if tbh.bag: n = 0 for _ in tbh.bag.atom_set(): n += 1
在Python中有三个主要的常规用途:
- 在交互式解释器会话中保存上次执行的expression式(/语句)的结果。 这个先例是由标准的CPython口译员设定的,其他口译员也纷纷效仿
- 在i18n中翻译查找(例如,请参阅gettext文档),如代码中所示:
raise forms.ValidationError(_("Please enter a correct username"))
- 作为一个通用的“一次性”variables名称来表示部分函数结果被故意忽略,如代码:
label, has_label, _ = text.partition(':')
后两个目的可能会发生冲突,因此有必要避免在任何代码块中使用_
作为一次性variables,这也是为了i18n翻译(许多人更喜欢双下划线__
作为他们的一次性variables) 。
这只是一个variables名,在Python中使用_
作为一次性variables是常规的。 它只是表明循环variables没有被实际使用。