Python3.x:日期库dateutil简介
Python3.x:日期库dateutil简介
安装
pip install python-dateutil
关于parser
#字符串可以很随意,可以用时间日期的英文单词,可以用横线、逗号、空格等做分隔符。
#没指定时间默认是0点,没指定日期默认是今天,没指定年份默认是今年。
from dateutil.parser import parse
parse("Wed, Nov 12")
#输出结果:datetime.datetime(2013, 11, 12, 0, 0) parse("2013-08-20")
#输出结果:datetime.datetime(2013, 8, 20, 0, 0) parse("")
#输出结果:datetime.datetime(2013, 8, 20, 0, 0) parse("2013,08,20")
#输出结果:datetime.datetime(2013, 8, 20, 0, 0) parse("08,20")
#输出结果:datetime.datetime(2013, 8, 20, 0, 0) parse("12:00:00")
#输出结果:datetime.datetime(2013, 8, 20, 12, 0) parse("this is the wonderful moment 12:00:00,I feel good",fuzzy=True)#fuzzy开启模糊匹配,过滤掉无法识别的时间日期字符
#输出结果:datetime.datetime(2013, 8, 20, 12, 0)
关于rrule
rrule(self, freq, dtstart=None, interval=1, wkst=None, count=None, until=None, bysetpos=None,
bymonth=None, bymonthday=None, byyearday=None, byeaster=None, byweekno=None, byweekday=None, byhour=None, byminute=None, bysecond=None, cache=False)
其中
freq:可以理解为单位。可以是 YEARLY, MONTHLY, WEEKLY, DAILY, HOURLY, MINUTELY, SECONDLY。即年月日周时分秒。
dtstart,until:是开始和结束时间。
wkst:周开始时间。
interval:间隔。
count:指定生成多少个。
byxxx:指定匹配的周期。比如byweekday=(MO,TU)则只有周一周二的匹配。byweekday可以指定MO,TU,WE,TH,FR,SA,SU。即周一到周日。
from dateutil.rrule import *
list(rrule(DAILY,dtstart=parse('2013-08-01'),until=parse('2013-08-07'))) #2013-08-01到2013-08-07每日
#输出:[datetime.datetime(2013, 8, 1, 0, 0),
#datetime.datetime(2013, 8, 2, 0, 0),
#datetime.datetime(2013, 8, 3, 0, 0),
#datetime.datetime(2013, 8, 4, 0, 0),
#datetime.datetime(2013, 8, 5, 0, 0),
#datetime.datetime(2013, 8, 6, 0, 0),
#datetime.datetime(2013, 8, 7, 0, 0)] list(rrule(DAILY,interval=3,dtstart=parse('2013-08-01'),until=parse('2013-08-07'))) #间隔为3
#输出:[datetime.datetime(2013, 8, 1, 0, 0),
#datetime.datetime(2013, 8, 4, 0, 0),
#datetime.datetime(2013, 8, 7, 0, 0)] list(rrule(DAILY,count=3,dtstart=parse('2013-08-01'),until=parse('2013-08-07'))) #只生成3个
#输出:[datetime.datetime(2013, 8, 1, 0, 0),
#datetime.datetime(2013, 8, 2, 0, 0),
#datetime.datetime(2013, 8, 3, 0, 0)] list(rrule(DAILY,byweekday=(MO,TU),dtstart=parse('2013-08-01'),until=parse('2013-08-07'))) #只匹配周一周二的
#输出:[datetime.datetime(2013, 8, 5, 0, 0), #datetime.datetime(2013, 8, 6, 0, 0)] list(rrule(MONTHLY,dtstart=parse('2013-05-19'),until=parse('2013-08-20'))) #按月为单位
#输出:[datetime.datetime(2013, 5, 19, 0, 0),
#datetime.datetime(2013, 6, 19, 0, 0),
#datetime.datetime(2013, 7, 19, 0, 0),
#datetime.datetime(2013, 8, 19, 0, 0)] #月份加1
import datetime
import dateutil
z=datetime.datetime(2016,12,17)
z+dateutil.relativedelta.relativedelta(months=1)
Python3.x:日期库dateutil简介的更多相关文章
- Python3 常用爬虫库的安装
Python3 常用爬虫库的安装 1 简介 Windows下安装Python3常用的爬虫库:requests.selenium.beautifulsoup4.pyquery.pymysql.pymon ...
- Java8新特性时间日期库DateTime API及示例
Java8新特性的功能已经更新了不少篇幅了,今天重点讲解时间日期库中DateTime相关处理.同样的,如果你现在依旧在项目中使用传统Date.Calendar和SimpleDateFormat等API ...
- java开源时间/日期库Joda-Time
任何企业应用程序都需要处理时间问题.应用程序需要知道当前的时间点和下一个时间点,有时它们还必须计算这两个时间点之间的路径.使用 JDK 完成这项任务将非常痛苦和繁琐.现在来看看 Joda Time,一 ...
- Raphael Js矢量库API简介:
Raphael Js矢量库API简介:Raphael Javascript 是一个 Javascript的矢量库. 2010年6月15日,著名的JavaScript库ExtJS与触摸屏代码库项目jQT ...
- Java 8 时间日期库的20个使用示例
java 8是如何处理时间及日期的 有人问我学习一个新库的最佳途径是什么?我的回答是,就是在实际项目中那样去使用它.在一个真实的项目中会有各种各样的需求,这会促使开发人员去探索和研究这个新库.简言之, ...
- Python3 urllib.request库的基本使用
Python3 urllib.request库的基本使用 所谓网页抓取,就是把URL地址中指定的网络资源从网络流中读取出来,保存到本地. 在Python中有很多库可以用来抓取网页,我们先学习urlli ...
- 【转】Python3 (入门6) 库的打包与安装
Python3 (入门6) 库的打包与安装 本文由 Luzhuo 编写,转发请保留该信息. 原文: http://blog.csdn.net/Rozol/article/details/6940288 ...
- java8新的时间日期库及使用示例
转自:https://www.cnblogs.com/comeboo/p/5378922.html 来自:Java译站 链接:http://it.deepinmind.com/java/2015/03 ...
- 对python3中pathlib库的Path类的使用详解
原文连接 https://www.jb51.net/article/148789.htm 1.调用库 ? 1 from pathlib import 2.创建Path对象 ? 1 2 3 4 5 ...
随机推荐
- 【Ubuntu】Windows硬盘安装Ubuntu14.04
参考:http://diybbs.zol.com.cn/1/33925_1981.html http://www.cnblogs.com/allenjin/archive/2011/11/26/22 ...
- android去权限反编译,签名,zipalign优化
反编译:上工具ApkTool 下载自行搜索google apktool github cd apktool目录 java -jar apktool_2.0.1.jar d xx.apk 生成xx目录 ...
- Asynchronous HTTP Requests in Android Using Volley
Volley是Android开发者新的瑞士军刀,它提供了优美的框架,使得Android应用程序网络访问更容易和更快.Volley抽象实现了底层的HTTP Client库,让你不关注HTTP Clien ...
- Eclipse出现ContextLoaderListener not find
严重: Error configuring application listener of class org.springframework.web.context.ContextLoaderLis ...
- powershell Start-Sleep
秒: Start-Sleep –s 10 ,毫秒) Start-Sleep –m 10000 语法 Start-Sleep [-seconds] <int> [<CommonPara ...
- Storm-源码分析汇总
Storm Features Storm 简介 Storm Topology的并发度 Storm - Guaranteeing message processing Storm - Transacti ...
- 转!!Java设置session超时(失效)的时间
Java设置session超时(失效)的时间 在一般系统登录后,都会设置一个当前session失效的时间,以确保在用户长时间不与服务器交互,自动退出登录,销毁session具体设置的方法有三种:1 ...
- 原!tomcat启动超时(打印了几行日志,后面没了。也不报错,处于启动状态,直到超时)
项目框架:spring+struts2+mybatis 今天优化代码,改了一堆mybatis dao和xml文件,启动项目时,就出现如标题描述的状况:打印了几行日志,后面就不打印了,也不报错,处于启动 ...
- Ubuntu系统Python3相关环境或模块安装
前提:一般用户安装都命令前都需要sudo ,或者在root用户下 1.Ubuntu 16.04 安装PyCharm Ubuntu 16.04 安装PyCharm 本文通过第三方源安装PyCharm,好 ...
- Andrew Ng机器学习总结(自用)
监督学习: 线性回归,逻辑回归,神经网络,支持向量机. 非监督学习: K-means,PCA,异常检测 应用: 推荐系统,大规模机器学习 机器学习系统优化: 偏差/方差,正则化,下一步要进行的工作:评 ...