jakeyfly
V2EX  ›  问与答

Python 中关于字符串转换成时间的问题,如何才能不要年份呢

  •  
  •   jakeyfly · Jun 1, 2018 · 2419 views
    This topic created in 2925 days ago, the information mentioned may be changed or developed.

    5-31 13:13 比如这样的 datetime.strptime(‘ 5-31 13:13 ’, '%m-%d %H:%M') 会变成 1900-05-31 13:13:00

    能不能不要年份 不要秒啊

    12 replies    2018-06-01 15:57:48 +08:00
    Sylv
        1
    Sylv  
       Jun 1, 2018 via iPhone
    datetime.strftime(format) 了解一下。
    blankme
        2
    blankme  
       Jun 1, 2018
    5-31 13:13
    这个不是一个“时间”
    jakeyfly
        3
    jakeyfly  
    OP
       Jun 1, 2018
    @Sylv
    @blankme 我是想变成这样的格式有办法不
    ThirdFlame
        4
    ThirdFlame  
       Jun 1, 2018
    手动+118 年呗。
    ThirdFlame
        5
    ThirdFlame  
       Jun 1, 2018
    然后 还是 datetime.strftime(format) 了解一下吧。
    blankme
        6
    blankme  
       Jun 1, 2018
    datetime object 数据结构就是 year -> microsecond,你不填就自动填 0.
    想要特定格式输入输出用 strptime & strftime
    jakeyfly
        7
    jakeyfly  
    OP
       Jun 1, 2018
    @blankme 是用的这个,但是我获取的时间是字符串 就是上面写的那样 没有年 没有秒 是我要先把年份加上去后再转换成时间吗
    blankme
        8
    blankme  
       Jun 1, 2018
    @jakeyfly
    建议按实际情况加上年份,如果你需要对时间作计算操作的话,闰年 /非闰年,包括两个时间跨年度,会影响计算结果
    Qzier
        9
    Qzier  
       Jun 1, 2018 via iPhone
    你没有提供年份,默认填充 1900 年,要么自己在字符串前面加“ 2018-”,format 改一下
    wibile
        10
    wibile  
       Jun 1, 2018
    dateparser 了解一下:
    dateparser.parse('5-31 13:13')
    dateparser.parse('2 天前')

    大部分格式都可以 hold
    jakeyfly
        11
    jakeyfly  
    OP
       Jun 1, 2018
    @blankme 是否输出的时候可以只显示月日而没有年,是这样吗 大佬
    jakeyfly
        12
    jakeyfly  
    OP
       Jun 1, 2018
    @Qzier 因为这个时间的年份并不重要 我有别的字段可以明确是那一年,是否输出的时候可以不显示年,要是这样的话那年份是多少也就无所谓了是吧
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1112 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 47ms · UTC 18:21 · PVG 02:21 · LAX 11:21 · JFK 14:21
    ♥ Do have faith in what you're doing.