Foros del Web » Programando para Internet » Python »

Como quitar una parte de un número

Estas en el tema de Como quitar una parte de un número en el foro de Python en Foros del Web. Hola me gustaría saber como puedo quitar en Python la parte derecha de un número, o si me podeis orientar donde buscar... Ejemplo: un número ...
  #1 (permalink)  
Antiguo 28/12/2010, 05:10
 
Fecha de Ingreso: diciembre-2010
Ubicación: Mallorca
Mensajes: 139
Antigüedad: 13 años, 3 meses
Puntos: 3
Como quitar una parte de un número

Hola me gustaría saber como puedo quitar en Python la parte derecha de un número, o si me podeis orientar donde buscar...

Ejemplo:

un número que como resultado de una resta me da -5.0 ¿como puedo quitarle la parte decimal y me quede solo -5?.

Gracias.
  #2 (permalink)  
Antiguo 28/12/2010, 06:23
 
Fecha de Ingreso: febrero-2010
Mensajes: 5
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: Como quitar una parte de un número

Cita:
Iniciado por jugivi Ver Mensaje
Hola me gustaría saber como puedo quitar en Python la parte derecha de un número, o si me podeis orientar donde buscar...

Ejemplo:

un número que como resultado de una resta me da -5.0 ¿como puedo quitarle la parte decimal y me quede solo -5?.

Gracias.
Creo que con un simple "int(numero)" puedes convertir el numero en formato double o float en un int (sin decimales).
  #3 (permalink)  
Antiguo 28/12/2010, 06:36
 
Fecha de Ingreso: diciembre-2010
Ubicación: Mallorca
Mensajes: 139
Antigüedad: 13 años, 3 meses
Puntos: 3
Respuesta: Como quitar una parte de un número

Gracias por la respuesta Domux, pero sigo con problemas...

resultado = 5.0
resultado=int(resultado)
print resultado

He probado pero me da el error

AttributeError: 'float' object has no attribute 'int'
  #4 (permalink)  
Antiguo 28/12/2010, 06:53
 
Fecha de Ingreso: febrero-2010
Mensajes: 5
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: Como quitar una parte de un número

Cita:
Iniciado por jugivi Ver Mensaje
Gracias por la respuesta Domux, pero sigo con problemas...

resultado = 5.0
resultado=int(resultado)
print resultado

He probado pero me da el error

AttributeError: 'float' object has no attribute 'int'
Que raro... Yo lo acabo de probar y me funciona:

Código:
numero = 5.0
print type(numero)
numero = int(numero)
print numero
Resultado:

Código:
>>> 
<type 'float'>
5
Pon el código a ver si lo estás utilizando mal o algo... Igualmente yo no sé mucho de Python, así que tal vez exista otro método más correcto para hacer esto.
  #5 (permalink)  
Antiguo 28/12/2010, 07:05
 
Fecha de Ingreso: diciembre-2010
Ubicación: Mallorca
Mensajes: 139
Antigüedad: 13 años, 3 meses
Puntos: 3
Respuesta: Como quitar una parte de un número

Gracias por la respuesta, lo que yo hago es un cálculo un poco diferente, aunque el campo a cambiar es float y tiene valor 5.0, como puedes ver me pone 4 como resultado..., no sé porqué.

a = 1.3560
b = 1.3565

resultado = a-b
print type(resultado)
resultado = resultado * 10000
print resultado
resultado=int(resultado)
print resultado

me da 4...

0.0005
<type 'float'>
5.0
4
  #6 (permalink)  
Antiguo 28/12/2010, 07:20
 
Fecha de Ingreso: febrero-2010
Mensajes: 5
Antigüedad: 14 años, 1 mes
Puntos: 0
Respuesta: Como quitar una parte de un número

Cita:
Iniciado por jugivi Ver Mensaje
Gracias por la respuesta, lo que yo hago es un cálculo un poco diferente, aunque el campo a cambiar es float y tiene valor 5.0, como puedes ver me pone 4 como resultado..., no sé porqué.

a = 1.3560
b = 1.3565

resultado = a-b
print type(resultado)
resultado = resultado * 10000
print resultado
resultado=int(resultado)
print resultado

me da 4...

0.0005
<type 'float'>
5.0
4
Te aparece 4 porque el número en realidad no llega a 5, si no que es -4.999999... lo que pasa es que al mostrarlo el programa automaticamente lo redondea a -5 pero a la hora de coger tan solo la parte entera del número (sin los decimales) utiliza el valor real de éste, por eso te aparece un 4.

En cualquier caso, puedes añadir un round() para que a la hora de hacer el cálculo redondee el número a 5 (en este caso).

Código:
resultado=int(round(resultado))
  #7 (permalink)  
Antiguo 28/12/2010, 07:35
 
Fecha de Ingreso: diciembre-2010
Ubicación: Mallorca
Mensajes: 139
Antigüedad: 13 años, 3 meses
Puntos: 3
Respuesta: Como quitar una parte de un número

¡¡ Muchas gracias Domux !!, ¡¡ ahora funciona!!

Etiquetas: quitar
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:03.