Python備忘録。内容は初心者向けです。
今回の内容
- CSVファイルを読み込み
- ドルから円へ変換して新しいエクセルへ入力
- 入力されたセルを中央揃え
使用するのはopenpyxl
使用するのは、エクセルファイルを読み書きできるPythonライブラリopenpyxlです。
サンプルコード
import pandas as pd
from openpyxl import Workbook
from openpyxl.utils.dataframe import dataframe_to_rows
from openpyxl.styles import Alignment
wb=Workbook()
ws=wb.active
df=pd.read_csv('usdoll.csv',encoding='shift_jis')
e_df=df[['USドル']]*105
ws['A1']='円'
for row in dataframe_to_rows(e_df,index=None,header=None):
ws.append(row)
for row in ws:
for cell in row:
cell.alignment = Alignment(horizontal = 'center',
vertical = 'center',
wrap_text = False)
wb.save('doll yen exchange.xlsx')
コメント
- 「e_df=df[[‘USドル’]]*105」でドルに105を乗じて円に変換
- 「ws[‘A1’]=‘円’」でA1セルに「円」を入力
- 「ws_new=wb〜」 で新しいシートを「ws_new」へ代入
- 「ws_new[‘A1’]〜」 で新しいシートのA1セルに文字列を入力
- 「for row in ws:〜」でセルを中央揃え
「ws_new[‘A1’]〜」でA1セルに「円」という文字列をいれてますが、もうすこしスマートなやり方があるかもしれませんww
出力
「us doll.csv」の中身。ドルが入力されています。
プログラムを実行すると、ドルに105を乗じて円に変換した数値が入力。新しいエクセルファイルが作成されました。A1セルは「円」になっています。