Tutorial de Python - Números y Conversión

Jinku Hu 30 enero 2023
  1. Tipo de datos de números en Python
  2. Conversión de tipo de número Python
  3. Números fraccionarios en Python
Tutorial de Python - Números y Conversión

En esta sección, aprenderás el tipo de datos de los números en la programación en Python y las operaciones matemáticas que puedes realizar con estos números. Además, aprenderás cómo convertir de un tipo de datos a otro.

Tipo de datos de números en Python

El tipo de datos de número en Python incluye:

  1. Enteros
  2. Números de coma flotante
  3. Números complejos

Los números enteros no tienen ninguna parte fraccionaria o decimal.

Los números en coma flotante contienen una parte decimal.

Los números complejos tienen una parte real y una parte imaginaria. Los números complejos tienen la forma x + yj, donde x es la parte real y yj es la parte imaginaria.

La función type() se usa para obtener el tipo de datos de una variable o, más generalmente, de un objeto. La función isinstancia() se utiliza para comprobar si la variable pertenece a una clase particular o no.

x = 3
print("type of", x, "is", type(x))
x = 3.23
print("type of", x, "is", type(x))
x = 3 + 3j
print("is", x, "a complex number:", isinstance(x, complex))

Resultado:

type of 3 is <class 'int'>
type of 3.23 is <class 'float'>
is (3+3j) a complex number: True

Los números enteros pueden tener cualquier longitud, pero los números de coma flotante sólo deben tener un máximo de 15 decimales.

Los números enteros también pueden ser representados en formato binario (base 2), hexadecimal (base 16) y octal (base 8). Esto se puede hacer usando prefijos. Consulte la siguiente tabla:

Sistema de números Prefijos
Binario 0b o 0B
Octal 0o o 0O
Hexadecimal 0x o 0X

Ejemplo:

>>> print(0b110)
6
>>> print(0xFA)
250
>>> print(0o12)
10

Conversión de tipo de número Python

Conversión de tipos implícitos

Si añades un número de tipo float y otro número de tipo int, el tipo del resultado será float. Aquí int se convierte en float implícitamente.

>>> 2 + 3.0
5.0

Aquí, 2 es un entero que se convierte en float implícitamente y tienes 2.0.

Esta conversión de tipo implícito también se llama coerción.

Conversión de tipo explícito

También puede hacer una conversión explícita de los tipos de datos numéricos usando funciones como int(), float(), str(), etc.

>>> x = 8
>>> print("Value of x = ", int(x))
Value of x =  8
>>> print("Converted Value of x = ", float(x))
Converted Value of x = 8.0

Si desea convertir el valor float a valor int entonces la parte decimal será truncada.

Números fraccionarios en Python

Un módulo llamado fractions se utiliza para realizar operaciones que implican un número fraccionario. El módulo fractions puede representar un número fraccionario como numerador/denominador.

import fractions

print(fractions.Fraction(0.5))
1 / 2

La función Fraction del módulo fractions convertirá el decimal en fracciones y entonces podrás realizar operaciones matemáticas sobre estas fracciones:

print(Fraction(0.5) + Fraction(1.5))
print(Fraction(0.5) * Fraction(1.5))
print(Fraction(0.5) / Fraction(1.5))

Resultado:

2
3 / 4
1 / 3
Autor: Jinku Hu
Jinku Hu avatar Jinku Hu avatar

Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.

LinkedIn Facebook