dizhi = [
{"寅": "木"},
{"卯": "木"},
{"辰": "土"},
{"巳": "火"},
{"午": "火"},
{"未": "土"},
{"申": "金"},
{"酉": "金"},
{"戌": "土"},
{"亥": "水"},
{"子": "水"},
{"丑": "土"},
]
wuxing = ["水", "火", "木", "金", "土"]
time = input("起课之月日时:")
yue = int(time.split()[0])
ri = int(time.split()[1])
shi = int(time.split()[2])
yue_zhi = dizhi[yue - 1]
ri_zhi = dizhi[(yue + ri - 2) % 12]
match shi:
case 23 | 0:
shi_zhi = dizhi[10]
case 1 | 2:
shi_zhi = dizhi[11]
case 3 | 4:
shi_zhi = dizhi[0]
case 5 | 6:
shi_zhi = dizhi[1]
case 7 | 8:
shi_zhi = dizhi[2]
case 9 | 10:
shi_zhi = dizhi[3]
case 11 | 12:
shi_zhi = dizhi[4]
case 13 | 14:
shi_zhi = dizhi[5]
case 15 | 16:
shi_zhi = dizhi[6]
case 17 | 18:
shi_zhi = dizhi[7]
case 19 | 20:
shi_zhi = dizhi[8]
case 21 | 22:
shi_zhi = dizhi[9]
case _:
print("!!输入有误!!")
ti = shi_zhi
if dizhi.index(shi_zhi) >= dizhi.index(ri_zhi):
num = dizhi.index(shi_zhi) - dizhi.index(ri_zhi)
else:
num = dizhi.index(shi_zhi) + 12 - dizhi.index(ri_zhi)
yong = wuxing[num % 5]
match yue:
case 1 | 2:
wangshuai = {"水": "休→", "火": "相↗", "木": "旺↑", "金": "囚↘", "土": "死↓"}
case 4 | 5:
wangshuai = {"水": "囚↘", "火": "旺↑", "木": "休→", "金": "死↓", "土": "相↗"}
case 7 | 8:
wangshuai = {"水": "相↗", "火": "囚↘", "木": "死↓", "金": "旺↑", "土": "休→"}
case 10 | 11:
wangshuai = {"水": "旺↑", "火": "死↓", "木": "相↗", "金": "休→", "土": "囚↘"}
case 3 | 6 | 9 | 12:
wangshuai = {"水": "死↓", "火": "休→", "木": "囚↘", "金": "相↗", "土": "旺↑"}
case _:
print("!!输入有误!!")
wangshuai_yong = wangshuai[yong]
wangshuai_ti = wangshuai[list(ti.values())[0]]
print("\n\n")
print(f"用为:{yong},{wangshuai_yong}")
print(f"体为:{ti},{wangshuai_ti}")
print("\n\n")