Resumo : neste tutorial, você aprenderá sobre conversão de tipo em Python e algumas funções úteis de conversão de tipo.
Introdução à conversão de tipo em Python
Para obter informações dos usuários, você usa a input()
função. Por exemplo:
value = input('Enter a value:')
print(value)
Linguagem de código: Python ( python )
Ao executar este código, ele solicitará uma entrada no Terminal:
Enter a value:
Linguagem de código: Python ( python )
Se você inserir um valor, por exemplo, um número , o programa exibirá esse valor novamente:
Enter a value:100
100
Linguagem de código: Python ( python )
No entanto, a input()
função retorna uma string e não um número inteiro .
O exemplo a seguir solicita que você insira dois valores de entrada: preço líquido e taxa de imposto. Depois disso, calcula o imposto e exibe o resultado na tela:
price = input('Enter the price ($):')
tax = input('Enter the tax rate (%):')
tax_amount = price * tax / 100
print(f'The tax amount price is ${tax_amount}')
Linguagem de código: Python ( python )
Quando você executa o programa e insere alguns números:
Enter the price ($):100
Enter the tax rate (%):10
Linguagem de código: Python ( python )
… você receberá o seguinte erro:
Traceback (most recent call last):
File "main.py", line 4, in <module>
tax_amount = price * tax / 100
TypeError: can't multiply sequence by non-int of type 'str'
Linguagem de código: Python ( python )
Como os valores de entrada são strings, você não pode aplicar o operador de multiplicação.
Para resolver esse problema, você precisa converter as strings em números antes de realizar os cálculos.
Para converter uma string em um número, você usa a int()
função. Mais precisamente, a int()
função converte uma string em um número inteiro.
O exemplo a seguir usa a int()
função para converter as strings de entrada em números:
price = input('Enter the price ($):')
tax = input('Enter the tax rate (%):')
tax_amount = int(price) * int(tax) / 100
print(f'The tax amount is ${tax_amount}')
Linguagem de código: Python ( python )
Se você executar o programa e inserir alguns valores, verá que funciona corretamente:
Enter the price ($):
100
Enter the tax rate (%):
10
The tax amount is $10.0
Linguagem de código: Python ( python )
Outras funções de conversão de tipo
Além das int(str)
funções, Python oferece suporte a outras funções de conversão de tipo. A seguir mostramos os mais importantes por enquanto:
float(str)
– converte uma string em um número de ponto flutuante .bool(val)
– converter um valor em um valor booleano ,True
ouFalse
.str(val)
– retorna a representação em string de um valor.
Obtendo o tipo de um valor
Para obter o tipo de valor, você usa a type(value)
função. Por exemplo:
>>> type(100)
<class 'int'>
>>> type(2.0)
<class 'float'>
>>> type('Hello')
<class 'str'>
>>> type(True)
<class 'bool'>
Linguagem de código: Python ( python )
Como você pode ver claramente na saída:
- O número
100
tem o tipo deint
. - O número
2.0
tem o tipo defloat
. - A string
'Hello'
tem o tipostr
. - E o
True
valor tem o tipo debool
.
Na frente de cada tipo, você vê a class
palavra-chave. Não é importante por enquanto. E você aprenderá mais sobre a aula mais tarde.
Resumo
- Use a
input()
função para obter uma string de entrada dos usuários. - Use funções de conversão de tipo como
int()
,float()
,bool()
estr(vaue)
para converter um valor de um tipo para outro. - Use a
type()
função para obter o tipo de um valor.