Цикл Python с входными параметрами - PullRequest
0 голосов
/ 11 марта 2019

Я новичок в программировании, и я пытаюсь написать скрипт на Python, в котором у пользователя спрашивают, хотят ли они добавить имя и студента в список студентов.Если они говорят «да», то их просят ввести имя и идентификатор.Однако, если они скажут «нет», следует напечатать все, что уже сохранено в списке студентов.

Это мой код:

students = [ ]

def prompt_add():

add_more_student = bool(input("Do you want to add students to this list? (yes/NO):"))

add_student(())

if bool == 'yes':
        add_student(())
else:

    print(students)

def add_student(name, student_id=133):

    student_name = input("Enter a name:")
    student_id = input("Enter number:")

    student = {"name": name, "student_id": student_id}
    students.append(student)
    prompt_add()
    return students

prompt_add()

Это вывод, который он продолжает печатать:

screenshot

Поворотычто независимо от того, наберу я «да» или «нет», мне все равно задают вопрос.Пожалуйста, что я делаю не так?заранее спасибо.

1 Ответ

1 голос
/ 11 марта 2019

Я не знаю, если это то, что вы хотели, но вот оно: "в то время как True" просто позволяет ему повторяться снова и снова.

students = [ ]
def add_student(name, student_id=133):
   student_name = input("Enter a name:")
   student_id = input("Enter number:")

   student = {"name": student_name, "student_id": student_id}
   students.append(student)
   return students


while True:
   add_more_student = input("Do you want to add students to this list? (yes/NO):")
   if add_more_student == 'yes':
           add_student(())
           print(students)
   elif add_more_student == "no":
       print(students)
       break

надеюсь, это то, что вы искали ^^ edit: извините, это должно быть:

elif add_more_student == "no":

но

else:
...