[pyar] Modificar elementos de lista in place

Emiliano Dalla Verde Marcozzi edvm en airtrack.com.ar
Lun Ago 15 18:44:14 ART 2011


El 15 de agosto de 2011 18:35, Roberto Alsina
<ralsina en netmanagers.com.ar>escribió:

> On 8/15/2011 6:24 PM, Lucas wrote:
>
>> 2011/8/15 Roberto Alsina<ralsina en netmanagers.**com.ar<ralsina en netmanagers.com.ar>
>> >:
>>
>>> On 8/15/2011 5:58 PM, Lucas wrote:
>>>
>>>> Gente,
>>>>
>>>> Hablando con un amigo que esta empezando en python, me pregunto si
>>>> python tenia un apply que aplicara a cada elemento de la lista una
>>>> funcion. Y resulta que no pude darle ninguna respuesta convincente, ya
>>>> que todas las formas que se me ocurrieron devuelven una nueva lista.
>>>>
>>>> Cual seria la forma correcta de aplicar a cada elemento de una lista
>>>> una funcion, pero haciendolo dentro de la misma lista?
>>>>
>>> for i, e in enumerate(l):
>>>    l[i]=f(e)
>>>
>>>  Esta fue mi primer sugerencia, pero mi amigo insite en algo menos
>> verbose, viene de javascript donde parece q hay algo como
>> list.aplpy(func) o algo asi.
>>
>
> def apply_in_place(l,f):
>
>    for i, e in enumerate(l):
>        l[i]=f(e)
>
> apply_in_place(l,f)
>
> No lo veo menos verbose ;-)
>
>
Que como dijo Matias, es como llamar a map(funcion, cosa_que_se_itera) ^^
y a continuacion las 1000 y una forma de hacer esto, por aca la mia :P

lista = [f(x) for x in lista]

-- 
*Emiliano Dalla Verde Marcozzi*
Encargado de IT y Python Ninja Developer



San Juan 4879
Rosario. Argentina
Tel. (+54) 341 437 6878
www.airtrack.com.ar

“Si quieres calentar una roca siéntate encima de ella 100 años”.

- proyectos: https://bitbucket.org/edvm
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20110815/c93af4dc/attachment.html>


More information about the pyar mailing list