PythonではExcelWriterなど一部のプログラムの解説にwithが使われていることがあります。このwith文とはいったい何なのか?何をしているのかについて簡潔にまとめています。
with文の用途と内容
■用途
「開始」と「終了」がセットになった処理に使う。
・ファイルを開いて読み書きを行う。
・DBにアクセスし処理後に終了するなど。
■処理内容
「開始」と「終了」がセットになる処理で、
with文を使って「開始」すると、処理実行後に自動で「終了」してくれる。
■メリット
・終了の処理を書かなくていい。
・終了の処理を書き忘れることがない。
withの基本構文
with ①開始処理 as ②変数:
③処理
①開始処理
└ファイルを開くなどの、通信を開始する処理を記述。
②変数
└処理①を呼び出すための変数(略称)
③処理
└実行する処理。この処理が完了すると自動でファイルを閉じる(通信を切断する)
with文を使ったコードの例
pythonの公式ドキュメントの中でも、
ファイルを開くopen関数や、エクセルを開くExcelWriterで用いられている。
with open('spamspam.txt', 'w', opener=opener) as f:
print('This will be written to somedir/spamspam.txt', file=f)
with ExcelWriter('path_to_file.xlsx') as writer:
df.to_excel(writer)
参考
Pythonのwith文の公式ページ