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

首頁 > 編程 > Python > 正文

python enumerate函數的使用方法總結

2020-02-16 10:43:51
字體:
來源:轉載
供稿:網友

enumerate函數用于遍歷序列中的元素以及它們的下標。

enumerate函數說明:

enumerate()是python的內置函數

enumerate在字典上是枚舉、列舉的意思

函數原型:enumerate(sequence, [start=0])

功能:將可循環序列sequence以start開始分別列出序列數據和數據下標

即對一個可遍歷的數據對象(如列表、元組或字符串),enumerate會將該數據對象組合為一個索引序列,同時列出數據和數據下標。

舉例說明:

存在一個sequence,對其使用enumerate將會得到如下結果:

start    sequence[0]start+1  sequence[1]start+2  sequence[2]......

適用版本:

    Python2.3+ Python2.x

注意:在python2.6以后新增了start參數

英文解釋:

Return an enumerate object. sequence must be a sequence, an iterator, or some other object which supports iteration. The next() method of the iterator returned by enumerate() returns a tuple containing a count (from start which defaults to 0) and the values obtained from iterating over sequence。

代碼實例:

enumerate參數為可遍歷的變量,如 字符串,列表等; 返回值為enumerate類。

import strings = string.ascii_lowercasee = enumerate(s)print sprint list(e)

輸出為:

abcdefghij[(0, 'a'), (1, 'b'), (2, 'c'), (3, 'd'), (4, 'e'), (5, 'f'), (6, 'g'), (7, 'h'), (8, 'i'), (9, 'j')]

在同時需要index和value值的時候可以使用 enumerate。

該實例中,line 是個 string 包含 0 和 1,要把1都找出來:

def xread_line(line): return((idx,int(val)) for idx, val in enumerate(line) if val != '0') print read_line('0001110101')print list(xread_line('0001110101'))

如果對一個列表,既要遍歷索引又要遍歷元素時,首先可以這樣寫:

list1 = ["這", "是", "一個", "測試"]for i in range (len(list1)):  print i ,list1[i]

上述方法有些累贅,利用enumerate()會更加直接和優美:

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 = 0for index, line in enumerate(open(filepath,'r')):   count += 1            
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 山丹县| 平乐县| 通许县| 盐边县| 富锦市| 尉犁县| 武宁县| 灯塔市| 清镇市| 蒙山县| 安阳县| 措美县| 抚顺县| 久治县| 长丰县| 平和县| 华亭县| 万州区| 仁寿县| 苍山县| 铜陵市| 临西县| 嘉黎县| 嘉祥县| 中牟县| 庄河市| 兖州市| 兴海县| 佛山市| 晴隆县| 连平县| 阿坝| 那坡县| 洛川县| 伊宁县| 三亚市| 鸡泽县| 庆云县| 达孜县| 康平县| 泗水县|