1. Home
  2. VPS Locaweb
  3. Como usar float em Python? Principais métodos e funções!

Como usar float em Python? Principais métodos e funções!

No Python, lidar com números de casas decimais é uma parte comum de muitas aplicações. Quando precisamos trabalhar com valores numéricos em ponto flutuante, o tipo float é a solução.

Vamos guiar você no uso do float em Python e explicaremos como converter valores para esse formato, além de explorar alguns métodos úteis de como formatar a exibição desses números.

Sintaxe do float ()

O float() é uma função em Python usada para converter um valor para ponto flutuante, ou seja, para números que têm casas decimais.

A sintaxe é simples: você usa o nome da função seguido do valor a ser convertido entre parênteses.

Exemplo de uso:

numero = float(10)

print(numero) # Saída: 10.0

Nesse exemplo, o número inteiro 10 foi convertido para o formato de ponto flutuante e resultou em 10.0.

Parâmetros do float ()

A função float() pode receber um único parâmetro:

    • x (opcional): número ou string que precisa ser convertido para um número de ponto flutuante.

Se for uma string, ela deve conter pontos decimais.

Tipo de parâmetro Uso
Float Use como número de ponto flutuante
Integer Use como inteiro
String Deve conter números decimais. Espaços em branco no início e no final são removidos. Uso opcional dos sinais “+” ou “-“. Pode conter NaN, Infinity, inf (minúsculas ou maiúsculas).

Output para números inteiros

Se você passar um número inteiro como argumento para float(), ele será convertido para ponto flutuante. O valor inteiro será transformado em um número decimal com .0.

Exemplo de uso:

inteiro = 5

decimal = float(inteiro)

print(decimal) # Saída: 5.0

Nesse caso, o inteiro 5 foi convertido para o número de ponto flutuante 5.0.

Output para pontos flutuantes

Se você passar diretamente um número em ponto flutuante para float(), o valor será mantido, pois já está no formato desejado.

Exemplo de uso:

numero = 7.89

resultado = float(numero)

print(resultado) # Saída: 7.89

Aqui, o valor 7.89 já é um ponto flutuante. Então, a função float() não altera o valor, mas é sempre possível usar a função para garantir o formato.

Como usar float no Python?

O float() é uma função muito útil em Python quando precisamos lidar com números de ponto flutuante, que têm casas decimais. Agora, vamos explorar como usá-la em diferentes situações.

Converter números inteiros para float

Para converter um número inteiro para um número de ponto flutuante, basta passar o número inteiro como argumento para a função float(). O resultado será o mesmo número, mas em formato decimal.

Exemplo de uso:

numero_inteiro = 7

numero_float = float(numero_inteiro)

print(numero_float) # Saída: 7.0

Aqui, o número inteiro 7 foi convertido para 7.0 após a aplicação da função float().

Converter string para float

Se você tiver uma string que representa um número com casas decimais, também pode usar a função float() para convertê-la para um número de ponto flutuante. A string precisa estar em um formato válido para que a conversão tenha sucesso.

Exemplo de uso:

numero_str = "12.34"

numero_float = float(numero_str)

print(numero_float) # Saída: 12.34

Nesse exemplo, a string “12.34” foi convertida para o número de ponto flutuante 12.34. Caso a string não siga um formato numérico válido, como “12,34”, Python lançará um erro.

Atribuir float a uma variável diretamente

Se você já tem um número decimal e deseja armazená-lo diretamente em uma variável como um float, pode fazer isso sem a necessidade de conversão. O Python, automaticamente, reconhece números com casas decimais como valores de ponto flutuante.

Exemplo de uso:

numero = 3.1415 # número já é do tipo float

print(type(numero)) # Saída: <class 'float'>

Aqui, o valor 3.1415 é atribuído diretamente à variável número, que é automaticamente reconhecida como um tipo float. Isso facilita o trabalho com valores decimais no seu código.

Principais métodos e funções do float

O tipo float em Python oferece alguns métodos e funções úteis para manipular números de ponto flutuante de maneira mais avançada. Vamos explorar os principais abaixo.

float.is_integer()

O método is_integer() verifica se o valor de um número flutuante é, de fato, um número inteiro. Ele retorna “True” se o número for inteiro (ou seja, não tiver casas decimais) e “False” caso contrário.

Exemplo de uso:

numero = 5.0

print(numero.is_integer()) # Saída: True

