将时间字符串转换为日期 - Python

时间:2016-11-11 00:43:02

标签: python

如果我有以下时间字符串:

20150505

如何将其转换为Python中的日期May 5, 2015?到目前为止,我已经尝试过:

from datetime import datetime
sd = datetime.strptime('20150504', '%Y%M%d')

但是这会输出:

2015-01-04 00:05:00

3 个答案:

答案 0 :(得分:4)

首都M表示分钟而不是月份。使用小写m,然后调用strftime方法重构格式:

>>> datetime.strptime('20150504', '%Y%m%d').strftime('%b %d, %Y')
'May 04, 2015'

您可以使用-d指令代替d删除月中的零填充:

  

%-d一天中的十进制数。 (特定于平台)

对于较长的月份名称,您可以使用指令%B代替%b来获取完整的月份名称。

参考:

http://strftime.org/

答案 1 :(得分:0)

如果您知道这是日期而不是日期时间,或者您不知道格式。您可以使用dateutil。

from dateutil.parser import parse
print(parse('20150504'))

答案 2 :(得分:0)

作为OP的例子,这是anwser,并没有领先于零,

System.Web.HttpBrowserCapabilities browser = Request.Browser;
string s = "Browser Capabilities\n"
    + "Type = "                    + browser.Type + "\n"
    + "Name = "                    + browser.Browser + "\n"
    + "Version = "                 + browser.Version + "\n"
    + "Major Version = "           + browser.MajorVersion + "\n"
    + "Minor Version = "           + browser.MinorVersion + "\n"
    + "Platform = "                + browser.Platform + "\n"
    + "Is Beta = "                 + browser.Beta + "\n"
    + "Is Crawler = "              + browser.Crawler + "\n"
    + "Is AOL = "                  + browser.AOL + "\n"
    + "Is Win16 = "                + browser.Win16 + "\n"
    + "Is Win32 = "                + browser.Win32 + "\n"
    + "Supports Frames = "         + browser.Frames + "\n"
    + "Supports Tables = "         + browser.Tables + "\n"
    + "Supports Cookies = "        + browser.Cookies + "\n"
    + "Supports VBScript = "       + browser.VBScript + "\n"
    + "Supports JavaScript = "     + 
        browser.EcmaScriptVersion.ToString() + "\n"
    + "Supports Java Applets = "   + browser.JavaApplets + "\n"
    + "Supports ActiveX Controls = " + browser.ActiveXControls 
          + "\n"
    + "Supports JavaScript Version = " +
        browser["JavaScriptVersion"] + "\n";