设为首页 收藏本站
查看: 773|回复: 0

[经验分享] python时间处理模块 datetime time模块 deltetime模块

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2016-4-25 09:44:43 | 显示全部楼层 |阅读模式
1 首先介绍time模块,因为简单
python 自带模块
本人使用time模块,只使用两个函数
time函数和sleep函数

import time
a.     time.time()   函数 返回unix时间  常用作两个时间差的计算

b.     time.sleep()  休眠多久,精度为子秒(subsecond)

1
2
3
4
5
6
7
In [90]: t1 = time.time()
In [91]: t1
Out[91]: 1461400225.877932
In [92]: time.sleep(2)
In [93]: t2 = time.time()
In [94]: t2 - t1
Out[94]: 24.2673659324646





2 其他处理时间的场景,本人都是使用datetime模块
python 自带
from datetime import datetime
常用时间场景 #获取当前时间
1
2
In [95]: from datetime import datetime
In [96]: now = datetime.now()




#注意类型,时间之间的计算一定要是时间类型,即相同类型之间可以加减
1
2
3
4
In [97]: type(now)     
Out[97]: datetime.datetime
In [98]: now
Out[98]: datetime.datetime(2016, 4, 23, 16, 33, 0, 143269)






a.     常用获取 当前的年份,月份,日期,时,周(注意周的数值,0-6  0表示周一,依次类推)

1
2
3
In [116]: year, month, today, hour, week = (now.year, now.month, now.day, now.hour, now.weekday())
In [117]: year, month, today, hour, week
Out[117]: (2016, 4, 23, 16, 5)





b.    ctime()函数  返回可读的字符串格式
1
2
In [118]: now.ctime()
Out[118]: 'Sat Apr 23 16:33:00 2016'




c.    strftime() 函数 将datetime时间格式,转换成为指定的字符串格式
1
2
In [121]: now.strftime('%Y-%m-%d')
Out[121]: '2016-04-23'





d.    strptime() 函数,将字符串模式的时间,转化成为datetime格式
1
2
In [123]: datetime.strptime('20160101','%Y%m%d')
Out[123]: datetime.datetime(2016, 1, 1, 0, 0)





3 timedelta

来自datetime模块
from datetime import timedelta

作用计算datetime类型时间的一个差值(得到或将来的一个)

常用获取前一天的datetime时间
1
2
3
4
In [129]: now
Out[129]: datetime.datetime(2016, 4, 23, 16, 33, 0, 143269)
In [130]: now - timedelta(1)
Out[130]: datetime.datetime(2016, 4, 22, 16, 33, 0, 143269)




获取一个小时之前的时间
1
2
In [134]: now
Out[134]: datetime.datetime(2016, 4, 23, 16, 33, 0, 143269)





一秒前,一小时前,一天前,一分中之前
但是没有一年前,一个月前勒(这个原因你能想明白的)
1
2
3
4
5
6
7
8
9
10
In [158]: now - timedelta(seconds=1)
Out[158]: datetime.datetime(2016, 4, 23, 16, 32, 59, 143269)
In [159]: now - timedelta(seconds=1)
Out[159]: datetime.datetime(2016, 4, 23, 16, 32, 59, 143269)
In [160]: now - timedelta(hours=1)
Out[160]: datetime.datetime(2016, 4, 23, 15, 33, 0, 143269)
In [161]: now - timedelta(days=1)
Out[161]: datetime.datetime(2016, 4, 22, 16, 33, 0, 143269)
In [162]: now - timedelta(minutes=1)
Out[162]: datetime.datetime(2016, 4, 23, 16, 32, 0, 143269)





运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-208520-1-1.html 上篇帖子: python内置函数 下篇帖子: 谁有自动化运维软件设计实战 电子板书呢 python
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表