工作表中的单元格值打印为datetime.datetime,但不打印为日期值-Openpyxl



我有一张excel表,值为:

Date          Item 
01-12-2019    Car
02-12-2019    Truck

我在openpyxl中打开了这个文件,并想将行写入一个文本文件。我使用了以下代码:

wb = load_workbook(filename)
sheet = wb.active
report = open('textfile.txt', 'w+')

i=0
while i <= sheet.max_row:
data = list(cell.value for cell in list(sheet.rows)[i])
report.write(data)
report.write('n')
i +=1

这个代码的输出是:


[datetime.datetime(2019,1,12,0,0), Car]
[datetime.datetime(2019,2,12,0,0), Truck]

但我希望输出为b:


[2019-12-01, Car]
[2019-12-02, Truck]

所以我希望在文件中打印日期值,而不是datetime.datetime,因为用户会看到这个报告。

我应该改变什么。感谢

openpyxl可以使用日期时间对象来存储日期/时间。由于您已经有了datetime对象,请使用datetime.strftime以您想要的格式编写它们。看见这里是所有的格式代码。

from datetime import datetime
d = datetime.now()
print(d.strftime("%d/%m/%y"))

最新更新