龙空技术网

Python实战练手小项目-推算日期 Python实战练手小项目-推算日期

Super招财喵儿 77

前言:

如今看官们对“python输入年月日输出天数”大约比较讲究,各位老铁们都想要知道一些“python输入年月日输出天数”的相关资讯。那么小编同时在网上汇集了一些对于“python输入年月日输出天数””的相关文章,希望兄弟们能喜欢,朋友们一起来学习一下吧!

实操案例十四。

再来看一下实操案例十四的第二个任务,叫推算几天后的日期。实际上在14章当中,给大家讲的是关于模块的事情。Python当中有很多很多的第三方模块值得大家去学习,它可以帮我们实现各种各样的功能。今天推算日期的模块叫什么?它叫做datetime,不需要安装,直接就可以使用的。

·首先去输一个字符串,比如2020年的8月8号,就可以输20200808。

·再输一个间隔的天数之后,它会给你推算出来在刚才输入的基础上往后间隔了多长时间,是哪一号。

·现在来给大家实现这个功能,新建一个Python文件叫做demo2。

·在这的时候既然它跟日期时间有关,所以要导入一个模块叫datetime,叫做input_date。输入时输入日期,在这的时候写的input,请输入开始日期。输入开始日期也不是随便输入的,会给一个格式,比如20200808,20200808。

·输完之后按回车,实际上这句话不写也是可以的,按回车。

·要是手抖了,一不小心了输个空格怎么办?有这种情况,要是一不小心手抖了输空格怎么办?所以要去掉前后的空格,然后开始进行split的分割。

·datestr怎么分割?从0开始,这是一个字符串,0123,0123是年,所以在这的时候要给它拆分出来,叫做indate。

·indate要从1拆到几?到4,它是不包括4的。从0开始,0,1,2,3是不包括4的。

·然后去连接上下划线,再进行拆分,叫indate。刚才是不包括4的,现在应该从4开始拆,这个是索引为,这是4,5是不包括6的。所以是16,这是字符串的切片操作。

·然后再去连上indate,刚才是到是不包括6的,所以现在从6是不是一直切到最后就可以了。

·在组成这样的字符串之后需要进行格式的转换,所以叫将字符串转成日期时间,需要用到datetime当中的datetime这个类,它有一个叫strptime,给我一个字符串,再给我一个需要转换的格式,这个叫做年,m是小写的,大写不行,m是小写的,这个叫年月日。

·把这个返回去之后,这是日期时间类型,需要数间隔的天数,在这的时候开始写上main,要推算几天后的日期,先把日期先叫sdate,去调用这一个函数,调用这函数会得到这样的日期时间型,需要干什么?请输入间隔天数,然后需要去计算in_num,要把它转成整数,请输入间隔的天数。

·做完间隔天数之后就可以去使用它了,它有个叫什么?这个叫sdate,是否刚才得到返回值,让它去连,加上,这不是连接叫加上datetime,当中有一个叫做timedelta(),有个这样的方法,在这告诉我,就是它间隔天数吗?在这告诉我days几天,叫in_num,然后将它的结果再去放到datetime当中去存储。

·现在再去输出推算的日期是什么?您推算的日期是?str()再连上date,现在运行20200808,然后它在这告诉我报了一个错,报了一个什么错?在这进行strptime()进行传参的时候,它有一个,但是必须是什么str类型的,所以在这传参应该传的是datestr,传错参数了。

现在20200808间隔10天,告诉你2020年的8月18号。现在要这样写,20200808看到吗?间隔天数是-10,它会告诉你是多少?是7月29号。如果在整个的结果不满意的时候,可以对它进行分割,它叫做split,按照空格去给它拆,拆完之后要索引为0的。

按照空格会拆分出两部分,一个是2020-07-29空格,拆分完之后就一部分年月日,一部分是时分秒,而不要时分秒,只要年月日20200808输个-10,它会告诉你是2020-07-29,就比刚才不要的年月日十分秒会更好看一些。

这个就是第14章当中的第二个任务,叫做推算几天后的日期。还有很多的模块,大家不要着急,慢慢去学习。

标签: #python输入年月日输出天数