繁体   English   中英

Python使用变量名写入文件,但似乎无法正常工作

[英]Python Write to file with variable names, but it doesn't seem to work well


为了回答上一个问题,我现在正在尝试做一些不同的事情。 我试图将用户名和他们的分数写到我调用的文本文件中,仅用于测试目的(newfile.txt):

到目前为止,这是代码:

file = open("newfile.txt", "w")

user_name = str(input("What is your name?"))
user_score = int(input("What score did you get?"))

file.write(user_name, ":", user_score "\n")

我正在尝试以name:score的形式编写名称和分数,因此例如由于我的名字是Taylor,并且如果我的分数是10,我希望文件显示Taylor:10。

为什么这不起作用?

.write()有一个参数。 您需要创建一个字符串来传递。 代替

file.write(user_name, ":", user_score "\n")

您可以使用str.format()创建您的字符串。

file.write('{} : {}\n'.format(user_name, user_score))

作为附带说明,我建议使用with关键字为您处理文件的打开和关闭。

with open("newfile.txt", "w") as f:
    user_name = str(input("What is your name? "))
    user_score = int(input("What score did you get? "))
    f.write('{} : {}\n'.format(user_name, user_score))

如何将要写入文件的内容放入新的var中? 并且write()仅采用字符串类型的参数,而user_score是int类型:

file = open("newfile.txt", "w")

user_name = str(input("What is your name?"))
user_score = int(input("What score did you get?"))

content = user_name + ':' + str(user_score) + '\n'

file.write(content)

file.close() # close the file

此外,请确保关闭文件,否则在程序结束之前它不会关闭。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM