题目:两个3 行3列的矩阵,实现其对应位置的数据相加,并返回一个新矩阵
1 # -*- coding:utf-8 -*-
2 print '第一个列表'
3 l1 = [[1,2,3],[4,5,6],[7,8,9]]
4 for i in range(3):
5 print l1[i]
6 print '第二个列表'
7 l2 = [[1,2,3],[4,5,6],[7,8,9]]
8 for i in range(3):
9 print l2[i]
10
11 print '第三个列表为两个列表同位置的数相加构成'
12
13 l3=[]
14 for i in range(3):
15 a1 = l1[i]
16 a2 = l2[i]
17 l3_=[]
18 for j in range(3):
19 b1 = a1[j]
20 b2 = a2[j]
21 b = b1+b2
22 l3_.append(b)
23 l3.append(l3_)
24 for i in range(3):
25 print l3[i]
结果:
第一个列表
[1, 2, 3]
[4, 5, 6]
[7, 8, 9]
第二个列表
[1, 2, 3]
[4, 5, 6]
[7, 8, 9]
第三个列表为两个列表同位置的数相加构成
[2, 4, 6]
[8, 10, 12]
[14, 16, 18]
方法二为:
1 # -*- coding:utf-8 -*-
2 print '第一个列表'
3 l1 = [[1,2,3],[4,5,6],[7,8,9]]
4 for i in range(3):
5 print l1[i]
6 print '第二个列表'
7 l2 = [[1,2,3],[4,5,6],[7,8,9]]
8 for i in range(3):
9 print l2[i]
10 print '第三个列表为两个列表同位置的数相加构成'
11
12 l3 = [[0,0,0],[0,0,0],[0,0,0]]
13
# 第二种方法比第一种方法方便很多!
14 for i in range(len(l1)):
15 for j in range(len(l1[i])):
16 l3[i][j]=l1[i][j]+l2[i][j]
17
18 print '输出第三个列表为:'
19 for i in range(3):
20 print l3[i]
14 for i in range(len(l1)):
15 for j in range(len(l1[i])):
16 l3[i][j]=l1[i][j]+l2[i][j]
17
18 print '输出第三个列表为:'
19 for i in range(3):
20 print l3[i]
输出结果为:
第一个列表
[1, 2, 3]
[4, 5, 6]
[7, 8, 9]
第二个列表
[1, 2, 3]
[4, 5, 6]
[7, 8, 9]
第三个列表为两个列表同位置的数相加构成
输出第三个列表为:
[2, 4, 6]
[8, 10, 12]
[14, 16, 18]