numpy.dtype.metadata#

属性

dtype.metadata#

None 或一个只读元数据字典(mappingproxy)。

metadata 字段可以在创建数据类型时使用任何字典进行设置。NumPy 目前没有统一的方法来传播 metadata;尽管一些数组操作会保留它,但不能保证其他操作也会如此。

警告

尽管此功能在某些项目中有所使用,但长期以来一直未被记录,并且支持不佳。metadata 传播的某些方面预计将在未来发生变化。

示例

>>> import numpy as np
>>> dt = np.dtype(float, metadata={"key": "value"})
>>> dt.metadata["key"]
'value'
>>> arr = np.array([1, 2, 3], dtype=dt)
>>> arr.dtype.metadata
mappingproxy({'key': 'value'})

添加具有相同数据类型的数组目前会保留 metadata

>>> (arr + arr).dtype.metadata
mappingproxy({'key': 'value'})

如果数组具有不同的 dtype metadata,则第一个数组的 metadata 生效

>>> dt2 = np.dtype(float, metadata={"key2": "value2"})
>>> arr2 = np.array([3, 2, 1], dtype=dt2)
>>> print((arr + arr2).dtype.metadata)
{'key': 'value'}