MartinRinehart wrote: > From the manual: > > "code objects are immutable and contain no references (directly or > indirectly) to mutable objects" (3.2) > > I thought my code worked with both mutable and immutable objects. > Whassup?
A code object is an internal data structure that describes a piece of compiled python code. You can create one using compile(): >>> code = compile("a = 42", "<nofile>", "exec") It is immutable: >>> code.a = 42 Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: 'code' object has only read-only attributes (assign to .a) And you can use it like so: >>> a = "whatever" >>> exec code >>> a 42 If you have some spare time you can explore its attributes using dir(code); otherwise: don't bother. Peter -- http://mail.python.org/mailman/listinfo/python-list