将python对象写入文件
这个代码有什么错误吗?将python对象写入文件,python,file-io,Python,File Io,这个代码有什么错误吗? 我是python新手,希望将'print c'输出的内容写入文件?您可以使用str()函数将对象转换为字符串,方法与print相同: class C: pass file = open("newfile.txt", "w") for j in range(10): c = C() print c file.write(c) file.close() 但是,这不包括换行符。如果还需要换行符,可以手动添加一行: for j in ran
我是python新手,希望将
'print c'
输出的内容写入文件?您可以使用str()
函数将对象转换为字符串,方法与print
相同:
class C:
pass
file = open("newfile.txt", "w")
for j in range(10):
c = C()
print c
file.write(c)
file.close()
但是,这不包括换行符。如果还需要换行符,可以手动添加一行:
for j in range(10):
c = C()
print c
file.write(str(c))
或使用字符串格式:
file.write(str(c) + '\n')
或者使用带有重定向的print
语句(>fileobject
):
我建议您阅读以下内容:运行时有问题吗?在Python2中,您可以使用
print>>file,c
将a的输出发送到该文件。在Python3中,使用关键字参数来实现这一点,即print(c,file=file)
。file
的write()
方法不会像print
那样自动调用对象的\uu str\uu()
方法,因此您需要通过file.write(str(c)+'\n')
显式地执行此操作。我要在print\u函数中添加一点说明。
file.write('{}\n'.format(c))
print >> file, c