Python字节字符串

8

我猜这是一个Python新手问题,那么如何将单个字节(在这种情况下为零)写入文件呢?

这是我的代码:

f = open("data.dat", "wb")
f.write(0)
f.close()

但在写入行上,会出现以下错误:

TypeError:需要字节类似对象而不是'int'

我猜我需要用字节文字替换0,但无法弄清楚语法。 我所有的搜索都告诉我关于将字符串转换为字节。 我尝试了 0B,但没有起作用。

2个回答

6
您正在尝试编写整数0。 这是Python对象。
我想您可能想要写入空字节。 在这种情况下,请执行f.write(b'\0')b'\0'缩写为b'\x00'

1

Python 2('\0')和Python 3(b'\0')都有字节文字。 (Python 2 称之为类型str,但解决字符串与字节的二分法是Python 3的主要目标之一。) - chepner
@chepner 我弄清楚了并且修正了我的答案。 - Tarik

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接