Python, пользовательский ввод как аргумент функции не работает: TypeError: объект 'str' не вызывается - PullRequest
0 голосов
/ 17 апреля 2020

Я только начал изучать Python вчера, так что это, вероятно, глупый вопрос. Тем не менее, я долго искал решение и не смог его найти! Вот моя основная c программа:

def year(year):
  try:
    print(int(year))
  except:
    print("you did not enter a year")


if __name__ == "__main__":
  year = input("what year? ")
  year(year)

Дело в том, что, когда я запускаю ее в терминале, я получаю это сообщение:

Traceback (most recent call last):
  File "fonctions.py", line 24, in <module>
    year(year)
TypeError: 'str' object is not callable

Может ли кто-нибудь мне помочь разобраться с этим? Спасибо! Оливье

1 Ответ

2 голосов
/ 17 апреля 2020

Измените имя входной переменной, потому что здесь python интерпретирует, что она вызывает переменную year, а не функцию:

if __name__ == "__main__":
  year_val = input("what year? ")
  year(year_val)
...