Python语句学习4

语句(4)


并行迭代


迭代,在python中表现就是用for循环,从序列对象中获得一定数量的元素。


计算这两个列表中对应元素的和。
>>> a = [1,2,3,4,5]
>>> b = [9,8,7,6,5]
>>> c = []
>>> for i in range(len(a)):
c.append(a[i]+b[i])



>>> c
[10, 10, 10, 10, 10]


>>> zip(a,b)
[('q', 'g'), ('i', 'i'), ('w', 't'), ('s', 'h'), ('i', 'u'), ('r', 'b')]
如果序列长度不同,那么就以最短的为准。




>>> s = {"name":"qiwsir"}
>>> t = {"lang":"python"}
>>> zip(s,t)
[('name', 'lang')]
zip是一个内置函数,它的参数必须是某种序列数据类型,如果是字典,那么键视为序列。


然后将序列对应的元素依次组成元组,作为一个list的元素。


>>> a = [1,2,3,4,5]
>>> b = [9,8,7,6,5]
>>> d = []
>>> for x,y in zip(a,b):
d.append(x+y)



>>> 
>>> d
[10, 10, 10, 10, 10]






问题:有一个dictionary,myinfor = 


{"name":"qiwsir","site":"qiwsir.github.io","lang":"python"},将这个字典变换成:


infor = {"qiwsir":"name","qiwsir.github.io":"site","python":"lang"}


>>> myinfor = {"name":"qiwsir","site":"qiwsir.github,io","lang":"python"}
>>> infor = {}
>>> for k,v in myinfor.items():
infor[v]=k



>>> infor
{'python': 'lang', 'qiwsir.github,io': 'site', 'qiwsir': 'name'}






enumerate








list解析
得到1到9的每个整数的平方。
>>> power2 = []
>>> for i in range(1,10):
power2.append(i*i)



>>> power2


[1, 4, 9, 16, 25, 36, 49, 64, 81]


一种优雅的解法:
>>> squares = [x**2 for x in range(1,10)]
>>> squares
[1, 4, 9, 16, 25, 36, 49, 64, 81]



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值