介紹
在解析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...