然而,你实际上需要传递一个datetime对象给
我在使用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)