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 相关文章推荐
读写json中文ASCII乱码问题的解决方法
Nov 05 Python
Python使用正则表达式抓取网页图片的方法示例
Apr 21 Python
获取Django项目的全部url方法详解
Oct 26 Python
Python决策树之基于信息增益的特征选择示例
Jun 25 Python
Python实现简单查找最长子串功能示例
Feb 26 Python
Python 实现微信防撤回功能
Apr 29 Python
Python中pymysql 模块的使用详解
Aug 12 Python
python实现统计代码行数的小工具
Sep 19 Python
python实现在一个画布上画多个子图
Jan 19 Python
pycharm 实现调试窗口恢复
Feb 05 Python
Python趣味挑战之实现简易版音乐播放器
May 28 Python
Python趣味挑战之用pygame实现简单的金币旋转效果
May 31 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
Codeigniter检测表单post数据的方法
2015/03/21 PHP
Extjs在exlipse中设置自动提示的方法
2010/04/07 Javascript
浅析jquery的js图表组件highcharts
2014/03/06 Javascript
IE中图片的onload事件无效问题和解决方法
2014/06/06 Javascript
一款基jquery超炫的动画导航菜单可响应单击事件
2014/11/02 Javascript
jQuery的ajax下载blob文件
2016/07/21 Javascript
JavaScript与java语言有什么不同
2016/09/22 Javascript
详解nodejs 文本操作模块-fs模块(四)
2016/12/22 NodeJs
js监听input输入框值的实时变化实例
2017/01/26 Javascript
vue awesome swiper异步加载数据出现的bug问题
2018/07/03 Javascript
vue实现父子组件之间的通信以及兄弟组件的通信功能示例
2019/01/29 Javascript
JS实现百度搜索框
2021/02/25 Javascript
django与小程序实现登录验证功能的示例代码
2019/02/19 Python
如何在Django配置文件里配置session链接
2019/08/06 Python
Python中调用其他程序的方式详解
2019/08/06 Python
python图像处理模块Pillow的学习详解
2019/10/09 Python
python pyenv多版本管理工具的使用
2019/12/23 Python
tensorflow2.0保存和恢复模型3种方法
2020/02/03 Python
10个示例带你掌握python中的元组
2020/11/23 Python
中国酒类在线零售网站:酒仙网
2016/08/20 全球购物
Radley英国官网:英国莱德利小狗包
2019/03/21 全球购物
波兰快递服务:Globkurier.pl
2019/11/08 全球购物
美国购买隐形眼镜网站:Lenses For Less
2020/07/05 全球购物
2014年公务员思想汇报范文:全心全意为人民服务
2014/03/06 职场文书
《故乡》教学反思
2014/04/10 职场文书
党员教师一句话承诺
2014/05/30 职场文书
最美护士演讲稿
2014/08/27 职场文书
高中军训的心得体会
2014/09/01 职场文书
上课说话检讨书500字
2014/11/01 职场文书
学校党风廉政建设调研报告
2015/01/01 职场文书
个人优缺点总结
2015/02/28 职场文书
学术会议通知
2015/04/15 职场文书
python自然语言处理之字典树知识总结
2021/04/25 Python
使用php的mail()函数实现发送邮件功能
2021/06/03 PHP
SpringBoot2 参数管理实践之入参出参与校验的方式
2021/06/16 Java/Android
SQL实现LeetCode(180.连续的数字)
2021/08/04 MySQL