日期时间的Python字符串格式

时间:2015-02-26 11:33:28

标签: python string datetime formatting

我正在尝试解决问题:

在库代码中我有类似的东西:

return format % (value.year, value.month, value.day, value.hour, 
                 value.minute,value.second, value.microsecond)

其中format是带格式的字符串:

format = "%04d-%02d-%02d %02d:%02d:%02d.%06d"

对于这种格式,可能的输出可以是:

2015-02-26 11:28:45.466000

我只能设置格式(字符串格式,也许是某些功能?),库代码是不可触及的。有没有办法得到像这样的东西:

2015-02-26 11:28:45

2 个答案:

答案 0 :(得分:0)

你有几个:

  • 拆分字符串并使用它,这对于一次性
  • 非常有用
  • 解析日期,如果您正在对其进行其他操作可能会更好

以下是这些选项的示例:


您可以使用功能split()执行此操作,并使用字符.作为分隔符。
请注意,这假设您只能在字符串中获得一个点。

result = "2015-02-26 11:28:45.466000" 
final_str = result.split('.')[0]
print(final_str)
>>> 2015-02-26 11:28:45

使用datetime解析日期:

import datetime

date_fmt = "%Y-%m-%d %H:%M:%S"
result_str = "2015-02-26 11:28:45.466000"

date = datetime.datetime.strptime(result_str, date_fmt+".%f")
date_str = date.strftime(date_fmt)

print(date_str)
>>> 2015-02-26 11:28:45

答案 1 :(得分:0)

您可以使用split()功能

def reduce(mydate):
     newformat = mydate.split('.')[0]
     return newformat

print(reduce("2015-02-26 11:28:45.466000")) #2015-02-26 11:28:45

Documentation