HOLA CHICOS/AS
Mi duda es como sacar de una cadena de texto en Python, sólo los números
cadena = str(input("introduce cadena:"))
cadena = 123desf345
solo quiero que me imprima 123345 ¿Cómo lo hago?, alguien me puede ayudar
Alguna función ya hecha de python que me haga esto
Gracias de antemano
Cita de: Tuplado en 29 Mayo 2012, 23:51 PM
solo quiero que me imprima 123345 ¿Cómo lo hago?, alguien me puede ayudar
Alguna función ya hecha de python que me haga esto
import re
cadena = "123abcdef456"
cadena = re.sub("\D", "", cadena)
print cadena
saludos
Muchas gracias campeón
Hola, buen día.
Yo sinceramente prefiero el método sin librerías: print "".join([x for x in "123jajaja345" if x.isdigit()])
Salida: 123345
http://codepad.org/20R5e4HX ahí la salida online
Pd: raw_input es la función para pedir datos alfanuméricos.
Saludos, Javier
Hola,
Se me ocurre otra forma de hacerlo...
cString = '1Hola2Mundo3p4c5sd6jaja7...8:D9-0'
nString = ''
for i in cString:
if (i >= chr(48)) and (i <= chr(57)):
nString += i
print nString
Salida:
1234567890
Atte. Sebastián.,
Cita de: EleKtro H@cker en 30 Mayo 2012, 10:13 AM
import re
cadena = "123abcdef456"
cadena = re.sub("\D", "", cadena)
print cadena
saludos
Esta es la mejor opción, por simplicidad y eficiencia.
Cita de: adastra en 31 Mayo 2012, 21:03 PM
Esta es la mejor opción, por simplicidad y eficiencia.
Recien empienzo con python, pero si se programar en otros lenguajes. Creo que es lo contrario, puede que el codigo sea mas corto. Pero el programa sera menos eficiente...debido a que estamos usando mas memoria y recursos del sistema al importar un modulo (importas todo el modulo re solo para usar una funcion). Por lo que es mas eficiente (en terminos de recursos del sistema) usar los build-in's
Saludos!!
Cita de: El As del Club Paris en 1 Junio 2012, 18:37 PM
Recien empienzo con python, pero si se programar en otros lenguajes. Creo que es lo contrario, puede que el codigo sea mas corto. Pero el programa sera menos eficiente...debido a que estamos usando mas memoria y recursos del sistema al importar un modulo (importas todo el modulo re solo para usar una funcion). Por lo que es mas eficiente (en terminos de recursos del sistema) usar los build-in's
Saludos!!
Si es cierto... omite lo de eficiencia, :xD :xD sin embargo es la forma más sencilla y limpia de hacerlo.
Buenas,
Se podría únicamente importar la función que se va a utilizar del módulo:
from re import sub
cadena = "123abcdef456"
cadena = sub("\D", "", cadena)
print cadena
Un saludo.
Cita de: criskapunk en 2 Junio 2012, 05:10 AM
Buenas,
Se podría únicamente importar la función que se va a utilizar del módulo:
from re import sub
cadena = "123abcdef456"
cadena = sub("\D", "", cadena)
print cadena
Un saludo.
+1 ;D
Muy buena esa manera también WindHack:
Lo único que lo estoy haciendo todo con variables globales, para coger práctica, soy nuevo en esto y quiero ir adquiriendo base poco a poco pero sin pausa, pero te repito muchas gracias y buena idea también hacerlo con sentencias de condiciones.
Un saludo
Me alegro que te haya servido la función que puse, Tuplado.
Un placer, y sigue practicando, campeón.
Saludos.,
Atte. Sebastián.,