我使用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