添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

将numpy uint8数组转换为字符串

1 人关注

我想在Python中把一个numpy uint8数组转换为字符串。

import numpy as np
arr = np.array([98, 111,111,107])
print(arr.view('c')) # I can see the output [b'b' b'' b'o' b'' b'o' b'' b'k' b'']

我想获得book?有什么指示吗?

python
arrays
numpy
Pavan K
Pavan K
发布于 2021-01-21
2 个回答
user3483203
user3483203
发布于 2021-01-21
已采纳
0 人赞同

你所面临的主要问题是,你 don't 有一个 UInt8 的数组,你有一个 Int64 的数组,所以当你把它看作一个字符数组时,你会得到很多无关的数据。

如果你正确设置了你的 dtype ,你可以适当地查看这个。

arr = np.array([98, 111,111,107], dtype=np.uint8)
arr.view(f'S{arr.shape[0]}')
# array([b'book'], dtype='|S4')
    
paul-shuvo
paul-shuvo
发布于 2021-01-21
0 人赞同