zoukankan      html  css  js  c++  java
  • Python读写改Excel的方法

    (注:本文部分内容摘自互联网,由于作者水平有限,不足之处,还望留言指正。)

           面对疾风吧。

           回首往昔,更进一步。

           且随疾风前行,身后一许流星。

           正文:

           数据处理是Python的一大应用场景,而 Excel 则是最流行的数据处理软件。因此用 Python进行数据相关的工作时,难免要和 Excel 打交道。标准的 Excel 文件(xls/xlsx)具有较复杂的格式,并不方便像普通文本文件一样直接进行读写,需要借助第三方库来实现。

    以下内容均在Python3上实现,如果是Python2,则需要修改编码

    一、读Excel表(xlrd模块)

          Xlrd模块只能用来读取数据操作,无法修改数据。

    import xlrd              #导入模块
    data = xlrd.open_workbook('电影.xlsx')    #打开电影.xlsx文件读取数据
    table = data.sheets()[0]       #读取第一个(0)表单
    #或者通过表单名称获取 table = data.sheet_by_name(u'Sheet1')
    print(table.nrows)            #输出表格行数
    print(table.ncols)            #输出表格列数
    print(table.row_values(0))    #输出第一行
    print(table.col_values(0))    #输出第一列
    print(table.cell(0,2).value)  #输出元素(0,2)的值

    输出结果:

    image

    原Excel表格情况:

    image

    二、写Excel表(xlwt模块)

    import xlwt                            #导入模块
    wb = xlwt.Workbook(encoding = 'ascii')  #创建新的Excel(新的workbook),建议还是用ascii编码
    ws = wb.add_sheet('weng')               #创建新的表单weng
    ws.write(0, 0, label = 'hello')         #在(0,0)加入hello
    ws.write(0, 1, label = 'world')         #在(0,1)加入world
    ws.write(1, 0, label = '你好')
    wb.save('weng.xls')                     #保存为weng.xls文件

    在py文件路径下出现了这个文件,内容为:

    image

    三、改Excel表(xlutils模块)

    import xlrd                           #导入模块
    from xlutils.copy import copy        #导入copy模块
    rb = xlrd.open_workbook('weng.xls')    #打开weng.xls文件
    wb = copy(rb)                          #利用xlutils.copy下的copy函数复制
    ws = wb.get_sheet(0)                   #获取表单0
    ws.write(0, 0, 'changed!')             #改变(0,0)的值
    ws.write(8,0,label = '好的')           #增加(8,0)的值
    wb.save('weng.xls')                    #保存文件

    修改后的Excel表为:

    image

    就写到这里吧,工作之余抽空写点,不足之处以后再补充吧。

        树叶的一生,只是为了归根吗?

        长路漫漫,惟剑做伴。

        一剑,一念。

  • 相关阅读:
    85. Maximal Rectangle
    120. Triangle
    72. Edit Distance
    39. Combination Sum
    44. Wildcard Matching
    138. Copy List with Random Pointer
    91. Decode Ways
    142. Linked List Cycle II
    异或的性质及应用
    64. Minimum Path Sum
  • 原文地址:https://www.cnblogs.com/yunguoxiaoqiao/p/7592000.html
Copyright © 2011-2022 走看看