python pandas ISO-8601时间转换为本地时间

ISO-8601

小时、分和秒都用2位数表示,对UTC时间最后加一个大写字母Z,其他时区用实际时间加时差表示。如UTC时间下午2点30分5秒表示为14:30:05Z或143005Z,当时的北京时间表示为22:30:05+08:00或223005+0800,也可以简化成223005+08。
合并表示时,要在时间前面加一大写字母T,如要表示北京时间2004年5月3日下午5点30分8秒,可以写成2004-05-03T17:30:08+08:00或20040503T173008+08。

现有数据:

print(kline_df['datetime'],type(kline_df['datetime'][0] ))

0 2021-02-21T08:49:00.000Z
1 2021-02-21T08:48:00.000Z
2 2021-02-21T08:47:00.000Z
3 2021-02-21T08:46:00.000Z
4 2021-02-21T08:45:00.000Z

195 2021-02-21T05:34:00.000Z
196 2021-02-21T05:33:00.000Z
197 2021-02-21T05:32:00.000Z
198 2021-02-21T05:31:00.000Z
199 2021-02-21T05:30:00.000Z

Name: datetime, Length: 200, dtype: object <class ‘str’>

转换成UTC时间

kline_df['datetime'] = pd.to_datetime(kline_df['datetime'])

0 2021-02-21 08:52:00+00:00
1 2021-02-21 08:51:00+00:00
2 2021-02-21 08:50:00+00:00
3 2021-02-21 08:49:00+00:00
4 2021-02-21 08:48:00+00:00

195 2021-02-21 05:37:00+00:00
196 2021-02-21 05:36:00+00:00
197 2021-02-21 05:35:00+00:00
198 2021-02-21 05:34:00+00:00
199 2021-02-21 05:33:00+00:00
Name: datetime, Length: 200, dtype: datetime64[ns, UTC] <class ‘pandas._libs.tslibs.timestamps.Timestamp’>

最后转换为本地时间

 kline_df['datetime'] = pd.DatetimeIndex(kline_df['datetime']).tz_convert('Asia/Shanghai')
            print(kline_df['datetime'],type(kline_df['datetime'][0] ))

0 2021-02-21 16:53:00+08:00
1 2021-02-21 16:52:00+08:00
2 2021-02-21 16:51:00+08:00
3 2021-02-21 16:50:00+08:00
4 2021-02-21 16:49:00+08:00

195 2021-02-21 13:38:00+08:00
196 2021-02-21 13:37:00+08:00
197 2021-02-21 13:36:00+08:00
198 2021-02-21 13:35:00+08:00
199 2021-02-21 13:34:00+08:00
Name: datetime, Length: 200, dtype: datetime64[ns, Asia/Shanghai] <class ‘pandas._libs.tslibs.timestamps.Timestamp’>

tz_convert()用于将tz-aware轴转换为目标时区。

时间戳转换为本地时区

timestamp=1617608820043
time_  = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(int(timestamp)/1000))
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

nickdlk

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值