Roulette wheel
mattia
gervaz at gmail.com
Thu Mar 5 10:05:05 EST 2009
Il Thu, 05 Mar 2009 12:54:39 +0100, Peter Otten ha scritto:
> mattia wrote:
>
>> Il Thu, 05 Mar 2009 10:46:58 +0100, Peter Otten ha scritto:
>>
>>> mattia wrote:
>>>
>>>>> Note how get_roulette_wheel() is now completeley independent of the
>>>>> concrete problem you are using it for.
>>>>
>>>> Ok, but also a lot more memory consuming ;-)
>>>
>>> I don't think so. Python references objects; therefore the list
>>>
>>> [tiny_little_thing]*N
>>>
>>> does not consume more memory than
>
> Oops, should have been less.
>
>
>>> [big_fat_beast]*N
>>>
>>> Or did you have something else in mind?
>>>
>>> Peter
>>
>> Ok, understood. So if I have e.g. [[200 elements]]*N, then I'll have N
>> pointers to the same location of my seq, right?
>
> Right. You can verify this with
>
>>>> v = [0]
>>>> items = [v]*5
>>>> v[0] = 42
>>>> items
> [[42], [42], [42], [42], [42]]
>
> which often surprises newbies.
>
> Peter
Great explanation, thanks.
More information about the Python-list
mailing list