Python,datetime笔记。

蹲街弑〆低调 提交于 2019-12-04 05:13:02

time今天刚结束,趁热打铁,把datetime也干掉算了。看了一般调试电脑去了,现在回来了。

前面学的date感觉更多的是面向过程的,里面用的很多函数。

那datetime更加像一个面向对象的操作。

网上查了点资料,书上看了一些,准备挑一些自己认为的重点讲一下算了。

先说一下datetime.datetime好了,以前我就一直会用datetime.datetime.now()

当运行一个d1=datetime.datetime.now()或者d1=datetime.datetime.(2019,1,1)

其实本质是在完成实例化,所以,该对象d1会又很多定义的方法,属性。

由于是对实例的操作,不同的实例之间还能进行一些加减操作,返回datetime.timedelta对象。

In [244]: d1 = datetime.datetime(1985,11,5)                                                  

In [245]: d2 = datetime.datetime.now()                                                       

In [246]: isinstance(d1,datetime.datetime)                                                   
Out[246]: True

In [247]: d1-d2                                                                              
Out[247]: datetime.timedelta(days=-12425, seconds=74030, microseconds=689037)

In [248]: d1.isoweekday                                                                      
Out[248]: <function datetime.isoweekday>

In [249]: d1.isoweekday()                                                                    
Out[249]: 2

 这里简单的做了一个代码说明,对象又很多属性。(我感觉可能比较使用的准备标注红色)

datetime 实例方法:

datetime.date()
- 返回一个 date 对象datetime.time() - 返回一个 time 对象(tzinfo 属性为 None)

datetime.timetz()
- 返回一个 time() 对象(带有 tzinfo 属性)

datetime.replace([year[, month[, day[, hour[, minute[, second[, microsecond[, tzinfo]]]]]]]])
- 生成一个新的日期对象,用参数指定日期和时间代替原有对象中的属性

datetime.astimezone(tz=None)
- 传入一个新的 tzinfo 属性,返回根据新时区调整好的 datetime 对象

datetime.utcoffset()
- 如果 tzinfo 属性是 None,则返回 None;否则返回 self.tzinfo.utcoffset(self)

datetime.dst()
- 如果 tzinfo 属性是 None,则返回 None;否则返回 self.tzinfo.dst(self)

datetime.tzname()
- 如果 tzinfo 属性是 None,则返回 None;否则返回 self.tzinfo.tzname(self)

datetime.timetuple()
-  返回日期对应的 time.struct_time 对象(类似于 time 模块的 time.localtime())

datetime.utctimetuple()
- 返回 UTC 日期对应的 time.struct_time 对象

datetime.toordinal()
- 返回日期对应的 Gregorian Calendar 日期(类似于 self.date().toordinal())

datetime.timestamp()
- 返回当前时间的时间戳(类似于 time 模块的 time.time())

datetime.weekday()
- 返回 0 ~ 6 表示星期几(星期一是 0,依此类推)

datetime.isoweekday()
- 返回 1 ~ 7 表示星期几(星期一是1, 依此类推)

datetime.isocalendar()
返回一个三元组格式 (year, week, day) # 第二个元素是“year中的第几周”,第三个元素是“该周的第几天”

datetime.isoformat(sep='T')
- 返回一个 ISO 8601 格式的日期字符串,如 "YYYY-MM-DD" 的字符串

datetime.__str__()
- 对于 date 对象 d 来说,str(d) 相当于 d.isoformat()

datetime.ctime()
- 返回一个表示日期的字符串,相当于 time 模块的 time.ctime(time.mktime(d.timetuple()))

datetime.strftime(format)
- 返回自定义格式化字符串表示日期,下面有详解

datetime.__format__(format)
- 跟 datetime.strftime(format) 一样,这使得调用 str.format() 时可以指定 data 对象的字符串

datetime.isocalendar() 返回一个三元组格式 (year, week, day) # 第二个元素是“year中的第几周”,第三个元素是“该周的第几天”
[Datetime.Isocalendar() fǎnhuí yīgè sān yuán zǔ géshì (year, week, day)# dì èr gè yuánsù shì “year zhōng de dì jǐ zhōu”, dì sān gè yuánsù shì “gāi zhōu de dì jǐ tiān”]

datetime.isocalendar ()
Returns a triple format (year, week, day) # The second element is the "year of the week", the third element is the "day of the week."
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!