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编写基于DHT协议的BT资源爬虫
Mar 19 Python
Python实现的桶排序算法示例
Nov 29 Python
python实现简单神经网络算法
Mar 10 Python
python3 拼接字符串的7种方法
Sep 12 Python
python实现年会抽奖程序
Jan 22 Python
解决Django一个表单对应多个按钮的问题
Jul 18 Python
wxpython绘制音频效果
Nov 18 Python
py-charm延长试用期限实例
Dec 22 Python
Macbook安装Python最新版本、GUI开发环境、图像处理、视频处理环境详解
Feb 17 Python
python中68个内置函数的总结与介绍
Feb 24 Python
python环境下安装opencv库的方法
Mar 05 Python
Python faker生成器生成虚拟数据代码实例
Jul 20 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 检查扩展库或函数是否可用的代码
2010/04/06 PHP
Yii实现多数据库主从读写分离的方法
2014/12/29 PHP
PHP二维关联数组的遍历方式(实例讲解)
2017/10/18 PHP
PHP的mysqli_thread_id()函数讲解
2019/01/24 PHP
判断多个input type=file是否有已经选择好文件的代码
2012/05/23 Javascript
javascript-简单的日历实现及Date对象语法介绍(附图)
2013/05/30 Javascript
JavaScript验证18位身份证号码最后一位正确性的实现代码
2014/08/07 Javascript
解决jquery版本冲突的有效方法
2014/09/02 Javascript
触屏中的JavaScript事件分析
2015/02/06 Javascript
详解jQuery中的DOM操作
2016/12/23 Javascript
jQuery编写textarea输入字数限制代码
2017/03/23 jQuery
大白话讲解JavaScript的Promise
2017/04/06 Javascript
利用prop-types第三方库对组件的props中的变量进行类型检测
2017/05/02 Javascript
Bootstrap datepicker日期选择器插件使用详解
2017/07/26 Javascript
ActiveX控件的使用-js实现打印超市小票功能代码详解
2017/11/22 Javascript
使用JS模拟锚点跳转的实例
2018/02/01 Javascript
JS 实现百度搜索功能
2018/02/01 Javascript
Python函数参数类型*、**的区别
2015/04/11 Python
python下paramiko模块实现ssh连接登录Linux服务器
2015/06/03 Python
Python生成随机验证码的两种方法
2015/12/22 Python
python实现word 2007文档转换为pdf文件
2018/03/15 Python
python实现简单名片管理系统
2018/11/30 Python
PyTorch实现ResNet50、ResNet101和ResNet152示例
2020/01/14 Python
css3 盒模型以及box-sizing属性全面了解
2016/09/20 HTML / CSS
I.T集团香港官方商城:ITeSHOP.com Hong Kong
2019/02/15 全球购物
FILA德国官方网站:来自意大利的体育和街头服饰品牌
2019/07/19 全球购物
JAVA和C++区别都有哪些
2015/03/30 面试题
阿里巴巴的Oracle DBA笔试题答案-SQL tuning类
2016/04/03 面试题
公司董事长职责
2013/12/12 职场文书
一岗双责责任书
2014/04/15 职场文书
竞选卫生委员演讲稿
2014/04/28 职场文书
班级学习雷锋活动总结
2014/07/04 职场文书
厨师长岗位职责范本
2014/08/25 职场文书
工程索赔意向书
2014/08/30 职场文书
安全教育的主题班会
2015/08/13 职场文书
《半截蜡烛》教学反思
2016/02/19 职场文书