思路
通过对12求余数,我们可以穷尽12生肖的重复循环,得到最早的那次从0000-0012年的生肖迭代,余数就是第一个循环的生肖下标。
zodiac = "鼠牛虎兔龙蛇马羊猴鸡狗猪"year = int(input("输入年份:"))res = year % 12print(res) #4print(zodiac[res]) #龙
结果是“龙”并不是我们想要的,因为公元元年的开始并不是鼠年
2020年是鼠
通过推算
2020 % 12 = 4
知在公元0004年是鼠年
两种方式解决
下标减4
print(zodiac[res - 4])
调换字符串顺序
zodiac = "猴鸡狗猪鼠牛虎兔龙蛇马羊"

全部程序
zodiac = "鼠牛虎兔龙蛇马羊猴鸡狗猪"year = int(input("输入年份:"))res = year % 12print(res) #4print(zodiac[res]) #龙
