enumerate

enumerate()說明

  • enumerate()是python的內置函數
  • enumerate在字典上是枚舉、列舉的意思
  • 對於一個可迭代的(iterable)/可遍歷的對象(如列表、字符串),enumerate將其組成一個索引序列,利用它可以同時獲得索引和值
  • enumerate多用於在for循環中得到計數
  • 例如對於一個seq,得到:

    (0, seq[0]), (1, seq[1]), (2, seq[2])
    • 1
  • enumerate()返回的是一個enumerate對象,例如: 
    這裏寫圖片描述

enumerate()使用

  • 如果對一個列表,既要遍歷索引又要遍歷元素時,首先可以這樣寫:
list1 = ["這", "是", "一個", "測試"]
for i in range (len(list1)):
    print i ,list1[i]
  • 1
  • 2
  • 3
  • 上述方法有些累贅,利用enumerate()會更加直接和優美:
list1 = ["這", "是", "一個", "測試"]
for index, item in enumerate(list1):
    print index, item
>>>
012 一個
3 測試
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • enumerate還可以接收第二個參數,用於指定索引起始值,如:
list1 = ["這", "是", "一個", "測試"]
for index, item in enumerate(list1, 1):
    print index, item
>>>
123 一個
4 測試
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

補充

如果要統計文件的行數,可以這樣寫:

count = len(open(filepath, 'r').readlines())
  • 1

這種方法簡單,但是可能比較慢,當文件比較大時甚至不能工作。

可以利用enumerate():

count = 0
for index, line in enumerate(open(filepath,'r')): 
    count += 1
  • 1
  • 2
  • 3
版權聲明:本文爲博主 http://blog.csdn.net/churximi 原創文章,未經允許不得轉載,謝謝。 http://blog.csdn.net/churximi/article/details/51648388
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章