python 读取 excel 时, 日期变成数字并加.0 的问题

excel 文件内容如下:
python 读取 excel 时, 日期变成数字并加.0 的问题

读取excel内容:

import xlrd
from datetime import datetime
from xlrd import xldate_as_datetime, xldate_as_tuple

filename = r'C:\Users\HP\Desktop\10月\test.xlsx'
rbook = xlrd.open_workbook(filename)
table = rbook.sheets()[0]
rows = table.nrows
cols = table.ncols
print("行数为%s \n列数为%s"%(rows,cols))

row = table.row_values(1)
print(row[1])

打印结果如下

行数为54 
列数为16
43739.0

可以看到第一行的日期格式10月1日变成了43739.0
1. 方式一:只打印第一个时间来让它正常显示, 其他的问题之后再说

real_date_1 = datetime(*xldate_as_tuple(row[0],0)).strftime('%Y-%m-%d')
print(real_date_1)

打印结果如下

2019-10-01
  1. 另一种方式
real_date_2 = xldate_as_datetime(row[0],0).strftime('%m/%d')
print(real_date_2 )

打印结果

10/01

若使用 pandas 来操作 excel 的时候也可以借鉴一下, over…