python获取本周、上周、本月、上月及本季的时间代码实例


Posted in Python onSeptember 08, 2020

前言

本文主要介绍的是关于利用python 获取本周,上周,本月,上月,本季的时间,话不多说了,来一起看看实现的方法吧

示例代码:

import datetime
from datetime import timedelta
 
now = datetime.datetime.now()
 
# 今天
today = now
print('--- today = {}'.format(today))
 
# 昨天
yesterday = now - timedelta(days=1)
print('--- yesterday = {}'.format(yesterday))
 
# 明天
tomorrow = now + timedelta(days=1)
print('--- tomorrow = {}'.format(tomorrow))
 
# 当前季度
now_quarter = now.month / 3 if now.month % 3 == 0 else now.month / 3 + 1
print('--- now_quarter = {}'.format(now_quarter))
 
# 本周第一天和最后一天
this_week_start = now - timedelta(days=now.weekday())
this_week_end = now + timedelta(days=6 - now.weekday())
print('--- this_week_start = {} this_week_end = {}'.format(this_week_start, this_week_end))
 
# 上周第一天和最后一天
last_week_start = now - timedelta(days=now.weekday() + 7)
last_week_end = now - timedelta(days=now.weekday() + 1)
print('--- last_week_start = {} last_week_end = {}'.format(last_week_start, last_week_end))
 
# 本月第一天和最后一天
this_month_start = datetime.datetime(now.year, now.month, 1)
this_month_end = datetime.datetime(now.year, now.month + 1, 1) - timedelta(days=1)+ datetime.timedelta(
	hours=23, minutes=59, seconds=59)
print('--- this_month_start = {} this_month_end = {}'.format(this_month_start, this_month_end))
 
# 上月第一天和最后一天
last_month_end = this_month_start - timedelta(days=1)+ datetime.timedelta(
	hours=23, minutes=59, seconds=59)
last_month_start = datetime.datetime(last_month_end.year, last_month_end.month, 1)
print('--- last_month_end = {} last_month_start = {}'.format(last_month_end, last_month_start))
 
# 本季第一天和最后一天
month = (now.month - 1) - (now.month - 1) % 3 + 1
this_quarter_start = datetime.datetime(now.year, month, 1)
this_quarter_end = datetime.datetime(now.year, month + 3, 1) - timedelta(days=1)+ datetime.timedelta(
	hours=23, minutes=59, seconds=59)
print('--- this_quarter_start = {} this_quarter_end = {}'.format(this_quarter_start, this_quarter_end))
 
# 上季第一天和最后一天
last_quarter_end = this_quarter_start - timedelta(days=1)+ datetime.timedelta(
	hours=23, minutes=59, seconds=59)
last_quarter_start = datetime.datetime(last_quarter_end.year, last_quarter_end.month - 2, 1)
print('--- last_quarter_start = {} last_quarter_end = {}'.format(last_quarter_start, last_quarter_end))
 
# 本年第一天和最后一天
this_year_start = datetime.datetime(now.year, 1, 1)
this_year_end = datetime.datetime(now.year + 1, 1, 1) - timedelta(days=1)+ datetime.timedelta(
	hours=23, minutes=59, seconds=59)
print('--- this_year_start = {} this_year_end = {}'.format(this_year_start, this_year_end))
 
# 去年第一天和最后一天
last_year_end = this_year_start - timedelta(days=1)+ datetime.timedelta(
	hours=23, minutes=59, seconds=59)
last_year_start = datetime.datetime(last_year_end.year, 1, 1)
print('--- last_year_start = {} last_year_end = {}'.format(last_year_start, last_year_end))

总结

