<div class="gmail_quote">On 29 March 2012 19:05, Mark Shannon <span dir="ltr"><<a href="mailto:mark@hotpy.org">mark@hotpy.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Tim Delaney wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">There are many things you can do with bytecode manipulation (whether you should is another question). Among other things, I've used it for optimisation (e.g. my optimised self.super recipe that probably isn't actually available online anymore). Instrumentation of code is another thing, although these days you're probably better off using a decorator.</div>
<div class="im">
<br>
There aren't a lot of real use cases, but if nothing else it can be a lot of fun :)<br>
</div></blockquote>
<br>
You can do all of those things without changing the __code__ attribute.<br>
Just create a new function instead.<br></blockquote><div><br></div><div>Not if you want anything that holds an existing reference to the function to get the new behaviour. Sometimes you need to change things in-place.</div>
<div><br></div><div>Tim Delaney¬†</div></div>