うまく使うと楽できそうなwith
なにこれすげすげゔぉー
with 文は、ブロックの実行を、コンテキストマネージャによって定義されたメソッドでラップするために使われます。
今日教えてもらったのですが、うまく使うとかなりすっきりしそう。
Pythonさん暗黙的に呼ばれる関数が多くて、知らないと損した気分になりますね。ちなみにwithを使うと__enter__と__exit__が暗黙的に呼ばれるみたいです。だいたいの挙動はこんなかんじです。
c = WithClass() with c: some_method() # ↓ c = WithClass() c.__enter__() some_method() c.__exit__()
既視感あるなと思ったらこれですが↓
using(IDisposable disposable = new StreamReader(hoge)) { SomeMethod(); }
こちらよりはかなり柔軟な処理ができそうです。