微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Python/Numpy:Numpy Unicode 数组可以有多大?

如何解决Python/Numpy:Numpy Unicode 数组可以有多大?

Numpy Unicode 数组可以有多大?

dtype = 'U100','U1000','U1000000' ?

我找不到任何有关文档最大值的参考。

解决方法

我在 https://numpy.org/doc/stable/reference/arrays.dtypes.html 中找到了这一行:

总 dtype itemsize 限制为 ctypes.c_int

对于 32 位有符号整数,这将是 2,147,483,647。但实际上,项目的字节大小也是有限的,所以除以 4(Unicode 代码点大小)是 2147483647 // 4 或 536,870,911。

>>> import numpy as np
>>> np.array(['abcdef'],dtype='U536870911')
array(['abcdef'],dtype='<U536870911')
>>> np.array(['abcdef'],dtype='U536870911').itemsize
2147483644

还有:

dtype.itemsize

此数据类型对象的元素大小。

对于 21 种类型中的 18 种,此数字由数据类型固定。对于灵活的数据类型,这个数字可以是任何。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。