Converter String em Double em Python
-
Converter uma string em um duplo em Python usando a função
float()
-
Converter uma string em um duplo em Python usando o método
decimal.Decimal()
Neste tutorial, falaremos sobre as várias maneiras de converter uma string em uma variável numérica com a precisão equivalente ao tipo duplo em Python. Ao contrário de outras linguagens de programação como C, C++ e Java, Python não tem nenhuma variável de tipo duplo. Mas o tipo float em Python tem a mesma precisão que double em outras linguagens de programação.
Também podemos converter um número ou número de ponto flutuante armazenado como string em um tipo decimal Python. O tipo decimal pode ter a precisão necessária para um problema e armazenar valores numéricos exatos, ao contrário do tipo flutuante. O tipo flutuante armazena o valor numérico como binário e não pode representar exatamente valores numéricos que não tenham uma representação exata no sistema binário como 3.3
ou 3.14
etc.
Converter uma string em um duplo em Python usando a função float()
A função float()
aceita um número ou uma string como entrada e retorna o número de ponto flutuante ou um tipo float como saída.
Para converter uma string em um float, podemos passar a string para a função float()
. O código de exemplo abaixo demonstra como converter uma string em um float (número de precisão dupla) usando o método float()
.
string = "1974.6323"
myfloat = float(string)
print(myfloat)
Resultado:
1974.6323
Converter uma string em um duplo em Python usando o método decimal.Decimal()
O método do construtor decimal.Decimal()
do módulo decimal
recebe um valor numérico como entrada e o converte em um tipo decimal, que pode armazenar e representar exatamente todos os valores numéricos e pode ter a precisão necessária.
Podemos passar a string que precisamos converter em um número de precisão dupla para o método Decimal()
e obter uma variável do tipo decimal. O exemplo de código abaixo demonstra como usar o método Decimal()
para converter uma string em um número de precisão dupla em Python.
from decimal import Decimal
string = "1974.6323"
myfloat = Decimal(string)
print(myfloat)
Resultado:
1974.6323