2010-05-06から1日間の記事一覧

ガーベージコレクションの過程をデバッグ

gc.set_debugをコールして、リークの起きるオブジェクトをリサイクルさず、gc.garbageリストに保持させる。 gc.collectでガーベージコレクションを強制実行。 それでも残っている物は開放不可オブジェクトとなる。 >>> def dump_garbage(): """ どんなゴミが…

文法表記法

よく文法表記に::=とか変なのが出てきていつも気になってたけど調べた事がなかった。 Pythonでもhttp://www.python.jp/doc/2.5/ref/notation.htmlによるとBNF 文法記法に手を加えたものとなっているので、この機会に勉強しよう。よく見ると正規表現に似てた …

例外のトラップと記録

トラップしたくないエラーがある時の記述例でもある。 >>> import io, traceback >>> def process_all_files(all_filenames,fatal_exceptions=(KeyboardInterrupt, MemoryError)): bad_filenames = {} for one_filename in all_filenames: try: # 宣言されて…