我在业余时间学习了一些 Python。试图制作一个电话簿,在这个网站上找到了一个; Python assignment for a phonebook .已将其用作模板但省略了 print_menu 函数。这是我能看到的唯一区别,但是当我添加一个数字时,它会卡在那个部分。只是要求输入姓名和号码,而不是逃避 if 循环。如果有人能告诉我为什么我会这样卡住,我将不胜感激。
phoneBook = {}
def main():
action = input("What would you like to do? \n 1. Add \n 2. Delete \n 3. Print \n 4. Quit \n")
while action != 4:
if action == '1':
name = input("Enter name: ")
num = input("Enter number: ")
phoneBook[name] = num
elif action == '2':
name = input("Delete who?")
if name in phoneBook:
del phoneBook[name]
else:
print("Name not found")
elif action == '3':
print("Telephone numbers: ")
for x in phoneBook.keys():
print("Name: ", x, "\tNumber: ", phoneBook[x])
elif action == '4':
print("Application closed.")
main()
最佳答案
这里有两个问题。正如 Padraic 和 Leistungsabfall 所提到的,input
返回一个字符串,但您也仅获得一次输入。如果您想继续获取输入,则需要将其放入循环中:
action = None
while action != '4':
action = input('What action would you like? ')
# the rest of your code here
关于python - Python(和编程)新手看不出我哪里出错了,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38922387/