题目:根据生日判断星座

需求:实现如下图所示结果

代码展示:

"""
Author:mll
Content:根据生日判断星座
Date:2020-11-23

"""
"""
白羊座:3月21日- 4月20日金牛座:4月21日- 5月21日
双子座:5月22日- 6月21日巨蟹座:6月22日- 7月22日
狮子座:7月23日- 8月23日处女座:8月24日- 9月23日
天秤座:9月24日- 10月23日天蝎座:10月24日- 11月22日
射手座:11月23日- 12月21日魔羯座:12月22日- 1月20日
水瓶座:1月21日- 2月19日双鱼座:2月20日- 3月20日
"""

# 定义一个函数进行判断用户输入的月份跟日期是什么星座
def judge(month, date):
if (month == 1 and 21 <= date <= 31) or (month == 2 and date <= 19):
print(str(month) + '月' + str(date) + '日星座为:水瓶座')
elif (month == 2 and 20 <= date <= 29) or (month == 3 and date <= 20):
print(str(month) + '月' + str(date) + '日星座为:双鱼座')
elif (month == 3 and 21 <= date <= 31) or (month == 4 and date <= 20):
print(str(month) + '月' + str(date) + '日星座为:白羊座')
elif (month == 4 and 21 <= date <= 30) or (month == 5 and date <= 21):
print(str(month) + '月' + str(date) + '日星座为:金牛座')
elif (month == 5 and 22 <= date <= 31) or (month == 6 and date <= 21):
print(str(month) + '月' + str(date) + '日星座为:双子座')
elif (month == 6 and 22 <= date <= 30) or (month == 7 and date <= 22):
print(str(month) + '月' + str(date) + '日星座为:巨蟹座')
elif (month == 7 and 23 <= date <= 31) or (month == 8 and date <= 23):
print(str(month) + '月' + str(date) + '日星座为:狮子座')
elif (month == 8 and 24 <= date <= 31) or (month == 9 and date <= 23):
print(str(month) + '月' + str(date) + '日星座为:处女座')
elif (month == 9 and 24 <= date <= 30) or (month == 10 and date <= 23):
print(str(month) + '月' + str(date) + '日星座为:天秤座')
elif (month == 10 and 24 <= date <= 31) or (month == 11 and date <= 22):
print(str(month) + '月' + str(date) + '日星座为:天蝎座')
elif (month == 11 and 23 <= date <= 30) or (month == 12 and date <= 21):
print(str(month) + '月' + str(date) + '日星座为:射手座')
elif (month == 12 and 22 <= date <= 31) or (month == 1 and date <= 20):
print(str(month) + '月' + str(date) + '日星座为:魔羯座')
else:
print('暂时没有符合您的星座, 请你回火星去~~~')

month_input = int(input('请输入月份(例如:5):')) # 用户输入月份
date_input = int(input('请输入日期:(例如:17):')) # 用户输入日期
judge(month_input, date_input) # 函数调用

 运行结果展示:


 总结:本实例需要考虑的是在if语句进行条件判断时,大月跟小月的边界值,写完代码后,作为专业测试人员应该多测些异常情况

 

