利用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开发常用的一些开源Package分享
Feb 14 Python
通过实例浅析Python对比C语言的编程思想差异
Aug 30 Python
老生常谈python之鸭子类和多态
Jun 13 Python
酷! 程序员用Python带你玩转冲顶大会
Jan 17 Python
Window10+Python3.5安装opencv的教程推荐
Apr 02 Python
python+flask实现API的方法
Nov 21 Python
python使用turtle绘制国际象棋棋盘
May 23 Python
利用Python库Scapy解析pcap文件的方法
Jul 23 Python
python按行读取文件并找出其中指定字符串
Aug 08 Python
Windows系统下pycharm中的pip换源
Feb 23 Python
python 操作excel表格的方法
Dec 05 Python
Python爬虫之爬取某文库文档数据
Apr 21 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与MYSQL中UTF8编码的中文排序实例
2014/10/21 PHP
PHP封装的XML简单操作类完整实例
2017/11/13 PHP
PHP定义字符串的四种方式详解
2018/02/06 PHP
JavaScript动态调整TextArea高度的代码
2010/12/28 Javascript
通过JavaScript控制字体大小的代码
2011/10/04 Javascript
深入浅析JavaScript中对事件的三种监听方式
2015/09/29 Javascript
JavaScript学习笔记之检测客户端类型是(引擎、浏览器、平台、操作系统、移动设备)
2015/12/03 Javascript
jQuery的框架介绍
2016/05/11 Javascript
JS正则匹配中文的方法示例
2017/01/06 Javascript
React操作真实DOM实现动态吸底部的示例
2017/10/23 Javascript
layui中的switch开关实现方法
2019/09/03 Javascript
基于JS正则表达式实现模板数据动态渲染(实现思路详解)
2020/03/07 Javascript
Python的动态重新封装的教程
2015/04/11 Python
Python查找两个有序列表中位数的方法【基于归并算法】
2018/04/20 Python
python矩阵转换为一维数组的实例
2018/06/05 Python
解决python中使用plot画图,图不显示的问题
2018/07/04 Python
Numpy之random函数使用学习
2019/01/29 Python
解决Python中定时任务线程无法自动退出的问题
2019/02/18 Python
Python基本类型的连接组合和互相转换方式(13种)
2019/12/16 Python
python修改微信和支付宝步数的示例代码
2020/10/12 Python
戴尔美国官方折扣店:Dell Outlet
2018/02/13 全球购物
蔻驰法国官网:COACH法国
2018/11/14 全球购物
经济学博士求职自荐信范文
2013/11/23 职场文书
金融行业务员的自我评价
2013/12/13 职场文书
企业厂长岗位职责
2013/12/17 职场文书
学校采购员岗位职责
2014/01/02 职场文书
婚假请假条格式及范文
2014/04/10 职场文书
优秀少先队工作者事迹材料
2014/05/13 职场文书
群众路线教育实践活动剖析材料
2014/09/30 职场文书
法人代表证明书格式
2014/10/01 职场文书
升职自荐信怎么写
2015/03/05 职场文书
2015年公司工作总结
2015/04/25 职场文书
骆驼祥子读书笔记
2015/06/26 职场文书
《我在为谁工作》:工作的质量往往决定生活的质量
2019/12/27 职场文书
读《茶花女》有感:山茶花的盛开与凋零
2020/01/17 职场文书
Python TypeError: ‘float‘ object is not subscriptable错误解决
2022/12/24 Python