Python:打开并写入.txt文件
我是python新手,所以我正在尝试制作一个ATM(我想是模拟器)。其中一个功能是注册,因此我试图将用户名保存在一个.txt文件中以供参考(当然稍后会提供密码),但由于某些原因它无法工作Python:打开并写入.txt文件,python,python-2.7,Python,Python 2.7,我是python新手,所以我正在尝试制作一个ATM(我想是模拟器)。其中一个功能是注册,因此我试图将用户名保存在一个.txt文件中以供参考(当然稍后会提供密码),但由于某些原因它无法工作 def atm_register(): print "To register, please choose a username." username = raw_input('> ') with open("users.txt") as f: f.write(username, "a")
def atm_register():
print "To register, please choose a username."
username = raw_input('> ')
with open("users.txt") as f:
f.write(username, "a")
它告诉我,该文件未打开进行写入。
顺便说一句,users.txt文件与程序位于同一目录中。我认为应该是:
open("users.txt","w")
您必须以写模式打开文件。看
open('users.txt','w')
应该可以工作。考虑到您正在调用f.write(用户名,“a”)
和filewrite()
只接受一个参数-要写入的文本-我想您打算将“a”
附加到文件中
这将进入open()
调用;其他告诉您使用open(name,“w”)
的答案是错误的建议,因为它们会覆盖现有文件。您可能还希望在用户名后写一个换行符,以保持文件整洁。e、 g
with open("users.txt", "a") as f:
f.write(username + "\n")
你应该使用
with open("users.txt","a") as f:
f.write(username)
而不是
with open("users.txt") as f:
f.write(username, "a")
希望这有帮助
打开('filename','w')作为f:
。如果要写入脚本目录,请查看,首先导入os
,然后打开(os.path.join(os.path.basename(\uuu文件);“users.txt”),“a”)
。这将从脚本目录而不是用户的当前工作目录生成路径名。除非您希望每次运行时都丢失数据,否则请使用a
notw
@Piethon如果这样做有效,您可以点击此答案附近的复选标记,将问题标记为已解决