_stdout - это вывод, который ваша программа записывает, когда печатает данные в командной строке. Логика вашей программы совершенно безупречна.
Поскольку вывод помечен как неправильный, я сначала спросил бы учителя, хочет ли он конкретную формулировку. Я ожидаю, что он / она, вероятно, жестко запрограммировал конкретный вывод в анализатор домашних заданий. Если это так, тогда просто измените ваше print(duckcounter)
на любое предложение / вывод, которое жестко закодировал учитель (как я сказал, лучше всего было бы спросить его / ее, если она / он это сделал).
Как сказаноМайк - SMT, учитель мог также изменить выражение input
. Вы можете думать о вводе как о команде из двух частей. Сначала он печатает что-то в _stdout (вывод в командной строке), а затем ждет определенного действия (обычно, когда вы что-то набираете и нажимаете ввод).
Вы также можете сделать что-то вроде этого:
animal = ''
counter = 0
while animal != 'goose':
animal = input('Please enter either "Goose" or "Duck": ')
animal = animal.lower() # make everything lowercase
if animal == 'duck':
counter += 1
print('You have typed "duck" {} times'.format(counter))
Если у вас есть какие-либо вопросы, дайте мне знать.