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实现进程间通信简单实例
Jul 23 Python
跟老齐学Python之通过Python连接数据库
Oct 28 Python
Python的另外几种语言实现
Jan 29 Python
用Python创建声明性迷你语言的教程
Apr 13 Python
Python+matplotlib实现华丽的文本框演示代码
Jan 22 Python
详解Python中的动态属性和特性
Apr 07 Python
python 计算平均平方误差(MSE)的实例
Jun 29 Python
Django中modelform组件实例用法总结
Feb 10 Python
python中如何打包用户自定义模块
Sep 23 Python
numpy实现RNN原理实现
Mar 02 Python
写一个Python脚本自动爬取Bilibili小视频
Apr 24 Python
python使用glob检索文件的操作
May 20 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
Php中用PDO查询Mysql来避免SQL注入风险的方法
2013/04/25 PHP
php修改上传图片尺寸的方法
2015/04/14 PHP
通过实例解析PHP数据类型转换方法
2020/07/11 PHP
常见JS效果之图片减速度滚动实现代码
2011/12/08 Javascript
一个简单的Ext.XTemplate的实例代码
2012/03/18 Javascript
javascript获取元素偏移量的方法有哪些
2014/06/24 Javascript
详解JS函数重载
2014/12/04 Javascript
jQuery对JSON数据进行排序输出的方法
2015/06/24 Javascript
jQuery实现定位滚动条位置
2016/08/05 Javascript
JS中对Cookie的操作详解
2016/08/05 Javascript
JS解决iframe之间通信和自适应高度的问题
2016/08/24 Javascript
Angular下H5上传图片的方法(可多张上传)
2017/01/09 Javascript
Angular 2 ngForm中的ngModel、[ngModel]和[(ngModel)]的写法
2017/06/29 Javascript
jQuery实现的弹幕效果完整实例
2017/09/06 jQuery
PHP 实现一种多文件上传的方法
2017/09/20 Javascript
详解vue中使用vue-quill-editor富文本小结(图片上传)
2019/04/24 Javascript
vue计算属性+vue中class与style绑定(推荐)
2020/03/30 Javascript
浅谈vue中$event理解和框架中在包含默认值外传参
2020/08/07 Javascript
Python map和reduce函数用法示例
2015/02/26 Python
tensorflow 打印内存中的变量方法
2018/07/30 Python
python实现Zabbix-API监控
2018/09/17 Python
python实现五子棋小程序
2019/06/18 Python
Python Subprocess模块原理及实例
2019/08/26 Python
TensorFlow tf.nn.softmax_cross_entropy_with_logits的用法
2020/04/19 Python
python中Pexpect的工作流程实例讲解
2021/03/02 Python
HTML5 window/iframe跨域传递消息 API介绍
2013/08/26 HTML / CSS
解决HTML5中滚动到底部的事件问题
2019/08/22 HTML / CSS
新英格兰最大的特色礼品连锁店:The Paper Store
2018/07/23 全球购物
澳大利亚女士时装在线:Rockmans
2018/09/26 全球购物
2014年党支部学习材料
2014/05/19 职场文书
教研处工作方案
2014/05/26 职场文书
一份没有按时交货失信于客户的检讨书
2014/09/19 职场文书
法学专业求职信范文
2015/03/19 职场文书
幼儿园保育员随笔
2015/08/14 职场文书
Django项目如何正确配置日志(logging)
2021/04/29 Python
一篇文章了解正则表达式的替换技巧
2022/02/24 Javascript