利用Python函数实现一个万历表完整示例
作者:做个不一样的小丑 发布时间:2022-06-30 18:06:22
标签:Python,函数,万历表
前言
大家可以根据格式化打印字符去调一下最后的输出,不过有中文好像不好调整,可以换成星期的单词,这样应该会好一点,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()
总结
来源:https://blog.csdn.net/hmh4640219/article/details/112910277


猜你喜欢
- 本文实例讲述了Python实现可获取网易页面所有文本信息的网易网络爬虫功能。分享给大家供大家参考,具体如下:#coding=utf-8#--
- 这几天在学习PyQt编程,用CSDN来记录一下学过的东西,免得以后忘记了大笑import sys from PyQt4 import QtG
- 简 介: 根据文档安装指南 介绍了在本机安装PaddlePaddle的步骤。关键词: PaddlePaddle,pip,安装§01 安装Pa
- 一个非常简单的将半角"转换为中文"的asp函数function new_str(str) 
- Python与Perl,C和Java语言等有许多相似之处。不过,也有语言之间有一些明确的区别。本章的目的是让你迅速学习Python的语法。第
- 请问,如何在ACCESS数据库和SQL SERVER数据库中查询?
- //比较数组是否相同 modeler.compArray=function(array1,array2) { &nb
- 本文实例讲述了python3 常见解密加密算法。分享给大家供大家参考,具体如下:一.使用base64Base64编码,64指A-Z、a-z、
- 设计页面时,经常会从一个页面打开一个子窗口以供浏览者查看。通常,这种子窗口中的内容一经浏览者看过,对于浏览者而言就不再需要,而他们常常会忘记
- 本文实例为大家分享了OpenLayers3实现图层控件的具体代码,供大家参考,具体内容如下1. 前言在实际应用中,我们将加载到地图容器中的图
- 本文实例讲述了Python 异常的捕获、异常的传递与主动抛出异常操作。分享给大家供大家参考,具体如下:异常的捕获demo.py(异常的捕获)
- Python模块,简单说就是一个.py文件,其中可以包含我们需要的任意Python代码。迄今为止,我们所编写的所有程序都包含在单独的.py文
- 如何导入自己的模块在实际的编程生活当中,我们除了会去import已经存在的包外,当然还会偶尔自定义一些模块,然后来导入,其实一般而言,自定义
- 摘要:python的设计核心原则就是简洁——在这种原则的指导下,诞生了lambda表达式和偏函数:二者都让函数调用变得简洁。本文主要为你介绍
- 二值图像的凸壳指的是包围输入二值图像白色区域的最小的凸多边形的像素集合。skimage中的函数from skimage.morphology
- 字符串格式化输出是python非常重要的基础语法,今天就把三种格式化输出做一个简单的总结,希望对大家有帮助。格式化输出:内容按照一定格式要求
- 安装包网盘下载链接:链接: https://pan.baidu.com/s/1TLLeCnNkHtuTiAxHBl39hg 提取码: 9yg
- 前言现在最流行的本地存储莫过于 cookie 的应用,但浏览器对 cookie 有很多限制,最大的限制在于其对cookie 总大小
- 本文实例讲述了Python获取DLL和EXE文件版本号的方法。分享给大家供大家参考。具体实现方法如下:import win32apidef
- 1 环境准备192.168.1.34 服务器A(主机)192.168.1.35 服务器B(从机)2 安装mysqlMySQL版本:这里采用S