题目:根据生日判断星座

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

代码展示:

"""
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. 得到一个a(10)到b(20)的随机数。包括10和20

  2. selenium模块无头化浏览器 设置不加载页面css、图片、js

    下面代码基于火狐浏览器,谷歌浏览器代码类似 from selenium import webdriver from selenium.webdriver.firefox.options import ...

  3. python基础练习题(题目 三数排序。)

    day40 --------------------------------------------------------------- 实例066:三数排序 题目 输入3个数a,b,c,按大小顺序 ...

  4. Java8 新特性,打破你对接口的认知

    Java 8 之前,接口里面只能写抽象方法,不能写实现方法 Java 8 开始是可以有方法实现的,可以在接口中添加默认方法和静态方法 默认方法用 default 修饰,只能用在接口中,静态方法用 st ...

  5. Django视图函数:CBV与FBV (ps:补充装饰器)

    CBV 基于类的视图  FBV 基于函数的视图 CBV: 1 项目目录下: 2 urlpatterns = [ 3 path('login1/',views.Login.as_view()) #.as ...

  6. [STL] deque 双端队列

  7. create-react-app的TS支持以及css模块化

    开始: 利用官方脚手架,搭建react工程.参考:https://react.docschina.org/docs/create-a-new-react-app.html. 过程: 1.暴露webpa ...

  8. 1.8 常见Linux发行版本有哪些?

    新手往往会被 Linux 众多的发行版本搞得一头雾水,我们首先来解释一下这个问题. 从技术上来说,李纳斯•托瓦兹开发的 Linux 只是一个内核.内核指的是一个提供设备驱动.文件系统.进程管理.网络通 ...

  9. 浅谈Nginx性能调优

    点击上方"开源Linux",选择"设为星标" 回复"学习"获取独家整理的学习资料! Linux系统参数优化 下文中提到的一些配置,需要较新的 ...

  10. go-micro集成RabbitMQ实战和原理

    在go-micro中异步消息的收发是通过Broker这个组件来完成的,底层实现有RabbitMQ.Kafka.Redis等等很多种方式,这篇文章主要介绍go-micro使用RabbitMQ收发数据的方 ...