将YYYYMMDD/HHMMSS格式的日期/时间转换为Python日期时间

Wes*_*Wes 18 python datetime

我有一个YYYYMMDD格式的日期和一个HHMMSS格式的时间作为列表中第4和第5个元素的字符串.IE:

data[4] = '20100304'
data[5] = '082835'
Run Code Online (Sandbox Code Playgroud)

我正在创建一个datetime实例(在名为generate的字段中),如下所示:

generatedtime = datetime.datetime(int(data[4][:4]),int(data[4][4:6]),int(data[4][6:]),int(data[5][:2]),int(data[5][2:4]),int(data[5][4:6]))
Run Code Online (Sandbox Code Playgroud)

鉴于输入格式无法更改,是否有更简洁的方法来创建我的datetime对象实例?

unu*_*tbu 44

无需进口time; datetime.datetime.strptime可以自己做.

import datetime
dt=datetime.datetime.strptime(data[4]+data[5],'%Y%m%d%H%M%S')
print(dt)
# 2010-03-04 08:28:35
Run Code Online (Sandbox Code Playgroud)

有关格式代码信息(例如%Y%m%d%H%M%S),请参阅该文档strftime.


Mar*_*iek 5

您可能会看看time.strptime

import time
time.strptime('20100304 082835', '%Y%m%d %H%M%S')
Run Code Online (Sandbox Code Playgroud)

以上假设24小时制(%H)。%I如果使用12小时制,请改用。

有关可用格式指令的完整列表,请查看文档中的time.strftime。