python获取指定日期范围内的每一天,每个月,每季度的方法


Posted in Python onAugust 08, 2019

1.获取所有天,返回一个列表:

def getBetweenDay(begin_date):
  date_list = []
  begin_date = datetime.datetime.strptime(begin_date, "%Y-%m-%d")
  end_date = datetime.datetime.strptime(time.strftime('%Y-%m-%d',time.localtime(time.time())), "%Y-%m-%d")
  while begin_date <= end_date:
    date_str = begin_date.strftime("%Y-%m-%d")
    date_list.append(date_str)
    begin_date += datetime.timedelta(days=1)
  return date_list

2.获取所有月,返回一个列表:

def getBetweenMonth(begin_date):
  date_list = []
  begin_date = datetime.datetime.strptime(begin_date, "%Y-%m-%d")
  end_date = datetime.datetime.strptime(time.strftime('%Y-%m-%d', time.localtime(time.time())), "%Y-%m-%d")
  while begin_date <= end_date:
    date_str = begin_date.strftime("%Y%m")
    date_list.append(date_str)
    begin_date = add_months(begin_date,1)
  return date_list
 
def add_months(dt,months):
  month = dt.month - 1 + months
  year = dt.year + month / 12
  month = month % 12 + 1
  day = min(dt.day, calendar.monthrange(year, month)[1])
  return dt.replace(year=year, month=month, day=day)

3.获取所有季度,返回一个列表:

def getBetweenMonth(begin_date):
  date_list = []
  begin_date = datetime.datetime.strptime(begin_date, "%Y-%m-%d")
  end_date = datetime.datetime.strptime(time.strftime('%Y-%m-%d', time.localtime(time.time())), "%Y-%m-%d")
  while begin_date <= end_date:
    date_str = begin_date.strftime("%Y-%m")
    date_list.append(date_str)
    begin_date = add_months(begin_date,1)
  return date_list
 
def add_months(dt,months):
  month = dt.month - 1 + months
  year = dt.year + month / 12
  month = month % 12 + 1
  day = min(dt.day, calendar.monthrange(year, month)[1])
  return dt.replace(year=year, month=month, day=day)
 
def getBetweenQuarter(begin_date):
  quarter_list = []
  month_list = getBetweenMonth(begin_date)
  for value in month_list:
    tempvalue = value.split("-")
    if tempvalue[1] in ['01','02','03']:
      quarter_list.append(tempvalue[0] + "Q1")
    elif tempvalue[1] in ['04','05','06']:
      quarter_list.append(tempvalue[0] + "Q2")
    elif tempvalue[1] in ['07', '08', '09']:
      quarter_list.append(tempvalue[0] + "Q3")
    elif tempvalue[1] in ['10', '11', '12']:
      quarter_list.append(tempvalue[0] + "Q4")
  quarter_set = set(quarter_list)
  quarter_list = list(quarter_set)
  quarter_list.sort()
  return quarter_list

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python 字符串split的用法分享
Mar 23 Python
Python使用SQLite和Excel操作进行数据分析
Jan 20 Python
python2.7 json 转换日期的处理的示例
Mar 07 Python
Python高斯消除矩阵
Jan 02 Python
python异步存储数据详解
Mar 19 Python
python爬虫简单的添加代理进行访问的实现代码
Apr 04 Python
基于python求两个列表的并集.交集.差集
Feb 10 Python
python标准库OS模块详解
Mar 10 Python
Windows下Pycharm远程连接虚拟机中Centos下的Python环境(图文教程详解)
Mar 19 Python
keras 获取某层输出 获取复用层的多次输出实例
May 23 Python
详解java调用python的几种用法(看这篇就够了)
Dec 10 Python
python实现学生信息管理系统(面向对象)
Jun 05 Python
Python 调用 Outlook 发送邮件过程解析
Aug 08 #Python
python判断自身是否正在运行的方法
Aug 08 #Python
Python 日期区间处理 (本周本月上周上月...)
Aug 08 #Python
python各类经纬度转换的实例代码
Aug 08 #Python
Python3.0 实现决策树算法的流程
Aug 08 #Python
Python使用ffmpy将amr格式的音频转化为mp3格式的例子
Aug 08 #Python
Django rest framework jwt的使用方法详解
Aug 08 #Python
You might like
PHP的面试题集
2006/11/19 PHP
php更改目录及子目录下所有的文件后缀扩展名的代码
2010/10/12 PHP
php制作unicode解码工具(unicode编码转换器)代码分享
2013/12/24 PHP
Yii2.0中使用js异步删除示例
2017/03/10 PHP
JQUERY THICKBOX弹出层插件
2008/08/30 Javascript
深入理解JavaScript系列(30):设计模式之外观模式详解
2015/03/03 Javascript
JS实现漂亮的窗口拖拽效果(可改变大小、最大化、最小化、关闭)
2015/10/10 Javascript
JS 获取HTML标签内的子节点的方法
2016/09/21 Javascript
JQ中$(window).load和$(document).ready区别与执行顺序
2017/03/01 Javascript
AngularJS ng-repeat指令及Ajax的应用实例分析
2017/07/06 Javascript
IE11下处理Promise及Vue的单项数据流问题
2019/07/24 Javascript
微信小程序基于高德地图查找位置并显示文字
2019/10/30 Javascript
vue 动态设置img的src地址无效,npm run build 后找不到文件的解决
2020/07/26 Javascript
javascript canvas封装动态时钟
2020/09/30 Javascript
javascript实现移动端轮播图
2020/12/09 Javascript
Python数据结构之Array用法实例
2014/10/09 Python
python中利用Future对象回调别的函数示例代码
2017/09/07 Python
python进行两个表格对比的方法
2018/06/27 Python
tensorflow 中对数组元素的操作方法
2018/07/27 Python
python 处理数字,把大于上限的数字置零实现方法
2019/01/28 Python
python学习--使用QQ邮箱发送邮件代码实例
2019/04/16 Python
PyCharm搭建Spark开发环境的实现步骤
2019/09/05 Python
Python进阶之使用selenium爬取淘宝商品信息功能示例
2019/09/16 Python
关于pandas的离散化,面元划分详解
2019/11/22 Python
django 框架实现的用户注册、登录、退出功能示例
2019/11/28 Python
pycharm不能运行.py文件的解决方法
2020/02/12 Python
python3爬虫中异步协程的用法
2020/07/10 Python
linux mint中搜狗输入法导致pycharm卡死的问题
2020/10/28 Python
纯CSS3实现滚动的齿轮动画效果
2014/06/05 HTML / CSS
编写函数,将一个3*3矩阵转置
2013/10/09 面试题
介绍一下EJB的分类及其各自的功能及应用
2016/08/23 面试题
2014年安全员工作总结
2014/11/13 职场文书
2015年基层党建工作总结
2015/05/14 职场文书
《我和小伙伴》教学反思
2016/02/20 职场文书
SpringBoot连接MySQL获取数据写后端接口的操作方法
2021/11/02 MySQL
Python集合set()使用的方法详解
2022/03/18 Python