How does python function return objects? -


in below diagram, have query on name temp returned function f

enter image description here

in local frame f, temp reference variable pointing object 6 of class int, when return temp in f reference variable output part of checkpassingmech frame point same object 6 temp pointing to.

my question:

q1) understanding correct?

q2) if q1 yes, diagram giving illusion temp not reference type , showing value in box rather arrow pointing 6, correct?

q3) if q2 yes, then, can 6 stored in heap , temp , output pointing heap space frame(local stack)

>>> def f():     temp = 6     print(id(temp))     return temp  >>> output = f() 507107408 >>> id(output) 507107408 

from doc:

cpython implementation detail: cpython, id(x) memory address x stored.

so strictly speaking, if value 6, output , temp pointing same object, int object cached when python started.

you may refer identifying objects, why returned value id(...) change? more information.


Comments

Popular posts from this blog

PHPMotion implementation - URL based videos (Hosted on separate location) -

javascript - Using Windows Media Player as video fallback for video tag -

c# - Unity IoC Lifetime per HttpRequest for UserStore -