python读取excel日期,python读取excel单元格格式
导入xlrd
导入日期时间
File=u vodka.xls #注意看中文文件名,稍微处理一下
data=xlrd.open_workbook(文件)
Table=data.sheet_by_index(0)#根据索引读取Excel文件
col content=table . col _ values(1)#读取日期在第二列的列。
Nrows=table.nrows #行数
打印n行
Nols=table.ncols #列数
“Print”有%s列“%ncols #只想测试,就输出它。
#要从Excel中读取日期格式,需要将其转换为Python中的日期格式。有两种方法可以转换它
打印xlrd . XL date _ as _ tuple(table . cell(2,1))。值,0)
#第一次转换为元组形式table.cell(2,1)。value是获取日期单元格中的值并进行测试
打印xlrd . XL date . XL date _ as _ datetime(table . cell(1,1))。值,0)
#这是对datetime对象的第二种直接转换
#循环读数
xlist=[]
对于范围内的I(1,n行):
x=xlrd . XL date _ as _ tuple(table . cell(I,1))。值,0)
#转换为元组形式xldate_as_tuple
#第二个参数有两个值,0或1。0是基于1900年1月1日的日期,1是基于1904年1月1日的日期。该函数返回一个元组,其值类似于:(年、月、日、小时、分钟、最近秒)
Xlist.append(x[0:3])#我只想要前一个,不想分分钟。
对于xlist中的I:
Print i#现在已经得到了它所需要的。
#这是第二种方法的循环值。
对于范围(1,nrows)中的I,ylist=[]:
y=xlrd . XL date . XL date _ as _ datetime(table . cell(I,1))。值,0)
ylist.append(y)
对于ylist中的I:
打印I
#Python对时差的直接作用就是datetime。
d1=datetime.date(2015,10,7)
d2=datetime.date(2013,8,15)
打印类型(d1)
打印((d1-d2)。天)
但是上面方法读取的日期格式不适合直接调用这个函数,因为类型不一样。(Excel有计算日期差的功能,可以直接用)。继续补充。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。