到此这篇关于利用python获取本周、上周、本月、上月及本季的时间的文章就介绍到这了,更多相关python获取本周、上周、本月、上月及本季时间内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python变量不能以数字打头详解
Jul 06 Python
python装饰器初探(推荐)
Jul 21 Python
win系统下为Python3.5安装flask-mongoengine 库
Dec 20 Python
python中urllib.unquote乱码的原因与解决方法
Apr 24 Python
Python 结巴分词实现关键词抽取分析
Oct 21 Python
pygame游戏之旅 载入小车图片、更新窗口
Nov 20 Python
Python unittest 简单实现参数化的方法
Nov 30 Python
Python爬虫学习之翻译小程序
Jul 30 Python
浅谈图像处理中掩膜(mask)的意义
Feb 19 Python
Python脚本调试工具安装过程
Jan 11 Python
Python一些基本的图像操作和处理总结
Jun 23 Python
Python中的程序流程控制语句
Feb 24 Python
Python 使用Opencv实现目标检测与识别的示例代码
Sep 08 #Python
Python requests接口测试实现代码
Sep 08 #Python
Python unittest装饰器实现原理及代码
Sep 08 #Python
Python selenium环境搭建实现过程解析
Sep 08 #Python
Python unittest生成测试报告过程解析
Sep 08 #Python
Python使用Selenium模拟浏览器自动操作功能
Sep 08 #Python
Python unittest如何生成HTMLTestRunner模块
Sep 08 #Python
You might like
php 按指定元素值去除数组元素的实现方法
2011/11/04 PHP
给网站上的广告“加速”显示的方法
2007/04/08 Javascript
JS 判断代码全收集
2009/04/28 Javascript
javascript 检测浏览器类型和版本的代码
2009/09/15 Javascript
javascript 拖动表格行实现代码
2011/05/05 Javascript
jquery实现右键菜单插件
2015/03/29 Javascript
javascript实现网页字符定位的方法
2015/07/14 Javascript
JS如何判断json是否为空
2016/07/06 Javascript
深入浅析JavaScript中的3DES
2016/08/24 Javascript
快速移动鼠标触发问题及解决方法(ECharts外部调用保存为图片操作及工作流接线mouseenter和mouseleave)
2016/08/29 Javascript
为JQuery EasyUI 表单组件增加焦点切换功能的方法
2017/04/13 jQuery
使用Xcache缓存器加速PHP网站的配置方法
2017/04/22 Javascript
vue 2.0路由之路由嵌套示例详解
2017/05/08 Javascript
微信小程序开发教程之增加mixin扩展
2017/08/09 Javascript
用Webpack构建Vue项目的实践
2017/11/07 Javascript
vue2过滤器模糊查询方法
2018/09/16 Javascript
layui-laydate时间日历控件使用方法详解
2018/11/15 Javascript
vue中轮训器的使用
2019/01/27 Javascript
vue使用一些外部插件及样式的配置代码
2019/11/18 Javascript
微信小程序转化为uni-app项目的方法示例
2020/05/22 Javascript
vue 基于abstract 路由模式 实现页面内嵌的示例代码
2020/12/14 Vue.js
解决python2 绘图title,xlabel,ylabel出现中文乱码的问题
2019/01/29 Python
Python CVXOPT模块安装及使用解析
2019/08/01 Python
Keras使用tensorboard显示训练过程的实例
2020/02/15 Python
Python3.6安装卸载、执行命令、执行py文件的方法详解
2020/02/20 Python
Softmax函数原理及Python实现过程解析
2020/05/22 Python
tensorflow 大于某个值为1,小于为0的实例
2020/06/30 Python
深入了解Python 变量作用域
2020/07/24 Python
基于PyTorch中view的用法说明
2021/03/03 Python
什么时候用assert
2015/05/08 面试题
岗位职责的构建方法
2014/02/01 职场文书
大学班级干部的自我评价分享
2014/02/10 职场文书
旅游管理专业大学生职业规划书
2014/02/27 职场文书
争先创优公开承诺书
2014/08/30 职场文书
初中作文评语
2014/12/25 职场文书
八月迷情观后感
2015/06/11 职场文书