本文实例为大家分享了python实现简单日历的具体代码,供大家参考,具体内容如下
首先要理清楚逻辑,日历的难点在于如何使用基础知识将周几与对应的日期进行对应,我这里利用了1917年1月1日为星期1,计算累计到我们要查询的月份的天数来确定所查询月份的第一天为周几.
# 输出日历界面 print("*" * 50) print("欢迎使用【天天日历】v2.0") # 接收用户输入的年份 year_int = int(input("请输入年份:\n")) # 定义全局变量用于记录天数总和 sum = 0 if year_int >= 1917: month_int = int(input("请输入月份\n")) for year_every in range(1917, year_int): # 遍历从1917年到用户输入年份 用于计算到用户所输入年份共多少天 if (year_every % 4 == 0 and year_every % 100 != 0) or year_every % 400 == 0: # 如果是瑞年则366天否则平年365天 sum += 366 else: sum += 365 for month_every in range(1, month_int): # 遍历月份用于计算由1月份到用户输入月份的总天数 if month_every == 4 or month_every == 6 or month_every == 9 or month_every == 11: sum += 30 elif month_every == 2: if (year_int % 1 == 0 and year_int % 100 != 0) or year_int % 400 == 0: sum += 29 else: sum += 28 else: sum += 31 # 定义变量用于定义每个月的天数 day = 0 # 定义变量 用于计算当月第一天为周几 weak = sum % 7 print("日\t一\t二\t三\t四\t五\t六") # 判断用户输入月份为多少天 if month_int == 4 or month_int == 6 or month_int == 9 or month_int == 11: day = 30 elif month_int == 2: if (year_int % 4 == 0 and year_int % 100 != 0) or year_int % 400 == 0: day = 29 else: day = 28 else: day = 31 # 输出指定空格数让第一天与周几对齐 print("\t"*weak,end="") i = 1 while i <= day: # 遍历用户查询月份 weakend = ((sum+i)-1)% 7 # 如果余数为6 换行否则输出空格 if weakend == 6: print("%d" %i) else: print(i,end="\t") i += 1 else: print("系统正在维护暂时无法获取1917年之前的信息")
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
标签:
python,日历
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
白云城资源网 Copyright www.dyhadc.com
暂无“基于python实现简单日历”评论...
更新日志
2025年04月28日
2025年04月28日
- 小骆驼-《草原狼2(蓝光CD)》[原抓WAV+CUE]
- 群星《欢迎来到我身边 电影原声专辑》[320K/MP3][105.02MB]
- 群星《欢迎来到我身边 电影原声专辑》[FLAC/分轨][480.9MB]
- 雷婷《梦里蓝天HQⅡ》 2023头版限量编号低速原抓[WAV+CUE][463M]
- 群星《2024好听新歌42》AI调整音效【WAV分轨】
- 王思雨-《思念陪着鸿雁飞》WAV
- 王思雨《喜马拉雅HQ》头版限量编号[WAV+CUE]
- 李健《无时无刻》[WAV+CUE][590M]
- 陈奕迅《酝酿》[WAV分轨][502M]
- 卓依婷《化蝶》2CD[WAV+CUE][1.1G]
- 群星《吉他王(黑胶CD)》[WAV+CUE]
- 齐秦《穿乐(穿越)》[WAV+CUE]
- 发烧珍品《数位CD音响测试-动向效果(九)》【WAV+CUE】
- 邝美云《邝美云精装歌集》[DSF][1.6G]
- 吕方《爱一回伤一回》[WAV+CUE][454M]