zoukankan      html  css  js  c++  java
  • python之excel表操作

    python对excel表操作主要用到三个库,xlrd,xlwt,xlutils,分别用于excel表读,写,修改操作,以下将一个简单介绍

    一、生成excel表:xlwt类

    新建excel表,并写入数据

    操作下:

     1 import xlwt
     2 #生成excel表,选择编码
     3 book=xlwt.Workbook(encoding='utf-8')
     4 #生成标签页
     5 sheet=book.add_sheet('sheet1',cell_overwrite_ok=True)
     6 #写入数据,参数为 行,列,写入内容
     7 sheet.write(0,0,'序号')
     8 sheet.write(0,1,'明细')
     9 sheet.write(1,0,1)
    10 sheet.write(1,1,'python')
    11 #保存excel表,路劲注意存在
    12 book.save(r'C:UsersMr.WhiteDesktop	est001	est001.xls')

    预览一下结果

    二、读取excel表的内容:xlrd类

     1 #打开excel表
     2 workbook=xlrd.open_workbook(r"C:UsersMr.WhiteDesktoppython	est001excel-write001.xls")
     3 # 获取所有工作区
     4 sheetcount=len(workbook.sheets())
     5 print(u"工作区总数: %s" % sheetcount)
     6 # 获取所有sheet
     7 print(u"工作区的名称:", workbook.sheet_names())
     8 #获取第一个工作区的行数和列数
     9 sheet1 = workbook.sheet_by_index(0)  # sheet索引从0开始
    10 sheet1 = workbook.sheet_by_name('sheet1')
    11 rows_num = sheet1.nrows
    12 cols_num = sheet1.ncols
    13 print(u'第一个工作区的行数为%s,列数为%s'%(rows_num,cols_num))
    14 # 获取整行和整列的值(数组)
    15 rows = sheet1.row_values(3)  # 获取第四行内容
    16 cols = sheet1.col_values(2)  # 获取第三列内容
    17 print("第4行内容:", rows)
    18 print("第3列内容:", cols)
    19 print("第2行第1列:", sheet1.cell(1,0).value)
    20 print("第2行第4列:", sheet1.cell_value(1,3))
    21 print("第3行第4列:", sheet1.row(2)[3].value)
    22 print("第4行第4列:", sheet1.cell_value(3, 3))
    23 # 获取数据类型
    24 print("第2行第1列的数据类型:", sheet1.cell(1, 0).ctype)

    三、编辑excel中内容:xlutils.copy

    编辑excel表中内容时,会结合使用到xlrd来读取excel表,生成一份副本

     1 #打开一个excel
     2 rb=xlrd.open_workbook(r"C:UsersMr.WhiteDesktoppython	est001excel-write001.xls")
     3 #copy此excel表
     4 wb=xlutils.copy.copy(rb)
     5 #获取sheet对象,通过sheet_by_index()获取的sheet对象没有write()方法
     6 ws=wb.get_sheet(0)
     7 #写入数据
     8 ws.write(1,4,'test001')
     9 ws.write(2,4,'test002')
    10 #添加sheet页
    11 wb.add_sheet('sheetnn2',cell_overwrite_ok=True)
    12 wb.save(r"C:UsersMr.WhiteDesktoppython	est001excel-write001.xls")
    编辑excel中内容
  • 相关阅读:
    FastCgi与PHP-fpm之间是个什么样的关系
    MySql的like语句中的通配符:百分号、下划线和escape
    mysql将int 时间类型格式化
    navicat 结合快捷键
    MySQL中concat函数
    case when then else end 用法
    PhpStorm主题
    Having与Where的区别
    无需图形界面环境下的浏览器
    Socket常见错误
  • 原文地址:https://www.cnblogs.com/mrwhite2020/p/12700372.html
Copyright © 2011-2022 走看看