Python Tutorial - Números e Conversão

  1. Tipo de dados de número Python
  2. Conversão do Tipo de Número Python
  3. Números Fracionários Python

Nesta seção, você aprenderá o tipo de dados numéricos na programação Python e as operações matemáticas que você pode realizar sobre esses números. Além disso, você aprenderá como converter de um tipo de dado para outro.

Tipo de dados de número Python

O tipo de dados numéricos em Python inclui:

  1. Integers
  2. Números de pontos flutuantes
  3. Números complexos

Os números inteiros não têm nenhuma parte fracional/decimal.

Os números de pontos flutuantes contêm uma parte decimal.

Números complexos têm uma parte real e uma parte imaginária. Números complexos estão na forma x + yj, onde x é a parte real e yj é a parte imaginária.

A função type() é utilizada para obter o tipo de dados de uma variável ou, mais geralmente, de um objeto. A função isinstance() é utilizada para verificar se a variável pertence ou não a uma classe em particular.

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

Os números inteiros podem ser de qualquer comprimento, mas os números em ponto flutuante devem ter apenas até 15 casas decimais.

Os números inteiros também podem ser representados nos formatos binário (base 2), hexadecimal (base 16) e octal (base 8). Isto pode ser feito através de prefixos. Verifique a tabela abaixo:

Sistema de números Prefixos
Binário ‘0b’ ou ‘0B’
Octal ‘0o’ ou ‘0O’
Hexadecimal ‘0x’ ou ‘0X’

Exemplo:

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

Conversão do Tipo de Número Python

Conversão de Tipo Implícito

Se você adicionar um número do tipo float e um outro número do tipo int, o tipo do resultado será float. Aqui o int é convertido para float implicitamente.

>>> 2 + 3.0
5.0

Aqui, 2 é um número inteiro que é convertido para flutuar implicitamente e você tem 2.0.

Esta conversão do tipo implícito também é chamada de coerção.

Conversão de Tipo Explícito

Você também poderia fazer uma conversão explícita do tipo de dados utilizando funções 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

Se você quiser converter o valor float para o valor int então a parte decimal será truncada.

Números Fracionários Python

Um módulo chamado fractions é utilizado para realizar operações que envolvem número fracionário. O módulo fractions pode representar um número fracionário como numerador/denominador.

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

A função Fraction do módulo fractions irá converter o decimal em frações e então você pode realizar operações matemáticas nessas frações:

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