[pyar] Tamaño de un arreglo definido dinamicamente

Joaquin Sorianello soriasoft en gmail.com
Mie Ago 11 15:48:15 ART 2010


2010/8/11 Sebastian Bassi <sebastian.bassi en globant.com>:
> 2010/8/10 Claudio Freire <klaussfreire en gmail.com>
>>
>> self.vr = [ valor for i in xrange(tamanio) ]
>>
>
> Pero en este caso, como valor es cte si tiene sentido crearlo de una tipo:
> self.vr = [valor]*tamanio
>
>>>> valor = 50
>>>> tamanio = 10
>>>> [ valor for i in xrange(tamanio) ]
> [50, 50, 50, 50, 50, 50, 50, 50, 50, 50]
>>>> [valor]*tamanio
> [50, 50, 50, 50, 50, 50, 50, 50, 50, 50]
>
> Pero en general sí tenes que usar la otra forma, donde vas agregando el
> valor al final de la lista sin redimensionarla antes, solo que en este caso
> en particular me parece mejor usar el *.

Guarda con usar [b]*n, estas creando una lista con n referencias al objeto b.

>>> a = ['pancho', 'coca']
>>> b = [a]*4
>>> b
[['pancho', 'coca'], ['pancho', 'coca'], ['pancho', 'coca'], ['pancho', 'coca']]
>>> a[1] = 'fernet'
>>> b
[['pancho', 'fernet'], ['pancho', 'fernet'], ['pancho', 'fernet'],
['pancho', 'fernet']]
>>> a = 'chita'
>>> b
[['pancho', 'fernet'], ['pancho', 'fernet'], ['pancho', 'fernet'],
['pancho', 'fernet']]

-- 
Joaquín Sorianello

Sea libre, use software libre



More information about the pyar mailing list