Entries from 2009-10-19 to 1 day

Pythonでバイトコードを書き換える

Pythonでバイトコードを書き換える方法。co_codeがreadonlyなのでcodeオブジェクトをわざわざ作り直している。 以下の例では乗算を累乗に変更している。 import new import opcode def hoge(n): return 2 * n hoge(16) #=>32 piyo = hoge.func_code.co_code.…