enumerate()說明
- enumerate()是python的內置函數
- enumerate在字典上是枚舉、列舉的意思
- 對於一個可迭代的(iterable)/可遍歷的對象(如列表、字符串),enumerate將其組成一個索引序列,利用它可以同時獲得索引和值
- enumerate多用於在for循環中得到計數
-
例如對於一個seq,得到:
-
1 (0, seq[0]), (1, seq[1]), (2, seq[2])
- enumerate()返回的是一個enumerate對象,例如:
enumerate()使用
- 如果對一個列表,既要遍歷索引又要遍歷元素時,首先可以這樣寫:
1 list1 = ["這", "是", "一個", "測試"] 2 for i in range (len(list1)): 3 print i ,list1[i]
list1 = ["這", "是", "一個", "測試"] for index,item in enumerate(list1): print(index,item)
>>>
0 這 1 是 2 一個 3 測試
- enumerate 還可以接收第二個參數,用於指定索引起始值,如:
list1 = ["這", "是", "一個", "測試"] for index, item in enumerate(list1, 1): print index, item >>> 1 這 2 是 3 一個 4 測試
補充
如果要統計文件的行數,可以這樣寫:
count = len(open(filepath, 'r').readlines())
這種方法簡單,但是可能比較慢,當文件比較大時甚至不能工作。
可以利用enumerate():
count = 0 for index, line in enumerate(open(filepath,'r')): count += 1