【问题标题】:How to fix date formatting using python3如何使用python3修复日期格式
【发布时间】:2019-05-26 12:02:24
【问题描述】:

我有如下日期格式的数据:

    date_format = 190410
    year  = 19
    month = 04
    date  = 10

我想更改日期格式,如下所示:

date_format = 10-04-2019

我该如何解决这个问题?

【问题讨论】:

标签: python python-3.x date


【解决方案1】:
>>> import datetime
>>> date = 190410
>>> datetime.datetime.strptime(str(date), "%y%m%d").strftime("%d-%m-%Y")
'10-04-2019'

datetime.strptime() 接受一个数据字符串和一个格式,并将其转换为datetime 对象,datetime 对象有一个名为strftime 的方法,它将datetime 对象转换为具有给定格式的字符串。您可以从here 中查看%y %m %d %Y 是什么。

【讨论】:

    【解决方案2】:

    这就是你想要的(注意你必须改变你的格式)

    import datetime
    
    date_format = '2019-04-10'
    
    date_time_obj = datetime.datetime.strptime(date_format, '%Y-%m-%d')
    
    print(date_time_obj)
    

    这是另一个例子

    import datetime
    
    date_time_str = '2018-06-29 08:15:27.243860'  
    date_time_obj = datetime.datetime.strptime(date_time_str, '%Y-%m-%d %H:%M:%S.%f')
    
    print('Date:', date_time_obj.date())  
    print('Time:', date_time_obj.time())  
    print('Date-time:', date_time_obj)  
    

    你也可以这样做

    from datetime import datetime, timedelta
    s = "20120213"
    # you could also import date instead of datetime and use that.
    date = datetime(year=int(s[0:4]), month=int(s[4:6]), day=int(s[6:8]))
    
    print(date)
    

    有很多方法可以实现你想要的。

    【讨论】:

      猜你喜欢
      • 2019-09-18
      • 2013-04-30
      • 1970-01-01
      • 2013-08-29
      • 2019-06-09
      • 1970-01-01
      • 1970-01-01
      • 2021-12-12
      相关资源
      最近更新 更多