python 时区与日期时间 200315

本文介绍了Python中处理时区的pytz库,包括如何安装、生成时区对象,如UTC和上海时区,以及如何获取当前日期时间并转换为不同时区的时间。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

pytz库

这是一个处理时区的库

安装django框架时会自动安装

也可以通过命令 pip install pytz 安装

In [19]: import pytz

In [20]: pytz
Out[20]: <module 'pytz' from 'C:\\ProgramData\\Anaconda3\\lib\\site-packages\\pytz\\__init__.py'>

In [21]:

生成时区对象

utc时区

In [23]: utc = pytz.timezone('UTC')

In [24]: utc
Out[24]: <UTC>

In [25]:

亚洲上海时区

In [26]: shanghai = pytz.timezone('Asia/Shanghai')

In [27]: shanghai
Out[27]: <DstTzInfo 'Asia/Shanghai' LMT+8:06:00 STD>

In [28]:

获取当前的日期时间对象

In [29]: import datetime

In [30]: now = datetime.datetime.now()

In [31]: now
Out[31]: datetime.datetime(2020, 3, 15, 14, 27, 23, 151236)

In [32]:


当前时间转为utc时间

In [32]: utc_now = now.astimezone(utc)

In [33]: utc_now
Out[33]: datetime.datetime(2020, 3, 15, 6, 27, 23, 151236, tzinfo=<UTC>)

当前时间转为上海时间

In [34]: sh_now = now.astimezone(shanghai)

In [35]: sh_now
Out[35]: datetime.datetime(2020, 3, 15, 14, 27, 23, 151236, tzinfo=<DstTzInfo 'Asia/Shanghai' CST+8:00:00 STD>)

给当前时间指定时区

有时区的时间 = 日期时间.replace(tzinfo=时区对象)
In [42]: now = datetime.datetime.now()

In [43]: now
Out[43]: datetime.datetime(2020, 3, 15, 14, 33, 14, 143324)

In [44]: now.replace(tzinfo=pytz.timezone('UTC'))
Out[44]: datetime.datetime(2020, 3, 15, 14, 33, 14, 143324, tzinfo=<UTC>)

In [45]: now.replace(tzinfo=pytz.timezone('Asia/Shanghai'))
Out[45]: datetime.datetime(2020, 3, 15, 14, 33, 14, 143324, tzinfo=<DstTzInfo 'Asia/Shanghai' LMT+8:06:00 STD>)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值