python之时间处理的常用方法

本文介绍了Python中如何将字符串转换为时间类型,使用时间戳转换为指定日期格式,并展示了计算几天前/后时间的方法,以及两种计算时间差的示例。涉及关键函数包括strptime、fromtimestamp、timedelta。
摘要由CSDN通过智能技术生成

1. 字符串转换为时间类型

>>> print datetime.datetime.strptime("2021-07-09 15:50:59", '%Y-%m-%d %H:%M:%S')
2021-07-09 15:50:59

2.时间戳转换为指定的日期格式

通过datetime.datetime.fromTimestamp()方法
注意:

  • datetime.datetime.fromTimestamp()需要以秒为单位的时间戳
  • 时间戳整数位一般长度为10位,单位为秒;若超过10位,单位非秒:比如毫秒:13位,微妙:16位

示例如下

>>> import time
>>> t = time.time()
>>> print t
1625823160.79
>>> >>> print int(t) # 秒级时间戳
1625823160
>>> print len(str(int(t))) # 秒级时间戳
10
>>> print int(t*1000) # 毫秒级时间戳
1625823160794
>>> print len(str(int(t*1000))) # 毫秒级时间戳
13
>>> print int(t*1000000) # 微秒级时间戳
1625823160794828
>>> print len(str(int(t*1000000))) # 微秒级时间戳
16
>>> print datetime.datetime.fromtimestamp(int(t))
2021-07-09 17:32:40
>>> print datetime.datetime.fromtimestamp(t)
2021-07-09 17:32:40.794828

3. 几天前/后的时间

>>> import datetime
>>> now = datetime.datetime.now()
>>> day_delta = 1
>>> yesterday_str = str(now + datetime.timedelta(days=-day_delta))[:10]
>>> print now
2021-07-09 17:23:50.685756
>>> print yesterday_str 
2021-07-08
>>> tomorrow_str = str(now + datetime.timedelta(days=day_delta))[:10]
>>> print tomorrow_str
2021-07-10

4. 求时间差的两种方法

方法一

>>> print (datetime.datetime.strptime("2021-07-09 15:50:59", '%Y-%m-%d %H:%M:%S') - datetime.datetime.strptime("2021-07-08 12:30:49", '%Y-%m-%d %H:%M:%S'))
1 day, 3:20:10
>>> print (datetime.datetime.strptime("2021-07-09 15:50:59", '%Y-%m-%d %H:%M:%S') - datetime.datetime.strptime("2021-07-08 12:30:49", '%Y-%m-%d %H:%M:%S')).seconds
12010

方法二

>>> import time
>>> t = time.time()
>>> t2 = time.time()
>>> print datetime.datetime.fromtimestamp(t)
2021-07-09 17:32:40.794828
>>> print datetime.datetime.fromtimestamp(t2)
2021-07-09 17:52:32.658307
>>> t2 - t
1191.8634791374207
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值