python---列表生成式变形之for循环嵌套

1. 将3*3的矩阵转换成一维数组;

3*3矩阵:[

[1,2,3],

[4,5,6],

[7,8,9]

]

一维数组: [1,2,3,4,5,6,7,8,9]

方法一

li = [
    [1,2,3],
    [4,5,6],
    [7,8,9]
]
li1 = []
for item1 in li: #[1,2,3] [4,5,6] [7,8,9]
    for item2 in item1:
        li1.append(item2)
print(li1)

这里写图片描述

方法二

li = [
    [1,2,3],
    [4,5,6],
    [7,8,9]
]
print([item2 for item1 in li for item2 in item1])

这里写图片描述

2将第一题中矩阵中的偶数拿出来 变成一维数组

方法一

li = [
    [1,2,3],
    [4,5,6],
    [7,8,9]
]
resLi = []
for item1 in li: # [1,2,3]   [4,5,6]  [7,8,9]
    for item2 in item1:
        if item2 %2 ==0:
            resLi.append(item2)
print(resLi)

这里写图片描述
方法二

li = [
    [1,2,3],
    [4,5,6],
    [7,8,9]
]


print([item2 for item1 in li for item2 in item1 if item2 %2==0])

这里写图片描述

猜你喜欢

转载自blog.csdn.net/suifengOc/article/details/81806185