用Python语言实现对EXCEL文件的读写

       Python语言对EXCEL文件的读写,根据EXCEL文件的版本不同分为两种方法。第一种方法是基于EXCEL03版的读写方法,第二种是基于EXCEL07版的读写方法。这两种方法,笔者感觉到最明显的区别是,EXCEL03中列数最多只支持256列数据,而EXCEL07中在列数上会达到上万条。所以,自认为还是有必要将这两种方法都粘贴出来。

       第一种是基于EXCEL03版的读写方法代码如下:

import xlrd
import xlwt


def write03Excel(path):
    book = xlwt.Workbook()
    sheet1 = book.add_sheet("2003测试表")
    value = [["1,1", "1,2", "1,3"],
             ["2,1", "2,2", "2,3"],
             ["3,1","3,2","3,3"]]
    for i in range(0, len(value)):
        for j in range(0, len(value[i])):
            sheet1.write(i, j, value[i][j])
    book.save(path)
    print("写入数据成功!")


def read03Excel(path):
    book = xlrd.open_workbook(path)
    sheet1 = book.sheet_names()
    worksheet = book.sheet_by_name(sheet1[0])
    for i in range(0, worksheet.nrows):
        row = worksheet.row(i)
        for j in range(0, worksheet.ncols):
            print(worksheet.cell_value(i, j), "\t", end="")
        print()

第二中是基于EXCEL07版的读写方法,代码如下:

import openpyxl

def write07Excel(path):
    book = openpyxl.Workbook()
    sheet1 = book.active
    sheet1.title = 'Sheet1'

    value = [["1,1", "1,2", "1,3"],
             ["2,1", "2,2", "2,3"],
             ["3,1","3,2","3,3"]]
    for i in range(0, len(value)):
        for j in range(0, len(value[i])):
            sheet1.cell(row=i+1, column=j+1, value=str(value[i][j]))

    book.save(path)
    print("写入数据成功!")


def read07Excel(path):
    book = openpyxl.load_workbook(path)
    sheet1 = book.get_sheet_by_name('Sheet1')

    for row in sheet1.rows:
        for cell in row:
            print(cell.value, "\t", end="")
        print()
本程序的源码下载地址为: https://github.com/XiaoYaoNet/EXCEL

猜你喜欢

转载自blog.csdn.net/qq_38697681/article/details/79467566