不可变的Numpy数组?

问题描述 投票:71回答:1

有没有一个简单的方法来创建一个不可变的NumPy数组?

如果必须从 ndarray 要做到这一点,至少要覆盖多少方法才能实现不可变?

python arrays numpy immutability readonly
1个回答
109
投票

你可以让一个numpy数组不可写。

a = np.arange(10)
a.flags.writeable = False
a[0] = 1
# Gives: ValueError: assignment destination is read-only

也可以参考这个主题的讨论:

http:/mail.scipy.orgpipermailnumpy-discussion2008-December039274.html。

和文档。

http:/docs.scipy.orgdocnumpyreferencegeneratednumpy.ndarray.flags.html。

© www.soinside.com 2019 - 2024. All rights reserved.