沉淀。

小本一枚

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]  


阅读更多
文章标签: map 遍历 python zip
个人分类: Python
上一篇python 切片,字符串逆序神器
下一篇python 列表推导 求100内的素数
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