TypeError: ввод ожидался не более 1 аргумента, получил 3

Я делаю небольшую гадательную игру на Python, где компьютер угадывает номер, выбранный игроком.

# Computer Guessing Game # The computer tries to guess your number print("Think of a number, and I will try to guess it. If my guess is right,") print("say 'yes'.If my guess is too high, say 'lower'. And if my guess is") print("too low, say 'higher'.\n") answer = input("Is it 50? ") guess = 50 while answer != "yes": hilo = input("Is it higher or lower? ") if hilo == "lower": guess %= 50 answer = input("Is it", guess, "?") if hilo == "higher": guess %= 150 answer = input("Is it", guess, "?") print("I win!") input("Press the enter key to exit.") 

Однако при его запуске строки 15 и 18 кода

 answer = input("Is it", guess, "?") 

return "TypeError: ввод ожидался не более 1 аргумента, получил 3" Я не знаю, как это исправить, поэтому любая помощь будет высоко оценена.

One Solution collect form web for “TypeError: ввод ожидался не более 1 аргумента, получил 3”

input только принимает один аргумент, вы его передаете 3. Вам нужно использовать форматирование или конкатенацию строк, чтобы сделать его одним аргументом:

 answer = input("Is it {} ?".format(guess)) 

Вы путали это с функцией print() , которая действительно принимает более одного аргумента и объединяет значения в одну строку для вас.

  • переменная длина% s с оператором% в python
  • Подсчет количества строк в списке с Python
  • Итерация на Python по нескольким
  • PyCharm показывает ошибку неразрешенных ссылок для действительного кода
  • Не удалось загрузить электронную таблицу google с помощью Google Drive API с помощью python
  • Python: TypeError: объект «NoneType» не имеет атрибута «__getitem__»
  • Python - подсчет слов в текстовом файле
  • Не удается установить Cython на win7
  • Python - лучший язык программирования в мире.