[Python] 302 自製ライブラリpandas_exの機能追加 to_html デフォルト設定

前の記事の続きです。

自製ライブラリpandas_exのto_html関数は引数が6つもあるため、第4引数以降はデフォルト値を設定して省略可能にしました。

import pandas as pd

def to_html(df,html_name,encoding,header=False,index=False,border=1):
# header,index:True or False
# border:1(重線),2(重線)
# 第4引数(header)以降は省略可

    html_string = '''
    <html>
        <head>
            <meta charset={encoding}>
            <title></title>
        </head>
        <body>
            {table}
        </body>
    </html>
    '''

    with open(html_name,'w') as f:
        f.write(html_string.format(table=df.to_html(header=header,index=index),encoding=encoding))

    with open(html_name,'r') as f:
        html = f.read()

    if border == 1:
        html_new = html.replace('border="1"','border="1" style="border-collapse: collapse; border-color: #add8e6"')
    elif border == 2:
        html_new = html.replace('border="1"','border="1" style="border-collapse: separate; border-color: #add8e6"')

    with open(html_name,'w',encoding=encoding) as f:
        f.write(html_new)
import pandas as pd
from my_library import pandas_ex as pd_ex

df = pd.read_csv("test.csv",encoding='shift_JIS')

# 第5,6引数は省略
pd_ex.to_html(df,"test.html","UTF-8",True)