主にプログラミングに関して。Python, .NET Framework(C#), JavaScript, その他いくらか。
記事にあるサンプルやコードは要検証。使用に際しては責任を負いかねます

スポンサーサイト

                
tags:
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

ファイルの入出力とwith

                
tags:
 ファイルはopenで開いたらcloseで閉じなければならん。だからtry構文でもにゃもにゃ書くのが一般的。
 
 pythonにはwith構文があるのでこれを使うとシンプルに書けるようだ。ブロックの処理が終わると閉じておいてくれる。


f = open("gar1.py", "r")
try:
f.read()
finally:
f.close()

with open("gar1.py") as f2:
f2.read()


>>> f
<closed file 'gar1.py', mode 'r' at 0x029317B0>
>>> f2
<closed file 'gar1.py', mode 'r' at 0x02931C80>


 withについて調べてみると、ただファイルの入出力の時にだけclose処理を行ってくれるだけのものではないらしい。クラスを作ったときに__enter__,__exit__それぞれのメソッドを作っておくと、実行して開始、終了の時に実行しておいてくれるらしい。
            

コメントの投稿

非公開コメント

プロフィール

hMatoba

Author:hMatoba
Github

最新記事
リンク
作ったものなど
月別アーカイブ
カテゴリ
タグリスト

検索フォーム
Amazon
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。