考虑这样一个元组列表:
a = [(1,2), (3,4)]
我经常发现自己试图将像这样的列表解压为每个列值的单独列表,例如:
b,c = list(zip(*a))
在这种情况下,
b
将是一个包含值 1
和 3
的列表。我经常发现自己想要将
b
和 c
转换为 numpy 数组而不是列表。
在这种情况下,我通常会这样做:b,c = list(zip(*a))
b = np.array(b)
c = np.array(c)
最后两行看起来很繁琐。是否有一种方法可以将列表直接解压缩为两个numpy数组,而不必通过
numpy.array
直接进行类型转换?谢谢。
b, c = np.array(a).T
这行代码是否符合您的需求?(T
代表转置操作。) - alani