在Python中将字符串转换为日期时间并返回到具有不同格式的字符串

时间:2012-11-13 09:26:57

标签: python strftime strptime

我有一个名为 myDateTime 的字符串,值为'datetime.datetime(2012,11,16,3,0)'。

myDateTime = 'datetime.datetime(2012, 11, 16, 3, 0)'

在Python中,如何以“11-16-12 03:00:00”格式获取此字符串?在Python中运行SQL查询后,我得到了这个字符串,以便在其他内容中提取日期时间列表。

我尝试过使用

的内容
x = myDateTime.strftime("%Y-%m-%d %H:%M:%S")

我收到错误“属性错误:'str'对象没有属性'strftime'”。

我也尝试使用strptime,但 myDateTime 不是datetime类型。如果我只能逐字逐句地解释字符串,那么我将拥有一个可以使用的日期时间对象。非常感谢任何帮助!

1 个答案:

答案 0 :(得分:4)

您的对象mydatetime被引号括起来:它是一个字符串。只需删除引号:

myDateTime = datetime.datetime(2012, 11, 16, 3, 0)
myDatetime.strftime("%Y-%m-%d %H:%M:%S")

如果mydatetime是返回字符串的函数(例如SQL查询)的输出,则可以尝试使用eval将其转换为常规Python对象。 非常小心,因为eval根本不安全。您可能希望改为使用第三方模块asteval