Unexpected behavior when initializing class
Mel
mwilson at the-wire.com
Wed Nov 28 10:04:39 EST 2007
Paul Rudin wrote:
> "alfred.fazio at gmail.com" <alfred.fazio at gmail.com> writes:
> A common paradigm to get round this - assuming you want a different
> empty list each time - is something like:
>
> def __init__(self, v = None):
> self.values = v if v else []
>
> (or maybe test explicitly for None, but you get the idea.)
Do test explicitly for None. Otherwise, if you do
a = []
x = ThatClass (a)
it will so happen that x.values will be an empty list, but it won't be
the same list as a.
Mel.
More information about the Python-list
mailing list