【问题标题】:How to initialize a datetime.time object from a string?如何从字符串初始化 datetime.time 对象?
【发布时间】:2012-09-15 07:22:35
【问题描述】:

有没有像datetime.datetime.strptime() 这样的方法,它接受像'16:00' 这样的字符串并返回一个datetime.time(16,0) 对象(即,一个只包含时间而不是日期的对象)?

编辑: 我可以使用 datetime.datetime.strptime(),但它会返回一个 datetime.datetime,而且我只想要时间,而不是日期。

【问题讨论】:

    标签: python datetime time strptime


    【解决方案1】:
    import time
    time.strptime("16:00", "%H:%M")
    

    【讨论】:

    • 它创建一个time.struct_time(tm_year=1900, tm_mon=1, tm_mday=1, tm_hour=16, tm_min=0, tm_sec=0, tm_wday=0, tm_yday=1, tm_isdst=-1),而不是datetime.time
    • 你可以使用datetime.datetime.fromtimestamp(time.strptime(...))
    • @Joran,这将创建一个 datetime.datetime 对象,我需要一个没有日期的对象。
    【解决方案2】:
    import datetime
    import time
    def datetimestrptime(time_string,time_fmt):
         t = time.strptime(time_string,time_fmt)
         return datetime.time(hour=t.tm_hour,minute=t.tm_min,second=t.tm_sec)
    print datetimestrptime("16:00","%H:%M")
    16:00:00
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-11-17
      • 2013-12-25
      • 1970-01-01
      • 2013-05-20
      • 2012-12-27
      • 2018-07-31
      • 2013-07-04
      • 1970-01-01
      相关资源
      最近更新 更多