码迷,mamicode.com
首页 > 编程语言 > 详细

python:datetime库相关整理

时间:2020-01-14 20:49:09      阅读:151      评论:0      收藏:0      [点我收藏+]

标签:microsoft   mic   mtime   一个   family   描述   操作   timestamp   反向   

1、datetime库整体介绍

(1)所包含的类

  • date:日期对象
  • time:时间对象
  • timedelta:时间间隔对象
  • datetime:日期时间对象
  • tzinfo:时区信息对象

(2)datetime木块中包含的常量

  • MAXYEAR:返回能表示的最大年份,返回值为9999
  • MINYEAR:返回能表示的最小年份,返回值为1

2、date类

(1)date对象组成

  date对象由yearmonthday三部分组成

date(year, month, day)

  可以通过yearmonthday三个数据描述符访问数据

d = datetime.date(2020, 01, 14)
>>>d.year 
2020
>>>d.month
1
>>>d.day
14

  也可以通过__getattribute__()方法获取上述结果:

d = datetime.date(2020, 1, 14)
>>>d.__getattribute__(year)
2020
>>>d.__getattribute__(month)
1
>>>d.__getattribute__(month)
14

(2)date对象中包含的对象与属性

  用于比较日期大小的方法

  • __eq__():等于,例:x.__eq__(y)
  • __ge__():大于等于,例:x.__ge__(y)
  • __gt__():大于,例:x.__gt__(y)
  • __le__():小于等于,例:x.__le__(y)
  • __lt__():小于,例:x.__lt__(y)
  • __ne__():不等于,例:x.__ne__(y)

  以上方法的返回值为:True/False

  获取两个日期相差多少天

  使用__sub__()__rsub__()方法,其实这两个方法差不多,一个是正向操作,一个是反向操作

  • __sub__():例:x.__sub__(y),相当于x-y
  • __rsub__():例:x.__rsub__(y),相当于y-x

(3)ISO标准化日期

  获取符合ISO标准的日期

  • isocalendar()方法:返回一个包含三个值的元组,元组内容为(年份,所在年的第几周,所在周的第几日)
>>>d = datetime.date(2020, 5, 14)
>>>d.isocalendar()
(2020, 20, 4)
  • isoformat()方法:返回符合ISO 8601标准(YYYY-MM-DD)的日期字符串

>>>d = datetime.date(2020, 1, 14)
>>>d.isoformat()
2020-01-14
<class str>
  • isoweekday()返回符合ISO标准的指定日期所在当前日期的第几日
>>>d = datetime.date(2020, 1, 14)
>>>d.isoweekday()
2

(4)其他方法与属性

  • timetuple():该方法为了兼容time.localtime()返回一个类型为time.struct_time的数组,但时间部分的元素值为0

>>>d = datetime.date(2020, 1, 14)
>>>d.timetuple()
>>>time.struct_time(tm_year=2020, tm_mon=1, tm_mday=14, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=1, tm_yday=14, tm_isdst=-1)
>>>d.timetuple().tm_year
2020
>>>d.timetuple().tm_mon
1
>>>d.timetuple().tm_mday
14
  • toordinal():返回公元公历开始到现在的天数,公元111日为1
>>>d = datetime.date(2020, 1, 14)
>>>d.toordinal()
737438
  • replace():返回一个替换制定日期字段的新date对象。3个可选参数,分别有yearmonthday。注意是替换后产生心对象,不影响原对象数据
>>>d = datetime.date(2020, 1, 14)
>>>a = d.replace(2020, 2, 14)
>>>a
2020-02-14
  • fromtimestamp():根据给定的时间戳,返回一个date对象

>>>datetime.date.fromtimestamp(time.time())
2020-01-14
  • today():返回当前日期

>>>datetime.date.today()
>>>print(datetime.date.today())
2020-01-14

python:datetime库相关整理

标签:microsoft   mic   mtime   一个   family   描述   操作   timestamp   反向   

原文地址:https://www.cnblogs.com/xmcwm/p/12193692.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!