Python 使用numpy从二进制文件读取字符数据 我有一个二进制文件,一些字符数据卡在一堆int和浮点中间。我正试着和numpy一起读书。关于角色数据,我能得到的最远信息是:

Python 使用numpy从二进制文件读取字符数据 我有一个二进制文件,一些字符数据卡在一堆int和浮点中间。我正试着和numpy一起读书。关于角色数据,我能得到的最远信息是:,python,string,numpy,binaryfiles,Python,String,Numpy,Binaryfiles,strbits=np.fromfile(infle,dtype='int8',count=73) (是的,它是一个73个字符的字符串。) 三个问题:我的数据现在是否在存储时没有损坏或截断?我现在可以把strbit转换成可读的字符串吗?最后,我应该用完全不同的方式来做吗 更新: 这是一个有效的方法,但我认为会有一个更优雅的方法 strarr = np.zeros(73,dtype='c') for n in range(73): strarr[n] = np.fromfile(infile,

strbits=np.fromfile(infle,dtype='int8',count=73)

(是的,它是一个73个字符的字符串。)

三个问题:我的数据现在是否在存储时没有损坏或截断?我现在可以把strbit转换成可读的字符串吗?最后,我应该用完全不同的方式来做吗

更新: 这是一个有效的方法,但我认为会有一个更优雅的方法

strarr = np.zeros(73,dtype='c')
for n in range(73):
   strarr[n] = np.fromfile(infile,dtype='c',count=1)[0]

现在我有了一个数组,其中每个元素都是输入文件中的单个字符。

这样做很好。下面是如何将其转换为字符串

strbits = np.fromfile(infile, dtype=np.int8, count=73)
a_string = ''.join([chr(item) for item in strbits])