python读写Excel表格的简单方法

  

安装两个库:pip安装xlrd, pip安装xlwt

1。python读excel——xlrd

2。python写excel——xlwt

1。读excel数据,包括日期等数据

#编码=进口xlrd utf - 8

进口从datetime datetime

进口日期def read_excel ():

#打开文件

wb=xlrd.open_workbook (r 'test.xlsx ')

#获取所有表的名字

打印(wb.sheet_names ())

#获取第二个表的表明

sheet2=wb.sheet_names () [1]

# sheet1索引从0开始,得到sheet1表的句柄

sheet1=wb.sheet_by_index (0)

rowNum=sheet1。nrows

colNum=sheet1。ncols

# s=sheet1.cell (1,0) .value.encode (utf - 8)

s=sheet1.cell (1,0)。值

#获取某一个位置的数据

# 1 ctype: 0空,1弦,2号,3日,4布尔,5误差

打印(sheet1.cell (1、2) .ctype)

打印(s)

#打印(s.decode (utf - 8))

#获取整行和整列的数据

#第二行数据

row2=sheet1.row_values (1)

#第二列数据

cols2=sheet1.col_values (2)

# python读取excel中单元格内容为日期的方式

#返回类型有5种

我的范围(rowNum):

如果sheet1.cell(我,2)。ctype==3:

d=xlrd.xldate_as_tuple (sheet1.cell_value(我,2),wb.datemode)

打印(日期(* d[3]),结束=")

打印(“\ n”)

if __name__==癬_main__”:

read_excel () ~

运行效果

2。往excel写入数据

#编码=进口xlwt utf - 8

#设置表格样式

def set_stlye(名字、身高、大胆=False):

#初始化样式

风格=xlwt.XFStyle ()

#创建字体

字体=xlwt.Font ()

字体。大胆大胆=

字体。colour_index=4

字体。身高=身高

font.name=

样式名称。字体=字体

#返回风格写入数据

def write_excel ():

f=xlwt.Workbook ()

#创建sheet1

sheet1=f.add_sheet (u 'sheet1 cell_overwrite_ok=True)

row0=[u的业务”,你的状态”,你“北京”,你的上海”,你“广州”,你“深圳”,你的状态小计”,你“合计”)

column0=[u”机票”,你的船票”,你的火车票”,u的汽车票”,你的其他的)

状态=[u的预定的,你的出票”,你“退票”,你的业务小计”)

我的范围(0,len (row0)):

sheet1。写(0,我,row0[我],set_stlye(“新罗马”,220年,真的))

我,j=1, 0

当我& lt; 4 * len (column0): #控制循环:每次加4

#第一列

sheet1.write_merge(我+ 3,0,0,column0 [j], set_stlye(“天线”,220年,真的))

#最后一列

sheet1.write_merge(我+ 3、7、7)

我+=4

sheet1。write_merge(21日21日0 1 u的合计”,set_stlye(“新   罗马",220年,真正的)

i=0

i<4 * len (column0): #控制外层循环:每次加4

j的范围(0,len(地位)):#控制内层循环:设置每一行内容

sheet1.write (i + j + 1, 1,状态[j])

我+=4

#创建sheet2

sheet2=f.add_sheet (u 'sheet2’, cell_overwrite_ok=True)

row0=[u的姓名’,你的年龄”,你的出生日期”,你“爱”好,你的关系的)

column0=[u 'UZI”、u 'Faker”u“大司马”,u 'PDD ' u '冯提莫的]

#生成第一行

我的范围(0,len (row0)):

sheet2。写(0,我,row0[我],set_stlye (“Times New Roman”, 220年,真的))

#生成第一列

我的范围(0,len (column0)):

sheet2。写(i + 1 0 column0[我],set_stlye (“Times New Roman”, 220年,真的))

f.save (data.xls)

if __name__==癬_main__”:

write_excel () ~

在数据。xls种生成了sheet1和sheet2


python读写Excel表格的简单方法