[Tutor] Functions returning multiple values

Giorgio anothernetfellow at gmail.com
Tue Feb 23 19:55:17 CET 2010

Ok Hugo,

so, going back to your example:

def nochange(some_list):
   # create shallow copy of list. NOTE: Shallow copies may still bite
you if you change the list members.
   some_list = some_list[:]
   some_list[1] = 2

Here we've created a new list. It's an object in the global "object-space
:)" but i can't access it outside the function because i don't have a name
referring to it in the global namespace.


And, please let me ask a question: Kent told that nested_namespace(s) are
default in python 2.6. And i found a line confirming this in py2.6 library.
But, what about python 2.5 that as you know is the default on linux?



2010/2/23 Hugo Arts <hugo.yoshi at gmail.com>

> On Tue, Feb 23, 2010 at 2:28 PM, Giorgio <anothernetfellow at gmail.com>
> wrote:
> > Thankyou Hugo!
> > Ok, so i think the key is of my problem is that when doing X = 0 i'm
> > creating a new object, that only exist in the local namespace. BUT, when
> > using a list as a parameter for a function i'm only giving it a new name,
> > but the object it's referring to it's always the same, and is in the
> global
> > namespace.
> > Right?
> Well, mostly, yes. It's important to see that it's not so much the
> objects that live in namespaces, it's the names (otherwise they would
> be called object-spaces, yes?). The objects do not live inside a
> namespace, but are in a conceptually separate place altogether. A name
> lives in a namespace, and can only be referenced inside that space. An
> object can be referenced from anywhere, as long as you have a name
> that points to it.
> So, when you're doing x = 0, you're creating a new object, and the
> name x (in the local namespace) points to that object. That doesn't
> mean the object itself is confined to the local namespace. You could
> write 'return x', which allows you to have a name in the global
> namespace point to that same object.
> Hugo

Email: anothernetfellow at gmail.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/tutor/attachments/20100223/164b1fc9/attachment.html>

More information about the Tutor mailing list