APP下载

基于Python语言的万年历功能的实现

2021-07-13王娜

信息记录材料 2021年6期
关键词:定义语言

王 娜

(衡水学院 河北 衡水 053000)

1 引言

Python的含义是“蟒蛇”,它的拥有者是“Python Software Foundation”,简称PSF,最开始是由Guido van Rossum所开发,发展至今已有30年了。Python语言拥有高效的易于操作的数据结构,是一门解释性语言。Python语言具有丰富的标准库和第三方库,由于它的开放性,第三方库还在不断的增加当中,可以解决生活中方方面面的问题。目前Python广泛应用于机器学习、数据分析和网络爬虫等方面。

2 万年历制作思路

万年历,顾名思义,就是可以查看任意年份月份的日历。在交互窗口输入年份和月份,就可以出现跟日历一样的图案。

制作万年历之前,必须做以下准备。

(1)判断某年是否为闰年:def isLeapYear(year): #判断是否是瑞年

(2)列举出每个月的天数并返回:def monthDay(year,month): #12个月的天数

(3)统计出从1900年1月1日到上个月的天数之和:

def totalDay(year,month):

days = 0

for index_year in range(1900,year):

days += 366 if isLeapYear(index_year) else 365

for index_month in range(1,month):

days += monthDay(year,index_month)

return days

也就是说,如果想看2021年3月份的日历,首先计算一下从1900年1月1日开始,到2021年2月底一共多少天。为什么要从1900年的1月1日开始算呢?因为这一天是星期一。从这一天开始,也是为了后续的日期比较好计算是星期几。

(4)计算出本月的1日是星期几:space_num = totalDay(year,month) % 7+1 #1号是星期几。

(5)最后分别计算出本月的每天是星期几,对号入座,注意每7日换行,打印出来。

在计算并打印日历时,需注意两个问题:一是如何让日期和相应的星期对齐,如1号是星期日,那么1号就要放到星期日的下面,2号就要放到星期一的下面,以此类推;二是如何实现换行,如我的排列是“日一二三四五六”,那么在星期六对应的日期后就应该换行。比如7号是星期六,放在六的下面,那么8号就得是下一行的开头,放在日的下面。……

登录APP查看全文

猜你喜欢

定义语言
永远不要用“起点”定义自己
定义“风格”
语言是刀
让语言描写摇曳多姿
多向度交往对语言磨蚀的补正之道
成功的定义
我有我语言
论语言的“得体”
修辞学的重大定义
山的定义