猫史档案馆


【Python作品分享】超实用日历工具【作品秀】

用户:可亲的训练师Xh06可亲的训练师Xh06查看:0 回复:1 评论:0 创建时间:2021-12-04T10:59:13


【作品展示】

center_image

 

【作品介绍】

基本功能如:查询平年闰年;查询当月天数;统计一年第几天;统计经历多少天;生日倒计时……

扩展功能如:打印月历;查询阴历;查询生肖;查询星座;历史上的今天;体力、情绪、智力三种节律查询

 

【作品源代码】

def show_logo():
    print('='*38)
    print('{:^30}'.format('超实用日期小工具'))
    print('{:>36}'.format('v 1.1'))
    print('{:>36}'.format('lincoln工作室'))
    print('='*38)
def show_menu():
    print('''
                    菜单
            1.查询平年闰年
            2.查询当月天数
            3.统计一年第几天
            4.统计经历多少天
            5.生日倒计时
            6.查询生肖
            7.查询星座
            0 退出
    ''')
    choose=int(input('需要哪个工具(0~7):'))
    if choose==1:
        year_data()
    elif choose==2:
        month_data()
    elif choose==3:
        days_of_year()
    elif choose==4:
        experience_days()
    elif choose==5:
        birthday()
    elif choose==6:
        zodiac()
    elif choose==7:
        constellation()
    elif choose==0:
        quit()
    else:
        show_menu()
def year_data():
    n=int(input('请输入一个年份:'))
    if n%4==0 and n%100!=0 or n%400==0:
        print('{}年是闰年'.format(n))
    else:
        print('{}年是平年'.format(n))
    show_menu()
def month_data():
    big_moon=[1,3,5,7,8,10,12]
    喵all_moon=[4,6,9,11]
    year,month=map(int,input('请输入您的年月:').split())
    if month in big_moon:
        print('{}月有31天'.format(month))
    elif month in 喵all_moon:
        print('{}月有30天'.format(month))
    elif month==2:
        if year%4==0 and year%100!=0 or year%400==0:
            print('{}年的{}月有29天'.format(year,month))
        else:
            print('{}年的{}月有28天'.format(year,month))
    else:
        print('您的输入错误,请重新输入')
        month_data()
    show_menu()
def days_of_year():
    months=[31,28,31,30,31,30,31,31,30,31,30,31]
    year,month,day=map(int,input('请输入年月日:').split())
    if year%4==0 and year%100!=0 or year%400==0:
        months[1]=29
    days=sum(months[0:month-1])+day
    print('这是今年的第{}天'.format(days))
    show_menu()
def experience_days():
    months=[31,28,31,30,31,30,31,31,30,31,30,31]
    year,month,day=map(int,input('请输入开始日期年月日:').split())
    year2,month2,day2=map(int,input('请输入结束日期年月日(仅限与开始日期同一年内):').split())
    if year%4==0 and year%100!=0 or year%400==0:
        months[1]=29
    days=sum(months[0:month-1])+day
    if year2%4==0 and year2%100!=0 or year2%400==0:
        months[1]=29
    days2=sum(months[0:month2-1])+day2
    print('从{}年{}月{}日到{}年{}月{}日,一共度过了{}天'.format(year,month,day,year2,month2,day2,days2-days))
    show_menu()
def birthday():
    months=[31,28,31,30,31,30,31,31,30,31,30,31]
    year,month,day=map(int,input('请输入出生日期(年月日):').split())
    year2,month2,day2=map(int,input('请输入今天的日期(年月日):').split())
    if year%4==0 and year%100!=0 or year%400==0:
        months[1]=29
    days=sum(months[0:month-1])+day
    if year2%4==0 and year2%100!=0 or year2%400==0:
        months[1]=29
    days2=sum(months[0:month2-1])+day2
    if days2days:
        if year2%4==0 and year2%100!=0 or year2%400==0:
            print('倒计时{}天生日'.format(366-days2+days))
        else:
            print('倒计时{}天生日'.format(365-days2+days))
    show_menu()
def zodiac():
    year=int(input('请输入你出生的年份:'))
    zodiac=['鼠','牛','虎','兔','龙','蛇','马','羊','猴','鸡','狗','猪']
    zodiac2=['猪','狗','鸡','猴','羊','马','蛇','龙','兔','虎','牛','鼠']
    if year>2020:
        print('您属的是{}'.format(zodiac[(year-2020)%12]))
    else:
        print('您属的是{}'.format(zodiac2[(2020-year-1)%12]))
    show_menu()
def constellation():
    month,day=map(int,input('请输入您出生的月份和日期:').split())
    if month==3 and day>=21 or month==4 and day<=19:
        print('您的星座是白羊座')
    elif month==4 and day>=20 or month==5 and day<=20:
        print('您的星座是金牛座')
    elif month==5 and day>=21 or month==5 and day<=21:
        print('您的星座是双子座')
    elif month==6 and day>=22 or month==7 and day<=22:
        print('您的星座是巨蟹座')
    elif month==7 and day>=23 or month==8 and day<=22:
        print('您的星座是狮子座')
    elif month==8 and day>=23 or month==9 and day<=22:
        print('您的星座是喵座')
    elif month==9 and day>=23 or month==10 and day<=23:
        print('您的星座是天秤座')
    elif month==10 and day>=24 or month==11 and day<=22:
        print('您的星座是天蝎座')
    elif month==11 and day>=23 or month==12 and day<=21:
        print('您的星座是射手座')
    elif month==12 and day>=22 or month==1 and day<=19:
        print('您的星座是摩羯座')
    elif month==1 and day>=20 or month==2 and day<=18:
        print('您的星座是水瓶座')
    elif month==2 and day>=19 or month==3 and day<=20:
        print('您的星座是双鱼座')
    show_menu()
def main():
    show_logo()
    show_menu()
if __name__=='__main__':
    main()

 

【提示】

部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:

https://python.codemao.cn


回复

上一页1 页 / 共 1下一页
Vincent_xiaoboVincent_xiaobo

做的真好

点赞0


评论