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实现指定字符串补全空格的方法
Apr 30 Python
python使用 HTMLTestRunner.py生成测试报告
Oct 20 Python
Python入门之三角函数tan()函数实例详解
Nov 08 Python
Python通过OpenCV的findContours获取轮廓并切割实例
Jan 05 Python
python查询mysql,返回json的实例
Mar 26 Python
pandas数值计算与排序方法
Apr 12 Python
Python OpenCV处理图像之图像直方图和反向投影
Jul 10 Python
python批量获取html内body内容的实例
Jan 02 Python
python实现多进程按序号批量修改文件名的方法示例
Dec 30 Python
python实现从ftp上下载文件的实例方法
Jul 19 Python
基于python+selenium自动健康打卡的实现代码
Jan 13 Python
基于Python实现股票收益率分析
Apr 02 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 参数过滤、数据过滤详解
2015/10/26 PHP
PHP面向对象程序设计组合模式与装饰模式详解
2016/12/02 PHP
动态加载iframe
2006/06/16 Javascript
高亮显示web页表格行的javascript代码
2010/11/19 Javascript
jQuery创建插件的代码分析
2011/04/14 Javascript
JS实现图片横向滚动效果示例代码
2013/09/04 Javascript
cookie的复制与使用记住用户名实现代码
2013/11/04 Javascript
jQuery删除一个元素后淡出效果展示删除过程的方法
2015/03/18 Javascript
JS一个简单的注册页面实例
2017/09/05 Javascript
Dropify.js图片宽高自适应的方法
2017/11/27 Javascript
解决低版本的浏览器不支持es6的import问题
2018/03/09 Javascript
Javascript实现异步编程的过程
2018/06/18 Javascript
vue监听input标签的value值方法
2018/08/27 Javascript
JS浅拷贝和深拷贝原理与实现方法分析
2019/02/28 Javascript
用Vue.js方法创建模板并使用多个模板合成
2019/06/28 Javascript
[02:43]DOTA2亚洲邀请赛场馆攻略——带你走进东方体育中心
2018/03/19 DOTA
[00:47]DOTA2荣耀之路6:玩不了啦!
2018/05/30 DOTA
[01:04:05]VG vs Newbee 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/20 DOTA
在树莓派2或树莓派B+上安装Python和OpenCV的教程
2015/03/30 Python
python使用webbrowser浏览指定url的方法
2015/04/04 Python
Python使用django获取用户IP地址的方法
2015/05/11 Python
python利用线程实现多任务
2020/09/18 Python
python 牛顿法实现逻辑回归(Logistic Regression)
2020/10/15 Python
CSS3 filter(滤镜)实现网页灰色或者黑色模式的代码
2020/11/30 HTML / CSS
韩国三大免税店之一:THE GRAND 中文免税店
2016/07/21 全球购物
学生就业推荐信
2013/11/13 职场文书
女生节标语
2014/06/26 职场文书
2014年药店工作总结
2014/11/20 职场文书
2014小学一年级班主任工作总结
2014/12/05 职场文书
2015年行政部工作总结
2015/04/28 职场文书
停车场管理制度范本
2015/08/05 职场文书
2016年领导干部正风肃纪心得体会
2015/10/09 职场文书
幼儿园2016年感恩节活动总结
2016/04/01 职场文书
2019奶茶店创业计划书范本,值得你借鉴
2019/08/14 职场文书
Oracle11g R2 安装教程完整版
2021/06/04 Oracle
Python实现Hash算法
2022/03/18 Python