[Python-es] Fallo con replace
Omar Gutiérrez
omar.vpa en gmail.com
Sab Oct 11 01:50:28 CEST 2014
Las cadenas son inmutables:
>>> a = 'esto'
>>> a.upper()
'ESTO'
>>> a
'esto'
>>>
*a.upper()* o *a.replace('', '')* en tu caso, sólo devuelven una copia del
objeto más la función que le has aplicado.
El modo interactivo no es diferente, *a.replace()* no hace nada sobre el
objeto *a*, por que *a* es inmutable.
Creo que lo que tú quieres hacer es esto:* a = a.replace("", "")*
Saludos
2014-10-10 18:00 GMT-05:00 Flavio Danesse <fdanesse en gmail.com>:
> no es diferente, lo que pasa es que no haces lo mismo en ambos casos, mira:
>
> en el interprete cando haces a.replace('0','3') te lo imprime, pero en el
> código de tu programa tu no le dices:
> print a.replace('0','3'), por el contrario haces a.replace('0','3') y
> luego imprimes a.
> python hace lo mismo en ambos casos, tu código es diferente.
>
> El 10 de octubre de 2014, 15:20, Juan M. Puertas <soft.sirius en gmail.com>
> escribió:
>
>> ¡Eso era Samuel!.
>> El modo interactivo es ligerqamente diferente.
>> Muchas gracias :-)
>>
>>
>> El 10 de octubre de 2014, 19:15, Samuel de Ancos <sdeancos en gmail.com>
>> escribió:
>>
>>> Buenas compañero :D
>>>
>>> El problema es que replace no aplica sobre a:
>>>
>>> >>> a='12045'
>>> >>> b='3'
>>> >>> a.replace('0','3')
>>> '12345'
>>> >>> a
>>> '12045'
>>> >>>
>>>
>>> deberías hacer una asignación:
>>>
>>> c = a.replace
>>>
>>> >>> c = a.replace('0','3')
>>> >>> c
>>> '12345'
>>> >>>
>>>
>>>
>>>
>>> Saludos!!!
>>>
>>>
>>> El 10 de octubre de 2014, 19:12, Juan M. Puertas <soft.sirius en gmail.com>
>>> escribió:
>>>
>>>> Hola amigos. Tengo un extraño problema con "replace", resulta que en
>>>> modo interactivo hago lo siguiente:
>>>> >>> a='12045'
>>>> >>> b='3'
>>>> >>> a.replace('0','3')
>>>> '12345'
>>>> Sin embargo, cuando hago esto mismo en un módulo py, sucede lo
>>>> siguiente:
>>>>
>>>> import string
>>>>
>>>> a='12045'
>>>> b='3'
>>>> a.replace('0','3')
>>>> print a
>>>> Y el resultado es como si replace no hubiera hecho nada:
>>>> '12045'
>>>> Lo he probado en un ordenador con Ubuntu y en otro con Mint.
>>>> ¿Os sucede a vosotros lo mismo?.
>>>> Gracias :-)
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> Python-es mailing list
>>>> Python-es en python.org
>>>> https://mail.python.org/mailman/listinfo/python-es
>>>> FAQ: http://python-es-faq.wikidot.com/
>>>>
>>>>
>>>
>>> _______________________________________________
>>> Python-es mailing list
>>> Python-es en python.org
>>> https://mail.python.org/mailman/listinfo/python-es
>>> FAQ: http://python-es-faq.wikidot.com/
>>>
>>>
>>
>>
>> --
>> *Nota: Por problemas con el e-mail. Puede que recibas de nuevo este
>> mensaje en un tiempo.*
>>
>> _______________________________________________
>> Python-es mailing list
>> Python-es en python.org
>> https://mail.python.org/mailman/listinfo/python-es
>> FAQ: http://python-es-faq.wikidot.com/
>>
>>
>
> _______________________________________________
> Python-es mailing list
> Python-es en python.org
> https://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.python.org/pipermail/python-es/attachments/20141010/242b23ff/attachment.html>
Más información sobre la lista de distribución Python-es