PythonがExcelファイルを生成する3つの方法


PythonがExcelファイルを生成する3つの方法
  • クラスライブラリxlwt/xlrd
  • は、xls形式などの比較的古いexcelファイルを生成および読み出すために使用され、最大行数は65536行
  • に制限する.
  • ドキュメントアドレス:https://xlwt.readthedocs.io/en/latest/
  • クラスライブラリopenpyxl
  • は、xlsxフォーマット
  • などの2010以降の新しいexcelファイルを生成するために使用される.
  • ドキュメントアドレス:https://openpyxl.readthedocs.io/en/stable/
  • クラスライブラリpandas
  • pandasは最も強力なデータ分析ライブラリであり、excel読み取りと生成モジュール
  • を備えている.
  • ドキュメントアドレス:https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.to_excel.html

  • 0、txtファイルを読み込む
    columns = []
    datas = []
    with open("./pvuv.txt") as fin:
        is_first_line = True
        for line in fin:
            line = line[:-1]
            if is_first_line:
                is_first_line = False
                columns = line.split("\t")
                continue
            
            datas.append(line.split("\t"))
    

    1、xlwtを使用してxlsのexcelファイルを生成する
    # pip install xlwt
    import xlwt
    workbook = xlwt.Workbook(encoding='utf-8')
    sheet = workbook.add_sheet('pvuv_sheet')
    
    #     
    for col,column in enumerate(columns):
        sheet.write(0, col, column)
    #      
    for row, data in enumerate(datas):
        for col, column_data in enumerate(data):
            sheet.write(row+1, col, column_data)
    
    workbook.save('./output/pvuv_xlwt.xls')
    

    2、openpyxlを使用してxlsxのexcelファイルを生成する
    # pip install openpyxl
    from openpyxl import Workbook
    workbook = Workbook()
    
    #   sheet
    sheet = workbook.active
    sheet.title = "  sheet"
    # sheet = workbook.create_sheet(title=" sheet")
    sheet.append(columns)
    for data in datas:
        sheet.append(data)
    
    workbook.save('./output/pvuv_openpyxl.xlsx')
    

    3、pandasを使用してexcelファイルを生成する
    # pip install pandas
    import pandas as pd
    #       
    data = pd.read_csv("./pvuv.txt", sep="\t")
    data.to_excel("./output/pvuv_pandas.xls", index=False)