如何在Python中请求用户输入输出文件
我需要让用户指定一个输出文件,然后把数据追加到这个文件里。但是每次我尝试的时候,它都告诉我数据没有追加的属性。我觉得这是因为当我试图打开文件时,它把文件当成了一个字符串,而不是一个可以追加数据的实际文件。我尝试了很多方法,但现在我只剩下这个:
Output_File = str(raw_input("Where would you like to save this data? "))
fileObject = open(Output_File, "a")
fileObject.append(Output, '\n')
fileObject.close()
我想要追加的数据只是我之前定义的一个列表。任何帮助都会非常感谢。
4 个回答
1
这个错误信息其实很容易理解。因为文件对象是没有 append
这个方法的。你只需要用 write
方法就可以了:
fileObject.write(str(Output) + '\n')
2
文件对象没有 append
这个方法。你应该用 write
方法。另外,str(raw_input(...))
这个写法是多余的,因为 raw_input
本身就已经返回一个字符串了。
4
你的错误出现在这一行:
fileObject.append(Output, '\n')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'file' object has no attribute 'append'
使用文件对象的写入方法:
fileObject.write(Output+'\n')