将 ASCII 码的 Numpy 数组转换为字符串

2023-11-22

我想将表示 ASCII 代码的整数 NumPy 数组转换为相应的字符串。 例如 ASCII 代码 97 等于字符"a"。 我试过:

from numpy import *
a=array([97, 98, 99])
c = a.astype('string')
print c

这使:

['9' '9' '9']

但我想得到字符串"abc".


另一个不涉及离开 NumPy 世界的解决方案是将数据视为字符串:

arr = np.array([97, 98, 99], dtype=np.uint8).view('S3').squeeze()

或者如果您的 numpy 数组不是 8 位整数:

arr = np.array([97, 98, 99]).astype(np.uint8).view('S3').squeeze()

然而,在这些情况下,您必须向数据类型附加正确的长度(例如,“S3”表示 3 个字符串)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将 ASCII 码的 Numpy 数组转换为字符串 的相关文章

随机推荐