Python,用户输入作为函数参数不起作用:TypeError:'str'对象不可调用

问题描述 投票:-2回答:1

我昨天才刚开始学习Python,所以这可能是一个愚蠢的问题。尽管如此,我一直在寻找解决方案一段时间,却找不到!这是我非常基本的程序:

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

有人可以帮我解决这个问题吗?谢谢!奥利维尔

python function typeerror callable
1个回答
2
投票

更改输入变量名称,因为在这里python解释为正在调用year变量,而不是函数:

if __name__ == "__main__":
  year_val = input("what year? ")
  year(year_val)
© www.soinside.com 2019 - 2024. All rights reserved.