Python根据当前日期取去年同星期日期
作者:王者引擎 发布时间:2021-09-14 15:01:48
标签:python,日期
业务的开发时候有一个需求,需要对比当前时间段和去年同星期的时间段的数据,例如当前时间是2019-04-11,是今年的第十五周的周四,如何去取去年的第十五周的周四呢?
查了好多资料没有对应的处理方法,于是自己写了这个方法,如果您有更好的方法,可以留言。
python的datetime模块有个查看日历的方法
date_week_info = datetime.datetime.strptime("2019-04-11", "%Y-%m-%d").isocalendar()
返回<type 'tuple'>: (2019, 15, 4) 意思是2019年的第15周周四
然后处理对应的年周和周几
year_str = date_week_info[0] -1
//取去年的年份
week_str = date_week_info[1] -1
//取相应的周, 因为日历返回的是下标从1开始,而datetime模块内从0开始,所以需要减1
weekday_str = date_week_info[2] %7
//日历中周-到周日是1-7,datetime模块中是0-6,所以进行取余处理。
最后,
date_info_new = time.strptime("%s-%s-%s" % (year_str, week_str, weekday_str),"%Y-%U-%w")
date_info_new_str = time.strftime("%Y-%m-%d", date_info_new)
这样就完成了转换。
完整代码
date_week_info = datetime.datetime.strptime("2019-04-11", "%Y-%m-%d").isocalendar()
year_str = date_week_info[0] -1
week_str = date_week_info[1] -1
weekday_str = date_week_info[2] %7
date_info_new = time.strptime("%s-%s-%s" % (year_str, week_str, weekday_str),"%Y-%U-%w")
last_year_date.append(time.strftime("%Y-%m-%d", date_info_new))
总结
以上所述是小编给大家介绍的Python根据当前日期取去年同星期日期,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!
来源:https://www.jianshu.com/p/7eddc03944db


猜你喜欢
- 目录1.自定义行索引2. 按普通索引选择数据2.1 按普通索引选择单行数据2.2 按行索引选择多行数据3.按位置索引选择数据3.2 按位置索
- 一、环境准备1、安装node.js下载地址:https://nodejs.org/zh-cn/界面展示2、检查node.js版本查看版本的两
- 之前关于 Vue 数据绑定原理的一点分析,最近需要回顾,就顺便发到随笔上了在之前实现一个自己的Mvvm中,用 setter 来观测model
- 本文研究的主要是Python使用pickle模块存储数据报错解决方法,以代码的形式展示,具体如下。首先来了解下pickle模块pickle提
- 本文实例为大家分享了python学生管理系统的具体代码,供大家参考,具体内容如下```name_list = [] # 存储学生信息字典,学
- python中如何for循环把字符串添加到列表?实例:1.单个字符串用for循环添加到列表中:# 把L1中的字符串添加到列表alist里面L
- 以下是关于小编给大家日常收集整理php正则表达式,具体内容请看下文详解吧$str = preg_replace("/(<a.
- 前言在MySQL中跨库查询主要分为两种情况,一种是同服务的跨库查询;另一种是不同服务的跨库查询;它们进行跨库查询是不同的,下面就具体介绍这两
- 此文章主要向大家描述的是MySQL高级查询方法之记录查询的实际操作步骤,以及对其实际操作过程中要用到的代码的详细描述,以下就是文章的主要内容
- 写在前面在QQ群,微信群,论坛中经常帮助使用SQL Server数据库的朋友解决问题,但是有一些最常见最基本的问题,每天都有人问,回答多了也
- 本文实例为大家分享了python实现决策树分类算法的具体代码,供大家参考,具体内容如下1、概述决策树(decision tree)——是一种
- 下面给大家介绍下mysql 8.0.16 初次登录修改密码mysql数据库初始化后初次登录需要修改密码初次登录会碰到下面这个错误ql>
- 一、查看實例名時可用1、服务—SQL Server(实例名),默认实例为(MSSQLSERVER)或在连接企业管理时-查看本地实例2、通過注
- 如果你取相对路径不是在主文件里,可能就会有相对路径问题:"No such file or directory"。因为 p
- 1.下载Linux对应的RPM包http://dev.mysql.com/downloads/mysql/5.6.htmlwget http
- 如下所示:>>> import pandas as pd>>> import numpy as np&g
- 无论是在小得可怜的免费数据库空间或是大型电子商务网站,合理的设计表结构、充分利用空间是十分必要的。这就要求我们对数据库系统的常用数据类型有充
- 前言看到标题,大家就能想起这个需求在很多项目上都能用到。我们部署在Web服务器上的前端应用,既可以用PC浏览器访问,也可以用手机浏览器访问,
- 方法说明:同步版的 fs.realpath() 。语法:fs.realpathSync(path, [cache])由于该方法属于fs模块,
- 1.创建空字典>>> dic = {}>>> type(dic)<type 'dict