【问题标题】:Converting a string to a date format?将字符串转换为日期格式?
【发布时间】:2019-10-13 09:36:38
【问题描述】:

我想将字符串“17.07.2019”转换为日期格式 17-07-2019(或 17-Jul-2019)

我试过这段代码

from datetime import datetime
x = '17.07.2019'    
y=datetime.strptime(x,'%d.%m.%y')    
y=datetime.strftime(x,'%d.%m.%y')

但我收到此错误

TypeError: descriptor 'strftime' requires a 'datetime.date' object but received a 'str'

然后我尝试了

y=pd.to_datetime(x,'%d.'%m.%Y')

但我收到了这个错误

SyntaxError: invalid syntax

【问题讨论】:

    标签: python date format


    【解决方案1】:

    strftime用于将datetime转换为strstrptime用于将str转换为datetime

    这是你需要的:

    from datatime import datetime as date
    x = '17.07.2019'
    y = date.strptime(x, '%d.%m.%Y')
    new_format = y.strftime('%d-%m-%Y')
    

    你也可以直接转换成新格式

    new_format = date.strptime('17.07.2019', '%d.%m.%Y').strftime('%d-%m-%Y')
    

    【讨论】:

      【解决方案2】:

      你可以使用 str.replace 来做这么简单的事情。

      y = x.replace('.', '-')
      

      或者要修复您的代码,您只需在 y 上使用 strftime

      y = date.strptime(x, '%d.%m.%Y')
      z = y.strftime('%d-%m-%Y')
      

      【讨论】:

        猜你喜欢
        • 2013-12-28
        • 1970-01-01
        • 2014-01-18
        • 1970-01-01
        相关资源
        最近更新 更多