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脚本判断 Linux 是否运行在虚拟机上
Apr 25 Python
python使用smtplib模块通过gmail实现邮件发送的方法
May 08 Python
python中__call__内置函数用法实例
Jun 04 Python
Python脚本获取操作系统版本信息
Dec 17 Python
numpy中实现二维数组按照某列、某行排序的方法
Apr 04 Python
Python中对数组集进行按行打乱shuffle的方法
Nov 08 Python
详解python3 + Scrapy爬虫学习之创建项目
Apr 12 Python
利用python-pypcap抓取带VLAN标签的数据包方法
Jul 23 Python
Python按照list dict key进行排序过程解析
Apr 04 Python
Python答题卡识别并给出分数的实现代码
Jun 22 Python
python实现简单聊天功能
Jul 07 Python
Python代码实现双链表
May 25 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
Zend Framework自定义Helper类相关注意事项总结
2016/03/14 PHP
js 表单验证方法(实用)
2009/04/28 Javascript
页面定时刷新(1秒刷新一次)
2013/11/22 Javascript
jquery 使用简明教程
2014/03/05 Javascript
jquery实现动态画圆
2014/12/04 Javascript
JavaScript设计模式之工厂方法模式介绍
2014/12/28 Javascript
在Node.js应用中使用Redis的方法简介
2015/06/24 Javascript
js剪切板应用clipboardData实例解析
2016/05/29 Javascript
JavaScript自定义文本框光标
2017/03/05 Javascript
JavaScript设计模式之调停者模式实例详解
2018/02/03 Javascript
vue cli 全面解析
2018/02/28 Javascript
Angular 封装并发布组件的方法示例
2018/04/19 Javascript
详解vue 2.6 中 slot 的新用法
2019/07/09 Javascript
vue中keep-alive、activated的探讨和使用详解
2020/07/26 Javascript
Python常用模块用法分析
2014/09/08 Python
python通过定义一个类实例作为ftp回调方法
2015/05/04 Python
Python字典操作详细介绍及字典内建方法分享
2018/01/04 Python
Python实现计算圆周率π的值到任意位的方法示例
2018/05/08 Python
简单了解python 邮件模块的使用方法
2019/07/24 Python
解决Pytorch 加载训练好的模型 遇到的error问题
2020/01/10 Python
使用Python内置模块与函数进行不同进制的数的转换
2020/04/26 Python
Python 抓取数据存储到Redis中的操作
2020/07/16 Python
python之随机数函数的实现示例
2020/12/30 Python
利用CSS3把图片变成灰色模式的实例代码
2016/09/06 HTML / CSS
澳大利亚宠物食品和药物在线:Jumbo Pets
2018/03/24 全球购物
介绍一下如何优化MySql
2016/12/20 面试题
家居设计专业个人自荐信范文
2013/11/26 职场文书
护士自我评价
2014/02/01 职场文书
应聘护理专业毕业自荐书范文
2014/02/12 职场文书
环保倡议书300字
2014/05/15 职场文书
小学生竞选班干部演讲稿(5篇)
2014/09/12 职场文书
法人代表证明书格式
2014/10/01 职场文书
2014年法制宣传日活动方案
2014/11/02 职场文书
优秀员工事迹材料
2014/12/20 职场文书
人力资源部岗位职责
2015/02/11 职场文书
如何用 Python 子进程关闭 Excel 自动化中的弹窗
2021/05/07 Python