利用Python函数实现一个万历表完整示例


Posted in Python onJanuary 23, 2021

前言

大家可以根据格式化打印字符去调一下最后的输出,不过有中文好像不好调整,可以换成星期的单词,这样应该会好一点,format()函数可以用来格式化打印字符,format()可以使用字符串去调用,也可以独自使用。

可以点进格式化打印字符了解一下哦

示例代码

# 判断是否闰年
def isleap(year):
 return year % 4 == 0 and year % 100 != 0 or year % 400 == 0

# 判断月的天数
def month_days(year,month):
 if month in [1,3,5,7,8,10,12]:
 return 31
 if month == 2:
 if isleap(year):
 return 29
 else:
 return 28
 return 30

# 1900年到输入年份的总天数
def total_days(year):
 s = 0
 for i in range(1900,year):
 if isleap(i):
 s += 366
 else:
 s += 365
 return s

# 1月到输入月份的天数
def days(year,month):
 s = 0
 for i in range(1,month):
 s += month_days(year,i)
 return s

# 获取某年某月的日历
def monthcalendar(year,month):
 total = total_days(year) + days(year, month)
 a = total % 7
 print('星期日'.center(8, ' '), end='')
 print('星期一'.center(8, ' '), end='')
 print('星期二'.center(8, ' '), end='')
 print('星期三'.center(8, ' '), end='')
 print('星期四'.center(8, ' '), end='')
 print('星期五'.center(8, ' '), end='')
 print('星期六'.center(8, ' '), end='')
 print()
 count = 0
 for i in range(0, month_days(year, month) + a + 1):
 if i <= a:
 print(format(' ','10'), end='')
 count += 1
 else:
 print(format(str(i - a),'^10'), end='')
 count += 1
 if count == 7:
 count = 0
 print()
 print()

# 输出某年一年的日历
def yearcalendar(year):
 for i in range(1,13):
 print(f'{i}月:')
 monthcalendar(year,i)
 print()

# 开始函数
def start():
 while True:
 print('-------欢迎来到万历表查询页面-------')
 print('1.查询某年的日历\n2.查询某年某月的日历\n3.退出查询')
 print('---------------------------------')
 n = int(input('请输入你的操作:'))
 if n == 1:
 year = int(input('请输入要查询的年份:'))
 yearcalendar(year)
 elif n == 2:
 year = int(input('请输入要查询的年份:'))
 month = int(input('请输入1-12:'))
 monthcalendar(year,month)
 elif n == 3:
 print('退出成功')
 break
 else:
 print('指令错误,请重新输入!!!')
if __name__ == '__main__':
 start()

总结

到此这篇关于利用Python函数实现一个万历表的文章就介绍到这了,更多相关Python函数实现万历表内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
简单使用Python自动生成文章
Dec 25 Python
python实现发送邮件功能
Jul 22 Python
tensorflow实现softma识别MNIST
Mar 12 Python
CentOS7下python3.7.0安装教程
Jul 30 Python
对python中的 os.mkdir和os.mkdirs详解
Oct 16 Python
解决python 自动安装缺少模块的问题
Oct 22 Python
python 生成图形验证码的方法示例
Nov 11 Python
python爬虫获取小区经纬度以及结构化地址
Dec 30 Python
Python多图片合并PDF的方法
Jan 03 Python
Python Tkinter 简单登录界面的实现
Jun 14 Python
小白教你PyCharm从下载到安装再到科学使用PyCharm2020最新激活码
Sep 25 Python
python绘制高斯曲线
Feb 19 Python
python将YUV420P文件转PNG图片格式的两种方法
Jan 22 #Python
如何使用Python进行PDF图片识别OCR
Jan 22 #Python
详解pandas映射与数据转换
Jan 22 #Python
python实现简单的井字棋游戏(gui界面)
Jan 22 #Python
Django url 路由匹配过程详解
Jan 22 #Python
浅析pandas随机排列与随机抽样
Jan 22 #Python
python 合并多个excel中同名的sheet
Jan 22 #Python
You might like
PHP使用pcntl_fork实现多进程下载图片的方法
2014/12/16 PHP
PHP项目多语言配置平台实现过程解析
2020/05/18 PHP
JQuery触发radio或checkbox的change事件
2012/12/18 Javascript
javascript变量作用域使用中常见错误总结
2013/03/26 Javascript
JS实现Enter键跳转及控件获得焦点
2013/08/12 Javascript
JavaScript原生对象之Date对象的属性和方法详解
2015/03/13 Javascript
html判断当前页面是否在iframe中的实例
2016/11/30 Javascript
echarts3 使用总结(绘制各种图表,地图)
2017/01/05 Javascript
jq stop()和:is(:animated)的用法及区别(详解)
2017/02/12 Javascript
在bootstrap中实现轮播图实例代码
2017/06/11 Javascript
详解webpack多页面配置记录
2018/01/22 Javascript
Layui表格行工具事件与数据回填方法
2019/09/13 Javascript
细述Javascript的加法运算符的具体使用
2019/10/18 Javascript
jQuery实现弹出层效果
2019/12/10 jQuery
vue路由权限校验功能的实现代码
2020/06/07 Javascript
[03:22]DSPL第一期精彩集锦:酷炫到底!
2014/11/07 DOTA
python mysqldb连接数据库
2009/03/16 Python
Python编写一个闹钟功能
2017/07/11 Python
django 自定义filter 判断if var in list的例子
2019/08/20 Python
Django REST框架创建一个简单的Api实例讲解
2019/11/05 Python
Pandas数据离散化原理及实例解析
2019/11/16 Python
解决pycharm启动后总是不停的updating indices...indexing的问题
2019/11/27 Python
Python编程快速上手——strip()函数的正则表达式实现方法分析
2020/02/29 Python
Python要求O(n)复杂度求无序列表中第K的大元素实例
2020/04/02 Python
美国室内和室外装饰花盆购物网站:ePlanters
2019/03/22 全球购物
StudentUniverse英国:学生航班、酒店和旅游
2019/08/25 全球购物
高分子材料个人求职信范文
2013/09/25 职场文书
物理教师自荐信范文
2013/12/28 职场文书
优秀食品类广告词
2014/03/19 职场文书
应届生求职信
2014/05/31 职场文书
主要领导对照检查材料
2014/08/26 职场文书
个人纪律作风整改措施思想汇报
2014/10/12 职场文书
2015年禁毒工作总结
2015/04/30 职场文书
Python游戏开发实例之graphics实现AI五子棋
2021/11/01 Python
Python OpenCV超详细讲解调整大小与图像操作的实现
2022/04/02 Python
sql server偶发出现死锁的解决方法
2022/04/10 SQL Server