[BangPypers] Nice "feature"
Ruchir Shukla
ruchiryshukla at gmail.com
Fri Apr 1 15:30:29 CEST 2011
Hello,
This is just because you are changing the value of b and in foo there is a
reference of b.
while in
>>> foo = (1,[2,3,4])
>>> foo[1] += [6]
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'tuple' object does not support item assignment
>>> foo
(1, [2, 3, 4, 6])
>>>
it is changing the value in List but after that python has realized that the
error .
On Fri, Apr 1, 2011 at 6:54 PM, Roshan Mathews <rmathews at gmail.com> wrote:
> On Fri, Apr 1, 2011 at 18:44, Hussain Bohra <hussainbohra_30 at yahoo.com>
> wrote:
> > Atleast on changing list, you gets an exception.
> >
> > On updating dictionary living inside tuple wont throw an exception as
> well.
> >
> I thought the surprising part was that it threw an exception, not that
> it updated the list. Even more surprising was that it threw the
> exception and updated the list too.
>
> >>> a, b = 1, [2, 3, 4]
> >>> foo = (a, b)
> >>> b += [5]
> >>> foo
> (1, [2, 3, 4, 5])
> >>>
>
>
>
> --
> http://about.me/rosh
> _______________________________________________
> BangPypers mailing list
> BangPypers at python.org
> http://mail.python.org/mailman/listinfo/bangpypers
>
--
----------------------------
Kind regards
Ruchir Shukla
Phone: +91 9099020687
ruchiryshukla at gmail.com; Ruchir Shukla <http://ruchir-shukla.blogspot.com/>
More information about the BangPypers
mailing list