将日期格式从str更改为Date



我在使用Xlsxwriter创建的数据框中更改日期列的日期格式时遇到了麻烦。当前的格式是3/31/2016 12:00:00 AM,我认为python正在读取日期并添加时间。我希望格式简单地为dd/mm/yyyy,并与所有列a的已知时间相关联。

下面是我的代码:
date_format= workbook.add_format({'num_format': 'mmm d yyyy'})
date_time= dt.datetime.strftime("%m/%d/%Y")
worksheet.write_datetime(0,0, date_time, date_format)

我得到的错误信息是:TypeError:描述符'strftime'需要一个'datetime '。Date '对象,但收到一个'str'

datetime.strftime用于将日期时间转换为字符串

你没有给它一个datetime对象来转换。

from datetime import datetime
today = datetime.today()   # this returns a datetime object
today.strftime("%m/%d/%Y") # this returns a string
datetime.strftime(today, "%m/%d/%Y") # alternative way to call it

然而,你实际上需要传递一个datetime对象给worksheet.write_datetime

在我的例子中是这样的

today = datetime.today()
date_format= workbook.add_format({'num_format': 'mmm d yyyy'})
worksheet.write_datetime(0, 0, today, date_format)

使用date time.strptime

从字符串解析日期
dateobj = date time.strptime(datestr)

相关内容

  • 没有找到相关文章

最新更新