numero2 = 5.67

print(numero2.is_integer()) # Saída: False

No exemplo, o primeiro número (5.0) é considerado um inteiro. Então, is_integer() retorna “True”. O segundo número (5.67) não é inteiro, logo, retorna “False”.

float.as_integer_ratio()

O método as_integer_ratio() retorna o que representa o número de ponto flutuante como uma fração (numerador, denominador). Isso pode ser útil quando você deseja expressar um número decimal como uma fração.

Exemplo de uso:

numero = 0.75

print(numero.as_integer_ratio()) # Saída: (3, 4)

Aqui, o número 0.75 é representado pela fração 3/4. Esse método é ótimo para converter valores flutuantes em frações exatas.

float.hex()

O método hex() converte um número de ponto flutuante para a sua representação em hexadecimal. Essa função é útil quando você precisa trabalhar com números flutuantes em sistemas que utilizam essa base numérica.

Exemplo de uso:

numero = 12.34

print(numero.hex()) # Saída: '0x1.7ae147ae147ae2p+3'

Nesse exemplo, o número 12.34 é convertido para a sua forma hexadecimal. A string resultante contém a representação em ponto flutuante do número em base 16.

float.fromhex()

O método fromhex() faz a conversão inversa do hex(), ou seja, ele transforma uma string que representa um número em hexadecimal de volta para um número de ponto flutuante.

Exemplo de uso:

numero_hex = '0x1.7ae147ae147ae2p+3'

numero_float = float.fromhex(numero_hex)

print(numero_float) # Saída: 12.34

Aqui, a string em hexadecimal 0x1.7ae147ae147ae2p+3 foi convertida de volta para o número de ponto flutuante 12.34.

float.is_nan()

O método is_nan() verifica se o valor de um número flutuante é “Not a Number” (NaN). Esse valor é usado para indicar operações inválidas, como divisões por zero ou resultados de cálculos indefinidos.

Exemplo de uso:

import math

numero = float('nan')

print(numero.is_nan()) # Saída: True

numero2 = math.sqrt(-1)

print(numero2.is_nan()) # Saída: True

Nesse exemplo, a variável numero é criada como “NaN” e is_nan() retorna “True”. Além disso, o math.sqrt(-1) também retorna “NaN”, pois a raiz quadrada de um número negativo não é um número real.

Como formatar float para exibição?

Quando trabalhamos com números flutuantes, muitas vezes, precisamos formatá-los de uma maneira específica para exibição. Isso pode incluir arredondar, limitar o número de casas decimais ou simplesmente ajustar o formato para melhorar a legibilidade.

Veja algumas abordagens úteis.

Arredondar números flutuantes com formatação de strings

Uma maneira comum de formatar números flutuantes é arredondá-los para um número específico de casas decimais. Isso é útil quando você quer exibir o resultado de cálculos sem mostrar valores muito detalhados.

Usar f-strings no Python 3.6+

Se você utilizar Python 3.6 ou superior, pode aproveitar as f-strings para formatar facilmente os números flutuantes. Elas permitem especificar quantas casas decimais o número deve ter por meio de uma sintaxe simples.

Exemplo de uso:

numero = 12.34567

# Exibir com 2 casas decimais

print(f'{numero:.2f}') # Saída: 12.35

Aqui, :.2f indica que o número deve ser exibido com 2 casas decimais. Isso arredonda o número de forma automática.

Usar a função round

A função round() é outra maneira prática de arredondar números flutuantes em Python. Ela pode ser usada para arredondar um número para o número desejado de casas decimais, sem depender de formatação de strings.

Exemplo de uso:

numero = 12.34567

# Arredondar para 2 casas decimais

numero_arredondado = round(numero, 2)

print(numero_arredondado) # Saída: 12.35

Aqui, a função round() arredonda o número 12.34567 para 12.35 com 2 casas decimais. Essa abordagem é mais voltada para cálculos internos, mas pode ser útil para quando você deseja um valor arredondado diretamente.

Outras abordagens

Além das f-strings e da função round(), existem outras formas de formatar números flutuantes, a depender das necessidades do seu código.

Usar o método .format()

O método .format() também pode ser usado para formatar números flutuantes. Essa abordagem é útil se você utiliza uma versão do Python anterior à 3.6.

Exemplo de uso:

numero = 12.34567

# Exibir com 2 casas decimais com o uso de .format()

