python读写Excel表格的简单方法
admin
2023-02-15 04:40:06
0

  安装两个库: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郑州人流医院 http://mobile.zzzzyy120.com/

  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


相关内容

热门资讯

佛山零空间无人机,大载重与高速... 随着低空经济放开准入、低空智能化应用全面普及,工业无人机已经从单一航拍测绘,延伸到重型物资空中运输和...
原创 1... 华为折叠屏不断创新,最初以双折叠屏发展为主,而现在推出三折叠屏、阔型屏、折叠屏电脑等,不仅仅只是在智...
中国移动官宣将推AI-eSIM... IT之家 5 月 5 日消息,2026 移动云大会将于 5 月 7 日-9 日在江苏苏州金鸡湖国际会...
对话梁建章:入境游有望贡献GD... 图片为携程联合创始人、董事局主席梁建章 出品 | 搜狐科技 作者 | 张莹 4月29日,携程联合创始...
出轨怀孕打小三:水果AI视频成... 最近,全世界网友都在发出共同的悲鸣—— 我的抖音和TikTok好难看。 一打开短视频软件,满屏幕都是...
又扯“安全风险”,欧盟对中国逆... 【文/观察者网 王恺雯】 近年来,欧盟持续泛化“安全”概念,无理打压中国产品和技术。据英国《金融时...
微软Surface Pro商用... IT之家 4 月 18 日消息,科技媒体 Notebook Check 昨日(4 月 17 日)发布...
OpenAI最前沿的AI智能体... IT之家 4 月 22 日消息,OpenAI 今天(4 月 22 日)发布 ChatGPT Imag...
华为Pura系列及全场景新品发... 2026年4月20日,华为Pura系列及全场景新品发布会在广州举行,HUAWEI Pura 90系列...
对话北电数智邵兵:可信数据,正... “在AI时代,国产数据服务商迎来全球化的新机遇。 近期,由中国计算机学会指导、北电数智主办的第二届“...