我正在用 python 编写一个程序,它将接受用户的生日输入并输出他们的西方和中国十二生肖。现在我只是想让中文标志工作。到目前为止,这是我的代码:
ZODIAC = [(1900, "Rat"), (1901, "Ox"), (1902, "Tiger"), (1903, "Rabbit"), (1904\
, "Dragon"), (1905, "Snake"), (1906, "Horse"), (1907, "Sheep"), (1908, "Monkey"\
), (1909, "Rooster"), (1910, "Dog"), (1911, "Pig")]
def getChineseZodiac(year):
for i in ZODIAC:
if (year - ZODIAC[i]) % 12 == 0:
return ZODIAC[i]
year = input("Enter a year: ")
getChineseZodiac(year)
我希望这段代码做的是在 ZODIAC 中的每一年中运行并找到模数为 0 的匹配项,然后返回附加的字符串。但我得到的错误是TypeError: list indices must be integers, not tuple
. 我该如何解决这个问题?我应该为 ZODIAC 使用其他格式吗?