2016-09-29 158 views
-1

<enumerate object at 0x000000000302E2D0>是什麼意思?Python中枚舉的意思是什麼?

>>> my_list = ['apple', 'banana', 'grapes', 'pear']
>>> enumerate(my_list)
<enumerate object at 0x000000000302E2D0>

我嘗試谷歌仍然不明白爲什麼我們有<enumerate object at 0x000000000302E2D0>。你能幫我解決這個問題嗎?
謝謝。

+0

與[此問題](http://stackoverflow.com/q/24260582/1639625)相關,如果不是確切的重複, –

回答

1

enumerate.__doc__

enumerate(iterable[, start]) -> iterator for index, value of iterable 

Return an enumerate object. iterable must be another object that supports 
iteration. The enumerate object yields pairs containing a count (from 
start, which defaults to zero) and a value yielded by the iterable argument. 
enumerate is useful for obtaining an indexed list: 
    (0, seq[0]), (1, seq[1]), (2, seq[2]), ... 
2

它返回一個枚舉對象,這是一個迭代。它並沒有實際向您顯示它包含的內容,除非您明確提出要求。一種方法是強制它成爲一個列表。

>>> my_list = ['apple', 'banana', 'grapes', 'pear'] 
>>> a = enumerate(my_list) 
>>> a 
<enumerate at 0x7ffff27d0630> 
>>> list(a) 
[(0, 'apple'), (1, 'banana'), (2, 'grapes'), (3, 'pear')] 

您還可以迭代for循環中的枚舉對象。

查看this question瞭解更多關於迭代器的信息。