gpt4 book ai didi

python - 如何为切片 numpy 数组提供语法糖?

转载 作者:行者123 更新时间:2023-11-28 17:03:38 25 4
gpt4 key购买 nike

我想通过执行以下操作来编写更具可读性的代码:

import numpy as np

SLICE_XY = slice(0, 2)
SLICE_Z = slice(2, 3)

data = np.array([[0, 1, 2],
[3, 4, 5],
[6, 7, 8],
[9, 10, 11]])

xy = data[:, SLICE_XY]
z = data[:, SLICE_Z]

但是,我遇到了执行上述操作产生的问题

>>> xy
array([[ 0, 1],
[ 3, 4],
[ 6, 7],
[ 9, 10]])
>>> z
array([[ 2],
[ 5],
[ 8],
[11]])

这是我对 xy 的预期。但是对于 z 我希望它等同于

>>> data[:, 2]
array([ 2, 5, 8, 11])

注意:

>>> data[:, 0:2]
array([[ 0, 1],
[ 3, 4],
[ 6, 7],
[ 9, 10]])

最佳答案

SLICE_Z = 2

按照设计,arr[0:1] 与 arr[0] 不同。切片总是返回可迭代对象。

关于python - 如何为切片 numpy 数组提供语法糖?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52673933/

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