使用重复用户输入向现有txt文件添加文本

2024-06-07 16:55:41 发布

您现在位置:Python中文网/ 问答频道 /正文

我想让用户将号码添加到已经存在的电话列表中。当用户只回答enter时,程序应停止请求输入。以下是我到目前为止得到的(我不知道为什么它不能按预期工作):

nums = open('telephone.txt', 'a')
print('Add name and number, finish with <enter>.')

while True:
    new = input('Name and number: ')
    nums.write('\n' + new)
    if new == '':
        break
nums.close() 

nums = open('telephone.txt', 'r')
print(nums.read())

编辑:对结果进行了建议的更改


Tags: and用户程序txtaddnumber列表new
2条回答

虽然在while循环中重新定义new会导致对文件的引用被覆盖,但您已经拥有了所需的一切

new = open('telephone.txt', 'a')

print('Add name and number, finish with <enter>.')
while True:
    userInput = input('Name and number: ')
    if userInput == '': break # If no input provided, stop listening for new numbers.
    
    new.write('\n' + userInput)

print(new.read())
new.close()

python在第一行将变量new设置为文件指针,然后在第5行将其设置为字符串,更改用户输入的变量名称

例:

new = open('telephone.txt', 'a')
print('Add name and number, finish with <enter>.')

while True:
    usr_input = input('Name and number: ')
    new.write('\n' + usr_input)
    if usr_input == '':
        break
new.close()

相关问题 更多 >

    热门问题