Попытка достичь этого результата
Я несколько завершил первый и второй шаги
Я хотел бы спросить, почему, когда я запускаю свои коды, я получаю ошибки? вот требования, которые я должен выполнить.
Вызов следующего клиента
1. покажите, что в очереди ожидания нет клиента, если очередь ожидания пуста
2. в противном случае отобразите номер очереди клиента в очереди ожидания
3. если клиент отвечает на вызов, он удаляется из очереди ожидания и помещается в другую очередь "обслуживаемый клиент", чтобы указать, что клиент получил свою еду
4. выведите на экран сообщение о том, что клиент обслуживается
Однако я застрял в первой части, где он требует от пользователей ввода входных данных и понятия не имеет, где я ошибаюсь (утверждает, что ошибка находится в "while choice != 0"
я хотел бы получить этот пример вывода:
Menu 1.Register a customer 2. Call next customer 3. List customers in queue 4. Exit Please choose : 1 # below is what will happen it user chooses menu option 1 May i have your name: Fad (enter input. fad as an example)
я хотел бы распечатать имя, но я продолжаю получать ошибки
ошибки:
TypeError Traceback (most recent call last) <ipython-input-16-85165eb1f15c> in <module> 44 choice = int(input("Please choose:")) 45 if choice == 1: ---> 46 register(wait_que, que_num) 47 que_num += 1 # queue number will be incremented by 1. so if 100, then after that is 101 48 elif choice == 2: <ipython-input-16-85165eb1f15c> in register(queue, qnum) 15 def register(queue, qnum): 16 name = input("May i have your name ") ---> 17 queue.append[qnum, name, 0] 18 19 pass TypeError: 'builtin_function_or_method' object is not subscriptable
Что я уже пробовал:
import random # import collection from lab from collections import deque from time import sleep print("Menu") print("1. Register a customer") print("2. Call next customer") print("3. List customers in queue") print("4. Exit") def menu(): pass def register(queue, qnum): name = input("May i have your name ") queue.append[qnum, name, 0] pass def call_next(): if queue.empty: print("No customer in waiting queue") else: return 0 pass def list_cust(): pass wait_que = deque([]) # assign nothing to it que_num = random.randint(1,5)*100 choice = '' while choice != 0: menu() # print menu choice = int(input("Please choose:")) if choice == 1: register(wait_que, que_num) que_num += 1 # queue number will be incremented by 1. so if 100, then after that is 101 elif choice == 2: call_next() elif choice == 3: list_cust() elif choice == 0: print("End of program") else: print("Invalid option...")