作家
登录

Python中的时间处理大总结

作者: 来源: 2017-11-07 14:55:11 阅读 我要评论

关于怎么格局化时光,是很简单的常识,这里就借用官网文档的内容了。

Python中的时光处理大年夜总结

除了这两个函数,time模块中还供给了两个简便办法,来赞助将时光转为字符串

asctime用来将一个struct_time对象转为标准24字符的字符串,如下所示:

也就是说mktime办法会先找到体系中的时区和DST信息,并应用这个信息对struct_time进行调剂后再换算成秒数。

  1. Sun Jun 20 23:21:05 1993 

获得表示当前local时光的datetime对象,还有两个简便办法


ctime办法与asctime感化雷同,只不过它接收的是秒数,在内部,会先把秒数经由过程localtime转为struct_time,再往后就与asctime一样了。

那么,好奇的我们,必定要问一问,python是若何知道tzone和DST这两个的值呢?谜底是经由过程情况变量。

以上就是time模块的核心内容,我测验测验用一个口诀赞助记夷┞封些API

传入gm, local time得struct_time

要想变回原秒数

你得传回calendar.timegm和time. mktime

  • string f和string p

格局化时光靠哥俩

你要照样嫌费事

  • asctime ,ctime来助力
  • 专门帮你转字符串
  • 前者接收struct_time
  • 后者专门处理秒数
  • 分工合作不辛苦

学好time模块根本功

下面,我们要开端进修datetime模块。

3,datetime模块

1),概览

time模块解决了时光的获取和表示,datetime模块则进一步解决了快速获取并操作时光中的年代日时分秒信息的才能。

简单说,该模块核心的类就三个,date类表示年代日,time类表示时分秒毫秒,这里不要和time模块搞混淆了。一句顺口溜可以赞助记清这个情况:

  • time琅绫擎没time
  • 藏在datetime里

编的是不是不咋地?嗯,我也这么认为。

datetime类就是date和time的组合。

如不雅该属性设置为None,那么,这时的time对象或者datetime对象就没有时区信息,具体它表示的是local time照样utc time,须要我们本身在法度榜样中去决定。

这里我们所说的local time是指我们地点时区的时光, utc time指的就是国际标准时光,也就是格林尼治时光。下文同。

请记住一点,date中是没有时区信息的。

2),大年夜创建datetime开端

  1. dt=datetime.datetime.fromtimestamp(time.time()) 

以上,time.time()获得自epoch开端的秒数,fromtimestamp办法会将这个秒数改变成一个datetime对象。

这里有一个问题,这个datetime对象毕竟是utc的┞氛样local的?

  • 谜底是local的,这是该办法的默认行动。如不雅你在fromtimestamp办法中传入一个表示时区的参数,即tzinfo对象,就会按传入的时区信息进行转换。
  1. datetime. datetime. now()  
  2. datetime. datetime. today() 

以上我们获得的都是local的datetime对象,若何获得utc的datetime对象呢?有两个办法

  1. datetime. datetime. utcfromtimestamp()  
  2. datetime. datetime. utcnow() 

我们还可以大年夜字符串中创建datetime对象,

  • 办法为datetime.striptime(date_string, format)

其内部照样先调用的time模块中的striptime办法,获取struct_time对象,再应用struct_time对象中的年代日时分秒信息构建datetime对象。

同样的,datetime类也供给了strftime(),asctime(),ctime()办法,信赖不说你也知道是做什么的了。

  • datetime类还供给了一个combine办法,用来将一个date对象和一个time对象组合成一个datetime对象。

须要留意的是,datetime模块中出现timestamp时,一般可将其懂得成time.time()返回的秒数

3),date和time的创建

  • date对象的创建和datetime异常类似,
  • datetime. date. today()
  • datetime.date.fromtimestamp()都可以创建一个date对象。

当然,你也可以经由过程构造办法传入年代日来创建date对象。

比拟之下,time对象的创建就很有限,只能经由过程

这两个函数如不雅调用时不传参数,它们内部会调用time.time(),并用返回的秒数做转换。

  1. datetime.time([hour[, minute[, second[, microsecond[, tzinfo]]]]]) 

这个办法创建。

4),以上三个对象的操作和timedelta类

在实际应用中,我们有一大年夜块需求就是对日期进行比较和加减运算。得益于python的操作符重载才能,python中可以便利地对


  推荐阅读

  5分钟变电脑高手 这些技巧让你装机又炫技

然则很多同伙对电脑装机不甚懂得,担心购买电脑硬件后装不上去,所以今天笔者就为大年夜家总结了一下装机的小技能,计算在双十一装机的同伙可以存眷一下。第一步:安装CPU以及散热器起首将>>>详细阅读


本文标题:Python中的时间处理大总结

地址:http://www.17bianji.com/lsqh/38567.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)