我使用Tkinter的Python和整个下面的代码来:枚举是什么意思?
for row_number, row in enumerate(cursor):
我想知道是否有人能说明什么在这方面列举的手段?
我使用Tkinter的Python和整个下面的代码来:枚举是什么意思?
for row_number, row in enumerate(cursor):
我想知道是否有人能说明什么在这方面列举的手段?
enumerate()
function向迭代器添加计数器。
因此,对于cursor
中的每个元素,使用(counter, element)
生成元组; for
循环分别将其绑定到row_number
和row
。
演示:
>>> elements = ('foo', 'bar', 'baz')
>>> for elem in elements:
... print elem
...
foo
bar
baz
>>> for count, elem in enumerate(elements):
... print count, elem
...
0 foo
1 bar
2 baz
默认情况下,enumerate()
开始计数在0
但如果你给它一个第二个整数参数,它会从这个数字,而不是开始:
>>> for count, elem in enumerate(elements, 42):
... print count, elem
...
42 foo
43 bar
44 baz
你的演示是有用,但是你能解释一下情况吗?[i为i,x在枚举(wl)中,如果x ==“gonna”] –
@HemantYadav:这只是*列表理解的一部分*(尽管它有一个错误,那第二个逗号可能不应该在那里),并且不特定于'enumerate()'。请参阅[Python for-in循环前面有一个变量](// stackoverflow.com/q/6475314);它为'wl'中的所有字符串'gonna''构建一个索引列表。 –
这是一个内置发电机功能,见http://docs.python.org/2/library/functions.html#enumerate。
总之,它产生的迭代器的元素,以及一个索引号:
for item in enumerate(["a", "b", "c"]):
print item
打印
(0, "a")
(1, "b")
(2, "c")
,如果你要循环的迭代符这是有帮助的,也希望有一个可用的索引计数器。如果你想让计数器从其他值开始(通常为1),你可以把它作为第二个参数给enumerate
。
我想你在你的第一行代码中缺少一个']。 – elParaguayo
如果你添加第二个变量到'item',那么你可以删除括号:D – Abdelouahab
的枚举功能的工作原理如下:
doc = """I like movie. But I don't like the cast. The story is very nice"""
doc1 = doc.split('.')
for i in enumerate(doc1):
print(i)
输出是
(0, 'I like movie')
(1, " But I don't like the cast")
(2, ' The story is very nice')
http://docs.python.org/2/library/functions.html#enumerate – ndpu