题目:根据生日判断星座

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

代码展示:

"""
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. python爬虫---字体反爬

    目标地址:http://glidedsky.com/level/web/crawler-font-puzzle-1 打开google调试工具检查发现网页上和源码之中的数字不一样, 已经确认该题目为 字 ...

  2. MDL锁

    mdl锁的主要作用是用来维护表元数据的一致性.在表上有活动事务的时候,不可以对表元数据进行修改操作. 如果没有MDL锁的保护,那么session2可以直接执行,并导致session1出错. MDL锁是 ...

  3. python中一些列表知识

    列表 序列是 Python 中最基本的数据结构. 序列中的每个值都有对应的位置值,称之为索引,第一个索引是 0,第二个索引是 1,依此类推. Python 有 6 个序列的内置类型,但最常见的是列表和 ...

  4. python基础练习题(题目 猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少)

    day13 --------------------------------------------------------------- 实例021:猴子偷桃 题目 猴子吃桃问题:猴子第一天摘下若干 ...

  5. Python简单爬取Amazon图片-其他网站相应修改链接和正则

    简单爬取Amazon图片信息 这是一个简单的模板,如果需要爬取其他网站图片信息,更改URL和正则表达式即可 1 import requests 2 import re 3 import os 4 de ...

  6. 运行npm install命令的时候会发生什么?

    摘要:我们日常在下载第三方依赖的时候,都会用到一个命令npm install,那么你知道,在运行这个命令的时候都会发生什么吗? 本文分享自华为云社区<运行npm install命令的时候会发生什 ...

  7. 【面试普通人VS高手系列】请说一下你对分布式锁的理解,以及分布式锁的实现

    一个工作了7年的Java程序员,私信我关于分布式锁的问题. 一上来就两个灵魂拷问: Redis锁超时怎么办? Redis主从切换导致锁失效怎么办? 我说,别着急,这些都是小问题. 那么,关于" ...

  8. SD卡之二:SD总线访问模式

    SD 卡是以命令.回应.数据流进行通讯. 1.命令:命令的长度是48位,命令以'0'开始,第2位为'1'表示主机发往SD卡的命令,最后以CRC和结束位'1'结尾. 2.回应:回应的长度是48位或者13 ...

  9. UI自动化滑动登录

    一.使用OpenCV图像识别函数 1 import time 2 import cv2 3 import requests 4 from selenium import webdriver 5 fro ...

  10. InnoDB的逻辑存储结构是什么,表空间组成包括哪些?

    一.表空间 在InnoDB中我们创建的表还有对应的索引数据都存储在扩展名为.ibd 的文件中,这个文件路径可以先通过查mysql变量datadir来得到,然后进入对应的数据库名目录,会看到很多ibd, ...