有没有一种方法可以从Python中的datetime对象提取时间?

时间:2019-04-25 04:48:02

标签: python

我想从Python中的datetime对象提取时间值。这是我使用的代码:

t = '2018-12-16 17:59:00'
t.strftime('%H:%M:%S')

代码显然有问题,因为我收到此错误:

AttributeError: 'str' object has no attribute 'strftime'

我正在使用Python 3,我需要转换大约30000个日期时间值。

2 个答案:

答案 0 :(得分:1)

from datetime import datetime as dt
t = '2018-12-16 17:59:00'
t = dt.strptime(t, '%Y-%m-%d %H:%M:%S')
print(t.strftime('%H:%M:%S'))

在日期时间方法中

strptime是从字符串转换为日期时间的方法

strftime是从日期时间转换为字符串的方法

答案 1 :(得分:0)

这是一个字符串,而不是日期时间对象。您可能应该使用datetime对象:

t = datetime(year, month, day[, hour[, minute[, second[, microsecond[,tzinfo]]]]])

但是,如果要使用您的字符串,可以将其拼接为两个(以空格分隔)的部分:

t = t.split()  # t = ['2018-12-16', '17:59:00']

然后参加第一部分:

date = t[0]