Python新手综合练习:根据日期判断星座

一 判断星座程序 要求

本程序使用Python语言,根据用户输入的日期,计算出相应的星座,并输出。

  1. 用户输入“*月*日”,如 12月1日;
  2. 准确判断出详细的星座,并输出该星座的日期范围;
  3. 程序无限运行,当用户输入的月份超过12或日超过31退出程序;
  4. 判断星座的部分,使用Python函数。

二 判断星座程序 源代码

#定义判断星座的函数
def xz(month, day):
    #如果给定的“日” 超过月份表对应的"日"
    if day>=list1[month]: 
        x = list2[month] #等于对应的星座
    else
        if month==1# 如果是1月份的就等于12月星座
            x = list2[-1]
        else:
            x = list2[month-1#其他等于上个月的星座
        
    #返回 (计算的星座、字典中对应的日期)
    return x, dict1.get(x) 

#星座日期字典
dict1={
 "水瓶座":"1.20-2.18"
 "双鱼座":"2.19-3.20",
 "白羊座":"3.21-4.19",
 "金牛座":"4.20-5.20"
 "双子座":"5.21-6.20",
 "巨蟹座":"6.21-7.22",
 "狮子座":"7.23-8.22"
 "室女座":"8.23-9.22",
 "天秤座":"9.23-10.22",
 "天蝎座":"10.23-11.21"
 "射手座":"11.22-12.21",
 "摩羯座":"12.22-1.19"
}

# 各星座的开始“日”,0位为空,便于计算
list1 = [0,
 20,19,21,
 20,21,21,
 23,23,23,
 23,22,22]

# 从1到12月的星座,0位为空,便于计算
list2 = ["",
 "水瓶座","双鱼座","白羊座",
 "金牛座","双子座","巨蟹座",
 "狮子座","室女座","天秤座",
 "天蝎座","射手座","摩羯座"]

while True:
    print("请输入你的出生日期,n格式:月.日")
    month,day = map(int, input("》》》:").split("."))
    #上一行,相当于以下几行的缩写
    #s = input("》》》:")
    #s = s.split(".")
    #month = int(s[0])
    #day = int(s[1])
    
    #如果月和日数字输入正确,则计算,否则结束程序
    if month<=12 and day<=31:
        x,d = xz(month, day) #调用函数
        # %s表示代入字符串, n表示换行
        print("n你的星座是 %s,n该星座的日期为 %sn"%(x, d))
    else:
        print("有这个日期吗?n不好好输入!不伺候了!")
        break #退出整个循环

本文结束

如有疑问,请直接留言!必回!
如有帮助,请点赞转发!感谢!

我用实战的方法自学了多种编程语言,
希望把实战速学的方法传播给更多的人,
你的一赞之力就能让更多人看到。

关注Python入门速学
带你实战快速学Python


原文始发于微信公众号(Python入门速学):Python新手综合练习:根据日期判断星座

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/236388.html

(0)
小半的头像小半

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!