python时间库的使用

python时间库的使用

一、datetime库

datetime是python处理日期和时间的标准库。

  1. 获取当前日期
from datetime import datetime, timedelta, timezone
now = datetime.now()
print('%s-%s' % (now, type(now)))

结果:

2023-05-14 16:32:40.271819-<class ‘datetime.datetime’>

  1. 指定日期和时间
dt = datetime(2022, 9, 16, 9, 0)
print(dt)
print(dt.timestamp()) # 时间戳是一个浮点数

结果:

2022-09-16 09:00:00

1663290000.0

  1. 计算机中时间实际使用数字表示的从epoch time是1970年1月1日00:00:00 UTC+00:00时区的时刻,记为0。
t = 1663290000.0
print(datetime.fromtimestamp(t)) # 本地时间
print(datetime.utcfromtimestamp(t)) # UTC时间

结果:

2022-09-16 09:00:00

2022-09-16 01:00:00

  1. 日期与字符串转化
cDay = datetime.strptime('2023-5-14 16:40:00', '%Y-%m-%d %H:%M:%S')
print(cDay)
now = datetime.now()
print(now.strftime('%a, %b %d %H:%M'))

结果:

2023-05-14 16:40:00

Sun, May 14 16:43

  1. 日期的运算
now = datetime.now()
print(now, now + timedelta(hours=10), now - timedelta(hours=10), now + timedelta(days=2, hours=12))

结果:

2023-05-14 16:45:18.745006 2023-05-15 02:45:18.745006 2023-05-14 06:45:18.745006 2023-05-17 04:45:18.745006

  1. 本地时间与UTC时间的转换
tz_utc_8 = timezone(timedelta(hours=8))
now = datetime.now()
dt = now.replace(tzinfo=tz_utc_8)
print(dt)
utc_dt = datetime.utcnow().replace(tzinfo=timzone.utc)
print(utc_dt)
bj_dt = utc_dt.astimezone(timezone(timedelta(hours=8)))
print(bj_dt)

结果:

2023-05-14 16:50:36.403480+08:00

2023-05-14 08:50:36.404477+00:00

2023-05-14 16:50:36.404477+08:00

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

快乐江小鱼

知识创造财富,余额还是小数

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值