python小题目练习(十)的更多相关文章

  1. python小题目练习(十二)

    题目:如下图所示 代码展示: """Author:mllContent:春节集五福Date:2020-01-17"""import rand ...

  2. python小题目练习(13)

    题目:封装用户的上网行为 实现代码: """Author:mllContent:封装用户的上网行为Date:2020-01-19"""def ...

  3. python小题目练习(五)

    题目:Python实现快速排序 代码实现: """Author:mllContent:Python实现快速排序Date:2020-11-05""&qu ...

  4. python小题目练习(四)

    题目:JAVA和Python实现冒泡排序 实现代码: # Java实现对数组中的数字进行冒泡排序scoreList = [98, 87, 89, 90, 69, 50]temp = 0for i in ...

  5. python小题目练习(二)

    题目:输出1-100之间不包括7的倍数,含有7的数的其他数 """Author:mllContent:输出1-100之间不包括7的倍数,含有7的数的其他数Date:202 ...

  6. python小题目汇总

    1.编程计算两个日期之间的天数与周数 Python时间处理---dateutil模块: dateutil模块主要有两个函数,parser和rrule. 其中parser是根据字符串解析成datetim ...

  7. python小题目练习(一)

    题目:输出1+2+3+4+5+--+100的总数,并打印出这行式子 代码展示:# 1.定义一个初识变量total,用于后面每次循环进行累加值 total = 0# 2.利用for循环遍历累加for i ...

  8. python小题目练习(十一)

    题目:大乐透号码生成器 需求:使用Random模块模拟大乐透号码生成器,选号规则为:前区在1 ~ 35的范围内随机产生不重复 的5个号码,后区在1~ 12的范围内随机产生不重复的2个号码.效果如图8. ...

  9. python小题目练习(九)

    题目:将美元转化为人民币 需求:实现如图所示需求  代码展示: """Author:mllContent:将美元转化为人民币Date:2020-11-23"&q ...

随机推荐

  1. 基础设施即代码(IAC),Zalando Postgres Operator UI 入门

    Postgres Operator UI 提供了一个图形界面,方便用户体验数据库即服务.一旦 database 和/或 Kubernetes (K8s) 管理员设置了 operator,其他团队就很容 ...

  2. Python打印表格

    使用Python在终端打印表格 import prettytable table = PrettyTable(['Title1', 'Title2', 'Title3']) table.add_row ...

  3. 终极套娃 2.0|云原生 PaaS 平台的可观测性实践分享

    某个周一上午,小涛像往常一样泡上一杯热咖啡 ️,准备打开项目协同开始新一天的工作,突然隔壁的小文喊道:"快看,用户支持群里炸锅了 -" 用户 A:"Git 服务有点问题, ...

  4. Jenkins Build step 'Execute shell' marked build as failure

    问题出现: Jenkins一直都构建成功,今天突然报错:Jenkins Build step 'Execute shell' marked build as failure 问题原因: By defa ...

  5. 简单的TRPG骰子

    又到了新一年的带团季了,今年准备用电脑来存放各种资料,自然也是需要一个简单的骰子工具了,反正也不复杂,就自己写了个,放着做个备份吧 主要功能是计算x1dy1+/-x2dy2+/-.....+/-con ...

  6. 网络爬虫、Pandas

    网络爬虫.Pandas Pandas 是 Python 语言的一个扩展程序库,用于数据分析. Pandas 是一个开放源码.BSD 许可的库,提供高性能.易于使用的数据结构和数据分析工具. Panda ...

  7. Red Hat牵头推进NVFS文件系统

    开源Linux 长按二维码加关注~ 上一篇:Linux中几个正则表达式的用法 由 Red Hat 工程师牵头的团队,正在为 Linux/开源社区研究名为 NVFS 的文件系统.NVFS 的目标是成为像 ...

  8. SQL注入到getshell

    SQL注入到getshell 通过本地 pikachu来复现  前提: 1.存在SQL注入漏洞 2.web目录具有写入权限 3.找到网站的绝对路径 4.secure_file_priv没有具体值(se ...

  9. 手脱无名壳tslgame_rl

    1.使用Detect It Easy查壳,该壳未显示出壳信息,至于为何有壳,我们使用IDA打开,查看其的导入表,其中没有太多函数使用: 2.我们使用x32dbg打开,运行至入口点,此处没有pushad ...

  10. CesiumJS 2022^ 原理[5] - 着色器相关的封装设计

    目录 1. 对 WebGL 接口的封装 1.1. 缓冲对象封装 1.2. 纹理与采样参数封装 1.3. 着色器封装 1.4. 上下文对象与渲染通道 1.5. 统一值(uniform)封装 1.6. 渲 ...