我需要该程序记录多个名称和数字,然后在将它们输入用户后,按Enter键并退出
while(True):
string1=input("Enter First Name: ")
string2=input("Enter Last Name: ")
outFile= open("names.txt", 'w')
firstname= string1
lastname= string2
outFile.write(string1.upper()+"\n"+string2.upper()+"\n")
outFile.close()
您需要附加到文件中。目前,您每次迭代都覆盖文件。
while(True):
string1=input("Enter First Name: ")
if string1 == '':
break
string2=input("Enter Phone number: ")
with open("names.txt", 'a') as outFile:
outFile.write(string1.upper()+"\n"+string2.upper()+"\n")
您还可以将文件移到循环之外。这将使文件保持打开状态,直到您退出程序。
with open("names.txt", 'w') as outFile:
while(True):
string1=input("Enter First Name: ")
if string1 == '':
break
string2=input("Enter Phone number: ")
outFile.write(string1.upper()+"\n"+string2.upper()+"\n")
这两个版本之间的功能略有不同。第一个将在程序运行之前保留文件中已经存在的所有内容。后者将覆盖任何现有内容并重新启动文件。
有关with
的更多信息以及为什么它意味着您不需要自己关闭文件,请参阅here。>>