文字版菜单选择程序:
import random
menu = {
'炒菜':['蒜蓉娃娃菜','鱼香肉丝','酸菜鱼','农家小炒肉','番茄炒蛋','海鲜'],
'面食':['酸辣粉','牛肉拉面','云吞','蒸饺','水饺','炸酱面','肉夹馍'],
'西餐':['汉堡','三明治','牛排','寿司','鸡排','意面']
}
def judge(choice):
judgement1 = input('去吃【%s】好不好,同意请输入y/Y:'%(choice))
if judgement1 == 'y' or judgement1 == 'Y':
print('好的,我们去吃【%s】,就这么愉快的决定了'%(choice))
return False
else:
print('好吧,既然你不喜欢,那我们重新选择')
return True
def choose(dict_menu):
print(list(menu.keys()))
choice0 = True
while choice0: #选择想吃的种类
dish_type = random.choice(list(menu.keys()))
choice0 = judge(dish_type)
if choice0 == False:
list_dish = menu[dish_type]
while True: #选择想吃的某个菜
dish = random.choice(list_dish)
choice1 = judge(dish)
if choice1 == False:
break
return False
else:
# print('好吧,既然你不喜欢,我们重新选择')
return True
def add_choice():
menu_choice = []
while True:
menu_choice.append(input('请输入选项:'))
flag1 = input('是否继续添加选择项,结束请输入n/N,其他键继续添加')
if flag1 == 'n' or flag1 == 'N':
break
return menu_choice
def main():
while True:
reason = input('你不知道吃什么的原因是:1.完全不知道吃什么;2.在几个选择之间徘徊(请输入1或2):')
if reason == '1': #在已设定的菜单中选择
choose(menu)
return
elif reason == '2': #新建备选菜单选择
list_choice = add_choice()
while True:
dish = random.choice(list_choice)
choice = judge(dish)
if choice == False:
break
return
else:
print('抱歉,目前还不支持第三种情况——不过,你可以新增选项哦。')
main()
print('完成选择,程序结束')