一种循环取值的简便写法/取二维列表的第n列

刚刚看到的时候一脸萌比啊

 
 
for i in range(num_feature):
    feat_list = [example[i] for example in data_ch]

是的就是这句话

不难看出data_ch是一个可迭代对象,先去测试一下.

l1 = [i for i in range(7)]
print(l1)

结果

[0, 1, 2, 3, 4, 5, 6]

在做一个实验

l2 = [[1, 2, 3, 4],
      [2, 3, 4, 5],
      [2, 2, 4, 7],
      [5, 4, 3, 4],
      [7, 7, 8, 2]]
for i in range(3):
    l3 = [l4[i] for l4 in l2]
    print(l3)
print(l3)
结果

[1, 2, 2, 5, 7]
[2, 3, 2, 4, 7]
[3, 4, 4, 3, 8]
[3, 4, 4, 3, 8]

看出来了吧

这条语句就是想要得到二维列表中的第i+1列

翻译一下

二维列表b的(i+1)列  =  [ 列表x[i]   for   列表x   in   二维列表b ]

二维列表b(i+1)=  [ 列表x[i]  for 列表x in 二维列表b ]

猜你喜欢

转载自blog.csdn.net/Chirszzz1/article/details/80340487