Python 內建函式 enumerate

2021-09-23 21:00:19 字數 1021 閱讀 7563

介紹

在解析mysqlbinlog dump出來的binlog的時候學習了乙個函式 --enumerate。官方的定義如下:

def enumerate(collection,n=0):

'generates an indexed series: (0,coll[0]), (1,coll[1]) ...'

i = n

it = iter(collection)

while 1:

yield (i, it.next())

i += 1

n 是索引起始值 比如 enumerate(list,2) 索引是從2 開始。

通常我們需要遍歷序列如 字串,字典,列表,也要遍歷其索引時,我們會使用for 迴圈來解決 

for i in range (0,len(list)):

print i ,list[i]

使用內建enumerrate函式會有更加直接,優美的做法

for idx,name in enumerate(list)):

print idx,name

如何使用該函式

#coding=utf-8

list = ['a', 'b', 'c']

print (list(enumerate(list)))

tuple = ('youzan', 'saas', 'work','mac')

print(list(enumerate(tuple)))

dict =

print(list(enumerate(dict, 2)))

str = 'youzan!'

print(list(enumerate(str, 1)))

執行結果

注意 dict 和str 使用 enmerate 函式的起始值分別從2  1 開始的。

python重寫內建函式 python 內建函式

說明 zip 函式用於將可迭代的物件作為引數,將物件中對應的元素打包成乙個個元組,然後返回由這些元組組成的列表。如果各個迭代器的元素個數不一致,則返回列表長度與最短的物件相同,利用 號操作符,可以將元組解壓為列表。語法 zip iterable1,iterable2,引數 iterable 乙個或多...

python內建函式簡稱 Python內建函式詳解

此文參考python文件,然後結合自己的理解,寫下來,一方面方便自己,讓自己好好學習,順便回憶回憶 另一方面,讓喜歡的盆友也參考一下。經查詢,3.6版本總共有68個內建函式,主要分類如下 數 算 7個 型別轉換 24個 序列操作 8個 物件操作 9個 反射操作 8個 變數操作 2個 互動操作 2個 ...

python內建函式使用 python內建函式使用

eval函式執行python表示式,有返回值 eval 1 2 3 4 5 exec函式執行的是python語句,沒有返回值 exec print 123 將字串型別的 編碼.物件能夠通過exec語句來執行或者eval 進行求值,c只是編譯,不執行 code for i in range 10 pr...