python读写Excel表格的实例代码(简单实用)

yipeiwu_com6年前Python基础

安装两个库:pip install xlrd、pip install xlwt

1.python读excel——xlrd

2.python写excel——xlwt

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

#coding=utf-8
import xlrd
import datetime
from datetime import date
def read_excel():
 #打开文件
 wb = xlrd.open_workbook(r'test.xlsx')
 #获取所有sheet的名字
 print(wb.sheet_names())
 #获取第二个sheet的表明
 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).value
 #获取某一个位置的数据
 # 1 ctype : 0 empty,1 string, 2 number, 3 date, 4 boolean, 5 error
 print(sheet1.cell(1,2).ctype)
 print(s)
 #print(s.decode('utf-8'))
 #获取整行和整列的数据
 #第二行数据
 row2 = sheet1.row_values(1)
 #第二列数据
 cols2 = sheet1.col_values(2)
 #python读取excel中单元格内容为日期的方式
 #返回类型有5种
 for i in range(rowNum):
  if sheet1.cell(i,2).ctype == 3:
   d = xlrd.xldate_as_tuple(sheet1.cell_value(i,2),wb.datemode)
   print(date(*d[:3]),end='')
   print('\n')
if __name__ == '__main__':
 read_excel()~

运行效果

2.往excel写入数据

#coding=utf-8
import xlwt
#设置表格样式
def set_stlye(name,height,bold=False):
 #初始化样式
 style = xlwt.XFStyle()
 #创建字体
 font = xlwt.Font()
 font.bold = bold
 font.colour_index = 4
 font.height = height
 font.name =name
 style.font = font
 return style
#写入数据
def write_excel():
 f = xlwt.Workbook()
 #创建sheet1
 sheet1 = f.add_sheet(u'sheet1',cell_overwrite_ok=True)
 row0 = [u'业务',u'状态',u'北京',u'上海',u'广州',u'深圳',u'状态小计',u'合计']
 column0 = [u'机票',u'船票',u'火车票',u'汽车票',u'其他']
 status = [u'预定',u'出票',u'退票',u'业务小计']
 for i in range(0,len(row0)):
  sheet1.write(0,i,row0[i],set_stlye("Time New Roman",220,True))
 i,j = 1,0
 while i <4*len(column0): #控制循环:每次加4
  #第一列
  sheet1.write_merge(i,i+3,0,0,column0[j],set_stlye('Arial',220,True))
  #最后一列
  sheet1.write_merge(i,i+3,7,7)
  i += 4
 sheet1.write_merge(21,21,0,1,u'合计',set_stlye("Time New Roman",220,True))
 i=0
 while i<4*len(column0): #控制外层循环:每次加4
  for j in range(0,len(status)): #控制内层循环:设置每一行内容
   sheet1.write(i+j+1,1,status[j])
  i += 4
 #创建sheet2
 sheet2 = f.add_sheet(u'sheet2',cell_overwrite_ok=True)
 row0 = [u'姓名',u'年龄',u'出生日期',u'爱好',u'关系']
 column0 = [u'UZI',u'Faker',u'大司马',u'PDD',u'冯提莫']
 #生成第一行
 for i in range(0,len(row0)):
  sheet2.write(0,i,row0[i],set_stlye('Times New Roman',220,True))
 #生成第一列
 for i in range(0,len(column0)):
  sheet2.write(i+1,0,column0[i],set_stlye('Times New Roman',220,True))
 f.save('data.xls')
if __name__ == '__main__':
 write_excel()~

在data.xls种生成了sheet1和sheet2:

总结

以上所述是小编给大家介绍的python读写Excel表格的实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

python 将dicom图片转换成jpg图片的实例

主要原理:调整dicom的窗宽,使之各个像素点上的灰度值缩放至[0,255]范围内。 使用到的python库:SimpleITK 下面是一个将dicom(.dcm)图片转换成jpg图片的...

Python设计模式之状态模式原理与用法详解

Python设计模式之状态模式原理与用法详解

本文实例讲述了Python设计模式之状态模式原理与用法。分享给大家供大家参考,具体如下: 状态模式(State Pattern):当一个对象的内在状态改变时允许改变其行为,这个对象看起来...

基于Python实现迪杰斯特拉和弗洛伊德算法

图搜索之基于Python的迪杰斯特拉算法和弗洛伊德算法,供大家参考,具体内容如下 Djstela算法 #encoding=UTF-8 MAX=9 ''' Created on 20...

python opencv将表格图片按照表格框线分割和识别

如下小程序为使用python+opencv将表格图片,按照表格进行分割,并识别分割后的子图片中的文字,希望对需要的小伙伴有一些些帮助。具体的实现见如下代码。 # -*- coding...

使用Python装饰器在Django框架下去除冗余代码的教程

 Python装饰器是一个消除冗余的强大工具。随着将功能模块化为大小合适的方法,即使是最复杂的工作流,装饰器也能使它变成简洁的功能。 例如让我们看看Django web框架,该...