3 回答
TA贡献1817条经验 获得超6个赞
您的变量 user_input 永远不会被设置回空,因此您永远无法输入新命令,因为它只需要您输入到 user_input 的最后一个条目,这将是 addDish 函数中读取的菜肴类型。此外,您对 addDish 的调用有一个额外的参数。我还建议将所有内容都放入 main 方法中。
def addDish(dish_list):
user_input = input("Please type the dish you want: ")
dish_list.append(user_input)
def viewDish(dish_list):
for i in range(len(dish_list)):
print(dish_list[i])
def main():
dish_list = []
while True:
user_input = ''
if user_input == '':
user_input = input("Please enter a command: ")
elif user_input == 'add':
addDish(dish_list)
elif user_input == 'view':
viewDish(dish_list)
main()
TA贡献1877条经验 获得超1个赞
您应该调用一个函数,在处理完先前的输入后要求用户输入,而不是使用 while 循环。
dish_list = []
def addDish(dish_list):
user_input = input("Please type the dish you want: ")
dish_list.append(user_input)
#def deleteDish(dish_list):
def viewDish(dish_list):
for i in range(len(dish_list)):
print(dish_list[i])
def get_input():
user_input = input("Please enter a command: ")
if user_input == 'add':
addDish(dish_list, user_input)
elif user_input == 'view':
viewDish(dish_list)
getInput()
getInput()
TA贡献1811条经验 获得超4个赞
干净一点:
dish_list = []
def add_dish(dish_list):
user_input = input("Please type the dish you want: ")
dish_list.append(user_input)
def view_dish(dish_list):
# for dish in dish_list:
# print(dish)
print('\n'.join(dish_list))
while True:
user_input = input("Please enter a command: ")
if user_input == 'add':
add_dish(dish_list)
elif user_input == 'view':
view_dish(dish_list)
else:
print("Unknown command %s" % user_input)
添加回答
举报