码迷,mamicode.com
首页 > 其他好文 > 详细

列表的相加

时间:2019-09-07 00:35:29      阅读:96      评论:0      收藏:0      [点我收藏+]

标签:二层   for   zip   com   遍历   bsp   需要   逗号   int   

a = [1,2,3]
b = [4,5,6]

求a和b对应元素的相加

1 a = [1,2,3]
2 b = [4,5,6]
3 for i in range(0,3):
4     print(a[i]+b[i])

但只用for遍历,只是实现了对应元素的相加,但结果不是列表形式:

技术图片

所以需要改进:

1 #方法一
2 a = [1,2,3]
3 b = [4,5,6]
4 ls = []
5 for i in range(0,3):
6     ls.append(a[i]+b[i])
7 print(ls)

 列表生成式

#方法二
a = [1,2,3]
b = [4,5,6]
ls = [i+j for (i,j) in zip(a,b)]    #for前面是空格,不能用逗号
print(ls)

 补充:

(1)zip()的用法:

zip(a,b)是将a

不能 a+b(这只是将两个列表进行拼接)

也不能:

1 a = [1,2,3]
2 b = [4,5,6]
3 for i in a:
4     for j in b:
5     print(i+j)

因为二层循环,每遍历完内层for循环后,才跳出来进行一次外层的for循环。如 i = 1时,则 j = 4,5,6,而不是只等于4;i = 2时,则 j = 4,5,6,而不是只等于5

列表的相加

标签:二层   for   zip   com   遍历   bsp   需要   逗号   int   

原文地址:https://www.cnblogs.com/kenny-feng/p/11367939.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!