Python 出生日期與天干地支屬相星座

 首先,是一些文化常識

(好多人把癸(guǐ)錯讀成kuí;把寅(yín)錯讀成yǎn?)

十  天干:

甲(jiǎ)、乙(yǐ)、丙(bǐng)、丁(dīng)、戊(wù)、己(jǐ)、庚(gēng)、辛(xīn)、壬(rén)、癸(guǐ)。

十二   地支:

子(zǐ)、醜(chǒu)、寅(yín)、卯(mǎo)、辰(chén)、巳(sì)、午(wǔ)、未(wèi)、申(shēn)、酉(yǒu)、戌(xū)、亥(hài)。

 

十二地支對應十二生肖:

子-鼠,醜-牛,寅-虎,卯-兔,辰-龍,巳-蛇, 午-馬,未-羊,申-猴,-雞,戌-狗,亥-豬。

 

接下來是真正起作用的部分啦

天干:用年份除以10,得到的餘數相對應的便是天干

地支:用年份除以12,得到的餘數相對應的便是地支

 星座:

a = ["甲","乙","丙","丁","戊","己","庚","辛","壬","癸"]#天干,列表
#a="甲乙丙丁戊己庚辛壬癸"#這樣也正確,字符串
b = ["子","醜","寅","卯","辰","巳","午","未","申","酉","戌","亥"]#地支
c = ["鼠","牛","虎","兔","龍","蛇","馬","羊","猴","雞","狗","豬"]#屬相
d = ["水瓶座","雙魚座","白羊座","金牛座","雙子座","巨蟹座",
     "獅子座","處女座","天秤座","天蠍座","射手座","摩羯座"]#星座
birthstr=input("請輸入出生日期(格式樣例:2000/01/01)")
year=int(birthstr[0:4])
mon=int(birthstr[5:7])
day=int(birthstr[8:10])

tiangan = a[(year-3)%10-1]#天干
dizhi = b[(year-3)%12-1]   #地支
shuxiang = c[(year-3)%12-1]#屬相

#星座
if(mon==3 and day>=21)or(mon==4 and day<=19) :
    num=3
elif(mon==4 and day>=20)or(mon==5 and day<=20):
    num=4
elif(mon==5 and day>=21)or(mon==6 and day<=21):
    num=5
elif(mon==6 and day>=22)or(mon==7 and day<=22):
    num=6
elif(mon==7 and day>=23)or(mon==8 and day<=22):
    num=7
elif(mon==8 and day>=23)or(mon==9 and day<=22):
    num=8
elif(mon==9 and day>=23)or(mon==10 and day<=23):
    num=9
elif(mon==10 and day>=24)or(mon==11 and day<=22):
    num=10
elif(mon==11 and day>=23)or(mon==12 and day<=21):
    num=11
elif(mon==12 and day>=22)or(mon==1 and day<=19):
    num=12
elif(mon==1 and day>=20)or(mon==2 and day<=18):
    num=1
else:
    num=2
xingzuo=d[num-1]

print("您出生於{}{}年,屬{},你的星座爲{}。".format(tiangan,dizhi,shuxiang,xingzuo))

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章