Facundo Batista wrote:
Hi!

A thread in PyAr raised the question that, considering that strings
are immutable, why a slice of a string is a copy and not a reference
to a part of that string.

I couldn't answer why, so I'm asking here...Is it because the
reference counting will be complicated? Is it because it'd be
inefficient in other way? It's something else? Or is something that
could be done... but is not done yet?

Thank you very much!


In fact, a slice is *not* always a copy! In at least some (simple) cases, a slice references the original string:

>>> s = 'abc'
>>> t = s[:]
>>> s is t
True
>>> id(s)
3081872000L
>>> id(t)
3081872000L

Gary Herron




_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to