python zip map

1.zip平行遍歷操作
1 >>> name=('jack','beginman','sony','pcky')
 2 >>> age=(2001,2003,2005,2000)
 3 >>> for a,n in zip(name,age):
 4print a,n
 5 6輸出:
 7 jack 2001
 8 beginman 2003
 9 sony 2005
10 pcky 2000

2.zip構建字典

keys = ['spam','eggs','toast']

vals = [1,3,5]

D3 = dict(zip(keys,vals))
D3 = {'toast': 5, 'eggs': 3, 'spam': 1}


3.列操作

zip()配合*號操作符,可以將已經zip過的列表對象解壓
>>> result
 9 [(1, 4), (2, 5), (3, 6)]
>>> zip(*result)
2 [(1, 2, 3), (4, 5, 6)]


如果要將一個string list轉換成int list (list裏每個string都轉成int),比如
[python]  
['0','1','2'] -> [0,1,2]  
 
可以使用:
[python]   
[int(x) for x in list]  


或者使用map操作: map(func, list) 對list裏的每個元素apply func.
[python]  
map(int, list)  
 
假設有一個2維數組(用list實現):
[python]  
list = [[0,1,2],[3,1,4]]  
 
如果要得到每行之和,可以用以下兩種方式:
[python]  
>>> list = [[0,1,2],[3,1,4]]  
>>> [sum(x) for x in list]  
[3, 8]  
>>> map(sum,list)  
[3, 8]  


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章