gpt4 book ai didi

python - 在 numpy 数组中切片和在 Python 中切片有什么区别?

转载 作者:行者123 更新时间:2023-12-03 19:45:26 27 4
gpt4 key购买 nike

curr_frames是一个numpy数组,最后一行是什么意思?

curr_frames = np.array(curr_frames)

idx = map(int,np.linspace(0,len(curr_frames)-1,80))

curr_frames = curr_frames[idx,:,:,:,]

最佳答案

从 Python 的内置列表到 numpy 数组的一个重要区别:

  • 当在内置列表中切片时,它会创建一个副本 .
    X=[1,2,3,4,5,6]
    Y=X[:3] #[1,2,3]

    通过从 0 到 3 对 X 进行切片,我们创建了一个副本并将其存储在变量 Y 中。

  • 我们可以通过改变 Y 来验证,即使我们改变 Y 也不会影响 X。
        Y[0]=20
    print(Y) # [20,2,3]
    print(X) # [1,2,3,4,5,6]
  • 在 numpy 中切片时不会创建新副本,但它仍然引用原始数组
    A=np.array([1,2,3,4,5,6])
    B=A[:3]

  • 通过在这里切片 A 并将其分配给 B,仍然 B 指的是原始数组 A。

    我们可以通过改变 B 中的一个元素来验证这一点,它也会改变 A 中的值。
        B[0]=20
    print(B) # [20,2,3]
    print(A) # [20,2,3,4,5,6]

    关于python - 在 numpy 数组中切片和在 Python 中切片有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54389884/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com