我的问题出在 # 行内。我不明白为什么 invalidDish 始终为 True,即使在 if 语句之一中将其设置为 False 后也是如此。class dishes: def __init__(self, serial_no, dish_name, price): self.serial_no = serial_no self.dish_name = dish_name self.price = price def show_menu(self): print(str(self.serial_no) + '. ' + self.dish_name + '\t$' + self.price)def errorMessage(code, range): if code == 'outOfRange': print('***Please enter number 1 - {} only***\n'.format(str(range))) machineRunning()plain_prata = dishes(1, 'Plain prata', '0.50')egg_prata = dishes(2, 'Egg prata', '1.00')cheese_prata = dishes(3, 'Cheese prata', '2.50')garlic_prata = dishes(4, 'Garlic prata', '1.50')ham_prata = dishes(5, 'Ham prata', '2.50')menu = [plain_prata, egg_prata, cheese_prata, garlic_prata, ham_prata]current_order = []def machineRunning(): while True: print('1. Menu') print('2. Add order') print('3. Checkout') value = input('Please input:') try: value = int(value) if value < 1 or value > 3: errorMessage('outOfRange', 3) except ValueError: print('***Please enter number 1 - 3 only***\n') continue if value == 1: print() for x in range(len(menu)): menu[x].show_menu() elif value == 2: dish = input('Dish name/number:') try: dish = int(dish) - 1 if dish < 0 or dish >= len(menu): errorMessage('outOfRange', len(menu))我尝试按照终端中的代码进行操作,但仍然无法找出问题所在。这是终端的结果。附言。我正在通过尝试为一家餐厅制作收银机来学习Python,生成每周、每月总结、计算利润等。关于我下一步可以做什么以使这个更加用户友好有什么建议吗?就像 python 与其他软件或代码对话一样,使界面易于使用?
添加回答
举报
0/150
提交
取消