gpt4 book ai didi

要列出的 Python 3 空终止字符串?

转载 作者:太空宇宙 更新时间:2023-11-03 13:49:57 25 4
gpt4 key购买 nike

当你有一个包含一些字符串的二进制文件时,Python 3 确实使整个文件读取过程变得复杂。

当我确定我读到的是 ascii 文本时,我可以执行 string.decode('ascii'),但在我的文件中我有空字符串 ('\x00' ) 终止的字符串我必须读取转换为字符串列表。如果不逐字节检查它是否为 null,新的方法将如何做到这一点?

mylist = chunkFromFile.split('\x00')

TypeError: Type str doesn't support the buffer API

最佳答案

我猜测 chunkFromFile 是一个 bytes 对象。然后你还需要为 .split() 方法提供一个 bytes 参数:

mylist = chunkFromFile.split(b'\x00')

参见:

>>> chunkFromFile = bytes((123,45,0,67,89))
>>> chunkFromFile
b'{-\x00CY'
>>> chunkFromFile.split(b'\x00')
[b'{-', b'CY']
>>> chunkFromFile.split('\x00')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: Type str doesn't support the buffer API

关于要列出的 Python 3 空终止字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11326184/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com