Python は Excel ドキュメントを読み書きします

I.はじめに

Excelライブラリの読み書きにはPythonを使うととても便利なので、xlwtとxlrdの2つのライブラリをインストールすると楽しく遊べるようになります。次に使い方を見てみましょう

次に、必要なライブラリ

  • xlwt ライブラリ、Excel ドキュメントの作成
  • xlrd ライブラリ、Excel ドキュメントの読み取り

3. オブジェクトの種類

  • ワークブックの種類: ワークブックは Excel ドキュメント全体に対応するワークブックであり、説明する必要はありません。
  • ワークシートの種類: ワークシートはワークシートです。次の図に示すように、Excel ドキュメントには複数のワークシートを含めることができます。ワークシート オブジェクトは、以下のテーブルの 1 つを表します。
    ここに画像の説明を挿入

4 番目に、xlwt ライブラリを使用して Excel ドキュメントを作成します。

オブジェクトの種類を理解した上で、九九九九を Excel 文書に書き込んでみましょう

インポートライブラリ

  • インポートxlwt

例を書く

次に、関数を完了するメソッドを記述します。コメントはすべてコード内にあります。

def writeExample(savePath):
    #创建工作簿
    workbook = xlwt.Workbook(encoding="utf-8");

    #创建工作表
    worksheet = workbook.add_sheet("九九乘法表")

    #写入
    for i in range(0, 9):
        for j in range(0, i+1):
            str = ("%d * %d = %d"%(i+1,j+1,(i+1)*(j+1)))
            #实际写入语句
            worksheet.write(i,j,str)

    #保存
    workbook.save(savePath)

効果

九九九九

5、xlrd ライブラリを使用して Excel ドキュメントを読み取る

インポートライブラリ

xlrdをインポートする

例を読む

def readExample(excelPath):
    #获得book对象
    workbook = xlrd.open_workbook(excelPath)

    #获得sheet对象的3种写法
    worksheet = workbook.sheets()[0] #通过sheet()方法,并结合下标来获取
    # worksheet = workbook.sheet_by_index(0) #直接通过下标来获取
    # worksheet = workbook.sheet_by_name("your excel name") #通过名字来获取


    #因为xlrd库里的api没提示,这里手动指定类型,这样写起来就有提示了
    assert isinstance(worksheet,xlrd.sheet.Sheet)
    #自己写时若不知道类型,可以解开下面的打印,然后复制一下
    #print(type(worksheet))

    #打印行数和列数
    print("行数",worksheet.nrows)
    print("列数",worksheet.ncols)

    #获取第i,j个格子的值的3种写法
    print(worksheet.cell(0,0).value)
    print(worksheet.cell_value(0,0))
    print(worksheet.row(0)[0].value)

    #遍历
    for i in range(worksheet.nrows):
        for j in range(worksheet.ncols):
            print(worksheet.cell_value(i,j))

効果

レンダリングの読み取り

6、完全なコード



import xlwt

excelPath = "./九九乘法表.xls"

def writeExample(savePath):
    #创建工作簿
    workbook = xlwt.Workbook(encoding="utf-8");

    #创建工作表
    worksheet = workbook.add_sheet("九九乘法表")

    #写入
    for i in range(0, 9):
        for j in range(0, i+1):
            str = ("%d * %d = %d"%(i+1,j+1,(i+1)*(j+1)))
            #实际写入语句
            worksheet.write(i,j,str)

    #保存
    workbook.save(savePath)

writeExample(excelPath)


import xlrd

def readExample(excelPath):
    #获得book对象
    workbook = xlrd.open_workbook(excelPath)

    #获得sheet对象的3种写法
    worksheet = workbook.sheets()[0] #通过sheet()方法,并结合下标来获取
    # worksheet = workbook.sheet_by_index(0) #直接通过下标来获取
    # worksheet = workbook.sheet_by_name("your excel name") #通过名字来获取


    #因为xlrd库里的api没提示,这里手动指定类型,这样就有提示了
    assert isinstance(worksheet,xlrd.sheet.Sheet)
    #自己写时若不知道类型,可以解开下面的打印,然后复制一下
    #print(type(worksheet))

    #打印行数和列数
    print("行数",worksheet.nrows)
    print("列数",worksheet.ncols)

    #获取第i,j个格子的值的3种写法
    print("获取第(0,0)个格子的值的3种写法")
    print(worksheet.cell(0,0).value)
    print(worksheet.cell_value(0,0))
    print(worksheet.row(0)[0].value)

    print()

    #遍历
    for i in range(worksheet.nrows):
        for j in range(worksheet.ncols):
            print(worksheet.cell_value(i,j),end="\t")
        print()

readExample(excelPath)

おすすめ

転載: blog.csdn.net/aaa27987/article/details/122920478