向Python numpy数组分配元素的问题
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了向Python numpy数组分配元素的问题相关的知识,希望对你有一定的参考价值。
我有一个3D数组,定义和初始化如下。我可以知道为什么以下作业不起作用吗?谢谢。
import numpy as np
xy = np.array([[(0,0) for _ in np.arange(0,2,0.5)] for _ in np.arange(0,2,0.5)])
xy[(0,0)] = (0,0.5)
print(xy[(0,0)])
输出:
[0 0]
所需的输出:
[0 0.5]
答案
请参阅下面的代码:
import numpy as np
xy = np.array([[(0,0) for _ in np.arange(0,2,0.5)] for _ in np.arange(0,2,0.5)])
xy = xy.view('float32')
xy[(0,0)] = (0,0.5)
print(xy[(0,0)])
输出
[0. 0.5]
另一答案
好的,这是一个具有正确的数组创建,赋值和变量名的版本:
import numpy as np
arr_1 = np.zeros(shape=(4, 4, 2))
arr_1[0, 0] = [0, 0.5]
print(arr_1[0, 0])
的输出:[0. 0.5]
以上是关于向Python numpy数组分配元素的问题的主要内容,如果未能解决你的问题,请参考以下文章
Python - 数组复制/分配,numpy的意外'=array [:]'行为