Python“builtin_function_or_method”错误

时间:2013-05-12 02:56:51

标签: python file python-3.x concatenation

我在写文件时遇到问题 - 我想用字节写,所以我做了一个代码:

read_file = open(data,"wb")#data is the path of the file
new_file.write(read_file.read)
read_file.close

它抛出了我的错误

TypeError: 'builtin_function_or_method' does not support the buffer interface

在第二行(new_file.write(read_file.read)

有人可以帮帮我吗?

此外,如果我将一些字节写入文件然后关闭它,并再次将字节写入文件,它们将连接起来。例如,如果第一个字节是10101101而第二个字节是10111101,它们将被读作1010110110111101

1 个答案:

答案 0 :(得分:0)

read_file= open(data,"wb")#data is the path of the file
new_file.write(read_file.read)

应该是

read_file= open(data,"rb")#data is the path of the file
new_file.write(read_file.read())

read_file.read是一个函数/方法,您希望将字符串传递给new_file.write()。通过调用read .read(),您将创建一个包含文件内容的字符串。


关于如何将字节写入文件,.write("10101101")将换行符"\n"附加到输出。因此,所有后续写入都将出现在文件的同一行。要将它们放在换行符上,您可以.write("10101101"+"\n")