创建数组的多个唯一副本

时间:2016-04-27 22:40:54

标签: python python-3.x numpy copy

我有一个分配给a

的numpy数组

我想要这个

b = a.copy()
c = a.copy()
d = a.copy()

在一行。这是可能的,而不必写" a.copy" 3次?

谢谢!

1 个答案:

答案 0 :(得分:0)

当然,这是可能的,但我认为使用a.copy()的三个单独的赋值语句是最清楚的方法。我可以阅读该代码并确切知道发生了什么。有了以下内容,我必须花几秒钟搞清楚发生了什么......

  • 使用列表理解(@Pythonista在删除的答案中也有这个):

    b, c, d = [a.copy() for _ in range(3)]
    
  • 使用numpy.repeat

    b, c, d = np.repeat(a[None, ...], 3, axis=0)