Buenas tardes , tengo una duda muy simple que ahora no recuerdo :)
Como hago una funcion (def) para invertir números(dígitos) , se hacerlo con string
Ejemplo a[::-1]
Pero solo con díjitos?
123456789 --> 987654321
Gracias
| |||
invertir numeros en una función Buenas tardes , tengo una duda muy simple que ahora no recuerdo :) Como hago una funcion (def) para invertir números(dígitos) , se hacerlo con string Ejemplo a[::-1] Pero solo con díjitos? 123456789 --> 987654321 Gracias |
| ||||
Respuesta: invertir numeros en una función Podrías probar convertirlo a string y luego volverlo int:
Código Python:
Ver original Saludos
__________________ Grupo Telegram Docker en Español |
| |||
Respuesta: invertir numeros en una función Cita: Tengo entendida esa pero no me acuerdo :( , pero sin estring Ejemplo : 183 / 10 = 1 83 / 10 = 8 , 30 / 10 = 3 Con el % también , pero no me acuerdo :s Hagamos las cosas bien xd , si nos piden números hagamoslo con números :) Sabes algo ? |
| ||||
Respuesta: invertir numeros en una función Ok, es fácil. Propiedades de la división con enteros:
Código:
Propiedades del modulo 10, es que cualquier número, modulo 10 te regresa su ultimo dígito.183 / 10 == 18 18 / 10 == 1 1 / 10 == 0
Código:
Otra propiedad interesante es la siguiente:183 % 10 == 3 18 % 10 == 8 1 % 10 == 1
Código:
Ahora solo te falta combinar esas propiedades. x = 0 x += 10 * x + 3 # 3 x += 10 * x + 8 # 38 x += 10 * x + 1 # 381 |
| |||
Respuesta: invertir numeros en una función Cita: La última la conozco , muy interesante.
Iniciado por razpeitia Ok, es fácil. Propiedades de la división con enteros:
Código:
Propiedades del modulo 10, es que cualquier número, modulo 10 te regresa su ultimo dígito.183 / 10 == 18 18 / 10 == 1 1 / 10 == 0
Código:
Otra propiedad interesante es la siguiente:183 % 10 == 3 18 % 10 == 8 1 % 10 == 1
Código:
Ahora solo te falta combinar esas propiedades.x = 0 x += 10 * x + 3 # 3 x += 10 * x + 8 # 38 x += 10 * x + 1 # 381 En mi función como hago : def invertir(num) for x in range(len(num)) # num no vale nada :S y peta ...... print invertir(123456789) No me sale :) |
| |||
Respuesta: invertir numeros en una función Tengo : def reverse(data_list): return data_list[::-1] print reverse([1,2,3,4]) print reverse('hola') Pero aqui le dices que es string no me interesa :) Ahora tengo y funciona pero no lo quiero asíi !!"!"O!·!"$!" def reverse(data_list): return int(str(data_list)[::-1]) print reverse(123456) Última edición por drakgoku1; 08/02/2012 a las 11:36 |
| |||
Respuesta: invertir numeros en una función Cita: Lo he visto hacer con el len() , te sorprenderías de python :) Tengo una duda como le marcas el final ? si no puedes con un len() o ='\0' en un while? Quiero algo parecido a esto :
Código Python:
Ver original Última edición por drakgoku1; 08/02/2012 a las 12:13 |
| |||
Respuesta: invertir numeros en una función Hacerlo asi es correcto?
Código Python:
Ver original claro el >=1 dice + grandes o = que 1 , si pongo, -2 -1 0 1 2 3, no funciona :) Como lo arreglo ? sin un len() o ='\0' Última edición por drakgoku1; 08/02/2012 a las 12:57 |
| |||
Respuesta: invertir numeros en una función Alguna solución de como le marco el final a ese while / for en una funcion ? Última edición por drakgoku1; 11/02/2012 a las 08:12 |
| |||
Respuesta: invertir numeros en una función Pues "num" está siendo dividido entre 10, con división entera, por lo que en realidad la condición del while debería ser >= 0. Por ejemplo, 4/10 da 0. Negativos nunca habrá, porque un número positivo dividido entre otro positivo no puede dar negativo. Saludos. |
| |||
Respuesta: invertir numeros en una función Hola buenas, voy a resolver el problema. Usando las propiedades que ya se han dicho:
Código Python:
Ver original
Código Python:
Ver original
Código Python:
Ver original Entonces el código quedaría más o menos así:
Código Python:
Ver original Ojo, que si nuestro número termina en 0, hay un problema, porque 0*10+b=b, por lo que queda sin el 0. Si queremos arreglar este error, pasamos el valor a String:
Código Python:
Ver original |
Etiquetas: |