Неправильно размещен оператор возврата в циклах for
В этой проблеме программирования пользователь сталкивается с трудностями при создании программы, которая позволяет пользователю вводить данные для трех животных . Программа предназначена для заполнения списка объектами Pet, содержащими имя, тип животного и возраст. Однако после ввода первого животного программа внезапно завершает работу.
После анализа становится очевидным, что проблема заключается в размещении оператора return внутри функции make_list.
Цикл for реализует код в блоке кода повторно для указанного количества итераций. Когда оператор return помещается внутри цикла, он преждевременно завершает функцию после добавления в список только первого животного.
Чтобы исправить эту проблему, оператор return должен быть помещен после для петли. Это гарантирует, что функция продолжит выполнять итерации цикла и добавит всех трех животных в список перед его возвратом.
Исправленный код:
import pet_class
def make_list():
pet_list = []
print('Enter data for three pets.')
for count in range(1, 4):
print('Pet number ' str(count) ':')
name = raw_input('Enter the pet name:')
animal = raw_input('Enter the pet animal type:')
age = raw_input('Enter the pet age:')
pet = pet_class.PetName(name, animal, age)
pet_list.append(pet)
return pet_list
pets = make_list()
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3