print('{:.2f}'.format(numero)) # Saída: 12.35

Aqui, o método .format() funciona de maneira similar às f-strings, mas com uma sintaxe um pouco mais antiga.

Usar a função format()

A função format() também pode ser usada diretamente para formatar números flutuantes, sem a necessidade de f-strings ou do método .format() no caso de strings.

Exemplo de uso:

numero = 12.34567

# Exibir com 2 casas decimais com o uso de .format()

numero_formatado = format(numero, '.2f')

print(numero_formatado) # Saída: 12.35

Nesse exemplo, a função format() é utilizada diretamente para formatar o número com 2 casas decimais. Isso funciona de maneira semelhante ao método .format() e é útil quando se deseja evitar o uso de f-strings.

Variáveis e tipos de dados em Python

Em Python, as variáveis são fundamentais para armazenar informações temporárias durante a execução de um programa. Elas funcionam como contêineres que armazenam valores e podemos manipulá-los conforme necessário em nosso código.

Variáveis

As variáveis são declaradas por meio da atribuição de valores a partir do uso do operador =.

Python é uma linguagem de tipagem dinâmica, o que significa que o tipo da variável é definido pelo valor atribuído, sem a necessidade de declaração explícita. Além disso, Python permite múltiplas atribuições simultâneas.

Exemplo:

idade = 51

nome = "Pedro"

preco = 3.25

Aqui, idade é um inteiro, nome é uma string e preco é um ponto flutuante.

Múltiplas atribuições:

x, y, z = 5, 3.25, "Pedro"

Nesse caso, x recebe o valor 5, y o valor 3.25 e z a string “Pedro”.

Para verificar o tipo de uma variável, utilizamos a função type(), como mostrado abaixo:

print(type(idade)) # <class 'int'>

print(type(nome)) # <class 'str'>

print(type(preco)) # <class 'float'>

Boas práticas: nomes de variáveis devem seguir as convenções do Python, como o uso de letras minúsculas e o separador _ (snake_case), conforme o PEP-8.

Evite usar palavras reservadas e não inicie variáveis com underscores, a não ser em casos específicos.

Exemplo:

data_de_nascimento = "08/11/1973"

valor_total = 55

Tipos de dados em Python

Python é uma linguagem dinamicamente tipada, o que significa que os tipos das variáveis são inferidos automaticamente, sem necessidade de declaração explícita.

Confira os tipos principais:

    • Inteiro (int): números sem parte decimal, como 17 ou -3;
idade = 17

print(type(idade)) # <class 'int'>
    • Ponto flutuante (float): números com parte decimal, como 69.3 ou 1.72;
peso = 69.3

altura = 1.72

print(type(peso)) # <class 'float'>
    • Complexo (complex): representa números complexos, como 70 + 4j;
a = 70 + 4j

print(type(a)) # <class 'complex'>
    • String (str): sequências de caracteres, como palavras ou frases;
nome = "Raquel"

print(type(nome)) # <class 'str'>
    • Boolean (bool): representa valores lógicos, “True” ou “False”;
status = True

print(type(status)) # <class 'bool'>
    • Listas (list): coleções de itens — que podem ser de tipos variados;
alunos = ['Alice', 'Fernanda', 'Michel']

print(type(alunos)) # <class 'list'>
    • Tuplas (tuple): coleções imutáveis de itens;
valores = (540, 20, 22, 73)

print(type(valores)) # <class 'tuple'>
    • Dicionários (dict): estruturas que armazenam pares de chave e valor;
usuarios = {'Bárbara': 19, 'Leandro': 40}

print(type(usuarios)) # <class 'dict'>

Conversão de tipos de dados

Em alguns casos, pode ser necessário alterar o tipo de uma variável. Python oferece funções integradas para realizar essas conversões.

Veja alguns exemplos de conversão a seguir:!

Inteiro para float

n = 50

print(float(n)) # Saída: 50.0

Float para inteiro

m = 320.7

print(int(m)) # Saída: 320

Inteiro para string

valor = 10

print(str(valor)) # Saída: '10'

Esses exemplos mostram como é possível converter tipos de dados de forma flexível em Python, sem complicação.

Agora que você já sabe como funciona o float em Python, que tal aprofundar os seus conhecimentos sobre essa linguagem de programação em nosso guia sobre Python?

Você também pode se interessar pelos nossos serviços:

Este artigo foi útil ?

Artigos relacionados