国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python enumerate索引迭代代碼解析

2020-02-22 22:54:57
字體:
來源:轉載
供稿:網友

本文研究的主要是Python enumerate索引迭代的問題,具體介紹如下。

索引迭代

Python中,迭代永遠是取出元素本身,而非元素的索引。

對于有序集合,元素確實是有索引的。有的時候,我們確實想在 for 循環中拿到索引,怎么辦?

方法是使用 enumerate() 函數:

>>> L = ['Adam', 'Lisa', 'Bart', 'Paul']>>> for index, name in enumerate(L):... print index, '-', name... 0 - Adam1 - Lisa2 - Bart3 - Paul

使用 enumerate() 函數,我們可以在for循環中同時綁定索引index和元素name。但是,這不是 enumerate() 的特殊語法。實際上,enumerate() 函數把:

['Adam', 'Lisa', 'Bart', 'Paul']

變成了類似:

[(0, 'Adam'), (1, 'Lisa'), (2, 'Bart'), (3, 'Paul')]

因此,迭代的每一個元素實際上是一個tuple:

for t in enumerate(L):index = t[0]name = t[1]print index, '-', name

如果我們知道每個tuple元素都包含兩個元素,for循環又可以進一步簡寫為:

for index, name in enumerate(L):print index, '-', name

這樣不但代碼更簡單,而且還少了兩條賦值語句。

可見,索引迭代也不是真的按索引訪問,而是由 enumerate() 函數自動把每個元素變成 (index, element) 這樣的tuple,再迭代,就同時獲得了索引和元素本身。

總結

以上就是本文關于Python enumerate索引迭代代碼解析的全部內容,希望對大家有所幫助。感興趣的朋友可以繼續參閱本站其他相關專題,如有不足之處,歡迎留言指出。感謝朋友們對本站的支持!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 班玛县| 敦煌市| 赤城县| 绥滨县| 建湖县| 云南省| 肇州县| 玛纳斯县| 成武县| 西吉县| 无极县| 海兴县| 平阳县| 区。| 绍兴市| 曲松县| 广丰县| 彰化市| 江阴市| 雅江县| 新绛县| 浦县| 同心县| 万荣县| 武山县| 沈阳市| 海口市| 文山县| 越西县| 扬中市| 维西| 乐至县| 长沙县| 新郑市| 色达县| 清涧县| 永平县| 卢氏县| 寻乌县| 信阳市| 正蓝旗|