What is a “code object” mentioned in this TypeError message?

One way to create a code object is to use compile built-in function:

>>> compile('sum([1, 2, 3])', '', 'single')
<code object <module> at 0x19ad730, file "", line 1>
>>> exec compile('sum([1, 2, 3])', '', 'single')
6
>>> compile('print "Hello world"', '', 'exec')
<code object <module> at 0x19add30, file "", line 1>
>>> exec compile('print "Hello world"', '', 'exec')
Hello world

also, functions have the function attribute __code__ (also known as func_code in older versions) from which you can obtain the function’s code object:

>>> def f(s): print s
... 
>>> f.__code__
<code object f at 0x19aa1b0, file "<stdin>", line 1>

Leave a Comment

techhipbettruvabetnorabahisbahis forumuedusedueduseduseduseduedusedueduedus