Python计算一个给定时间点前一个月和后一个月第一天的方法


Posted in Python onMay 29, 2018

本文实例讲述了Python计算一个给定时间点前一个月和后一个月第一天的方法。分享给大家供大家参考,具体如下:

python如何获取一个时间点的前一个月和后一个月,网上虽然有很多教程,但是本人感觉太杂了而且不太好用,研究一番之后决定提供一种方法和思路。

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import datetime
import calendar
time = datetime.date(2017, 7, 20) #年,月,日
#求该月第一天
first_day = datetime.date(time.year, time.month, 1)
print u'该月第一天:' + str(first_day)
#求前一个月的第一天
#前一个月最后一天
pre_month = first_day - datetime.timedelta(days = 1) #timedelta是一个不错的函数
print u'前一个月最后一天:' + str(pre_month)
#前一个月的第一天
first_day_of_pre_month = datetime.date(pre_month.year, pre_month.month, 1)
print u'前一个月的第一天:' + str(first_day_of_pre_month)
#求后一个月的第一天
days_num = calendar.monthrange(first_day.year, first_day.month)[1] #获取一个月有多少天
first_day_of_next_month = first_day + datetime.timedelta(days = days_num) #当月的最后一天只需要days_num-1即可
print u'后一个月的第一天:' + str(first_day_of_next_month)

运行结果如下

该月第一天:2017-07-01
前一个月最后一天:2017-06-30
前一个月的第一天:2017-06-01
后一个月的第一天:2017-08-01

Python 相关文章推荐
一个超级简单的python web程序
Sep 11 Python
Python for Informatics 第11章之正则表达式(二)
Apr 21 Python
Python yield 使用方法浅析
May 20 Python
Python决策树和随机森林算法实例详解
Jan 30 Python
python3+PyQt5实现拖放功能
Apr 24 Python
Python函数基础实例详解【函数嵌套,命名空间,函数对象,闭包函数等】
Mar 30 Python
Python语言进阶知识点总结
May 28 Python
python并发编程 Process对象的其他属性方法join方法详解
Aug 20 Python
Python绘图实现显示中文
Dec 04 Python
python selenium 获取接口数据的实现
Dec 07 Python
浅谈Python从全局与局部变量到装饰器的相关知识
Jun 21 Python
python ConfigParser库的使用及遇到的坑
Feb 12 Python
PyTorch CNN实战之MNIST手写数字识别示例
May 29 #Python
Python根据指定日期计算后n天,前n天是哪一天的方法
May 29 #Python
python 将md5转为16字节的方法
May 29 #Python
python 利用栈和队列模拟递归的过程
May 29 #Python
查看django执行的sql语句及消耗时间的两种方法
May 29 #Python
让Django支持Sql Server作后端数据库的方法
May 29 #Python
Django 浅谈根据配置生成SQL语句的问题
May 29 #Python
You might like
一拳超人中怪人协会钦定! S级别最强四人!
2020/03/02 日漫
PHP随机数生成代码与使用实例分析
2011/04/08 PHP
PHP封装函数实现生成随机的字符串验证码
2017/01/24 PHP
PHP设计模式之观察者模式定义与用法示例
2018/08/04 PHP
在 IE 中调用 javascript 打开 Excel 表
2006/12/21 Javascript
jQuery :nth-child前有无空格的区别分析
2011/07/11 Javascript
artdialog的图片/标题以及关闭按钮不显示的解决方法
2013/06/27 Javascript
图片上传插件jquery.uploadify详解
2013/11/15 Javascript
jQuery学习笔记之jQuery中的$
2015/01/19 Javascript
Fullpage.js固定导航栏-实现定位导航栏
2016/03/17 Javascript
微信小程序request出现400的问题解决办法
2017/05/23 Javascript
Nodejs+express+ejs简单使用实例代码
2017/09/18 NodeJs
jQuery判断网页是否已经滚动到浏览器底部的实现方法
2017/10/27 jQuery
浅谈webpack构建工具配置和常用插件总结
2020/05/11 Javascript
Python爬豆瓣电影实例
2018/02/23 Python
python 将数据保存为excel的xls格式(实例讲解)
2018/05/03 Python
Python学习小技巧总结
2018/06/10 Python
Python3爬虫学习入门教程
2018/12/11 Python
Django项目创建到启动详解(最全最详细)
2019/09/07 Python
python树的同构学习笔记
2019/09/14 Python
Python:slice与indices的用法
2019/11/25 Python
PyQt5多线程刷新界面防假死示例
2019/12/13 Python
tensorflow 限制显存大小的实现
2020/02/03 Python
python中with用法讲解
2020/02/07 Python
python argparse模块通过后台传递参数实例
2020/04/20 Python
Python局部变量与全局变量区别原理解析
2020/07/14 Python
django跳转页面传参的实现
2020/09/17 Python
CSS3教程:边框属性border的极致应用
2009/04/02 HTML / CSS
CSS3 box-shadow属性实例详解
2020/06/19 HTML / CSS
经典婚礼主持词
2014/03/13 职场文书
2014年生产管理工作总结
2014/12/23 职场文书
清洁工个人总结
2015/03/04 职场文书
2016年基层党组织创先争优承诺书
2016/03/25 职场文书
PHP实现rar解压读取扩展包小结
2021/06/03 PHP
MySQL的全局锁和表级锁的具体使用
2021/08/23 MySQL
JavaScript正则表达式实现注册信息校验功能
2022/05/30 Java/Android