1.使用的工具包
xlwt:写excel文件,包括新建excel文件、sheet、在excel中写内容
xlrd:读取excel文件内容
这上面两个工具包具体功能可查相应官方文档
2.写excel文件实例
import xlwt
# 设置表格样式
def set_style(name,height,bold=0):
style=xlwt.XFStyle()
font=xlwt.Font()
font.name=name
font.colour_index=0
font.height=height
style.font=font
return style
def write_excel():
# 创建一个excel文件
f=xlwt.Workbook()
# 创建一个名为学生的sheet
sheet1=f.add_sheet('学生',cell_overwrite_ok=True)
row0=["姓名","年龄","出生日期","爱好"]
#写第一行
for i in range(0,len(row0)):
sheet1.write(0,i,row0[i],set_style('Times New Roman',220,True))
#写第一列
sheet1.write(1,0,'张三',set_style('Times New Roman',220,True))
sheet1.write(1,1,21)
sheet1.write(1,2,'2012/1/1')
sheet1.write(1,3,'篮球')
f.save('test.xls')
if(__name__=='__main__'):
write_excel()
实现结果:
3.读excel文件实例
import xlrd
def excel_table_byname(file='test.xls',colnameindex=0,by_name=u'学生'):
# 打开excel文件
data = xlrd.open_workbook(file)
# 根据sheet名字来获取excel中的sheet
table=data.sheet_by_name(by_name)
# 行数
nrows=table.nrows
# 某一行数据
colnames=table.row_values(colnameindex)
list=[]
for rnum in range(0,nrows):
row=table.row_values(rnum)
if(row):
app=[]
for i in range(len(colnames)): # 一列列地读取行的内容
app.append(row[i])
list.append(app) # 装载数据
return list
if(__name__=='__main__'):
tables=excel_table_byname()
for row in tables:
print(row)
读取内容展示: