Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Essenciais da Conversão de Tipos | Interações Entre Tipos Diferentes
Tipos de Dados em Python

bookEssenciais da Conversão de Tipos

A conversão de tipos permite transitar entre os principais tipos do Python, possibilitando que valores sejam comparados, calculados ou exibidos.

Convertendo para int

int(x) cria um inteiro.

  • De um int: retorna o mesmo número;
  • De um float: trunca em direção a zero (por exemplo, int(2.9) retorna 2, int(-2.9) retorna -2);
  • De uma string: a string deve representar um inteiro (espaços e sinal opcionais são permitidos). O Python também permite sublinhados entre dígitos, como "1_000" — mas somente se:
  • O sublinhado estiver entre dígitos;
  • Não estiver no início ou no final ("_100", "100_");
  • Não for repetido ou adjacente a um ponto decimal ("1__000", "1_.5").

Conversões válidas

1234567
age_input = " 42 " print(int(age_input)) # 42 print(int(2.9)) # 2 print(int(-2.9)) # -2 print(int("7")) # 7 print(int(" -15 ")) # -15 print(int("1_00_0")) # 1000
copy

Estes geram ValueError

12
int("2.5") # ValueError - not an integer string int("42a") # ValueError
copy

Convertendo para float

float(x) cria um número de ponto flutuante.

  • Funciona para inteiros e strings decimais ou em notação científica ("3.14", "1e2", "5E-3");
  • Vírgulas não são pontos decimais em Python ("2,5", "2.5");
  • Python permite sublinhados dentro dos dígitos em strings numéricas, mas apenas se:
  • O sublinhado estiver entre dígitos;
  • Não estiver no início ou no final ("_3.14", "3.14_");
  • Não estiver adjacente ao ponto decimal ou repetido ("3_.14", "3.__14");
  • A notação científica também deve seguir essas regras ("1e_3").

Conversões válidas

1234
print(float(3)) # 3.0 print(float("2.5")) # 2.5 print(float("1e3")) # 1000.0 print(float("1_000.1_234")) # 1000.1234
copy

Estes geram ValueError

1
float("2,5") # ValueError - use a dot, not a comma
copy

Convertendo para str

str(x) cria uma representação em string legível para humanos. Prefira f-strings ao construir mensagens.

123
print(str(42)) # "42" print(str(3.5)) # "3.5" print(f"Ada scored {98} points.")
copy

Convertendo para bool

bool(x) segue as regras de veracidade do Python.

  • Números: 0 é False, qualquer outro número é True;
  • Strings: "" (vazia) é False, qualquer string não vazia é True (mesmo "0" e "False").
12345
print(bool(0)) # False print(bool(7)) # True print(bool("")) # False print(bool("0")) # True print(bool("False")) # True
copy

Erros Comuns a Evitar

  • int("2.5") gera ValueError - analisar como float() primeiro, depois truncar ou arredondar;
  • Hábito de localidade: "2,5" é inválido - use "2.5";
  • Surpresa de veracidade: bool("0") é True - compare o conteúdo da string explicitamente se necessário, por exemplo s == "0".

1. Qual chamada gera um ValueError?

2. Selecione a afirmação correta.

question mark

Qual chamada gera um ValueError?

Select the correct answer

question mark

Selecione a afirmação correta.

Select the correct answer

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 4. Capítulo 1

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

Suggested prompts:

Can you explain more about how underscores work in numeric strings?

What happens if I try to convert a string with spaces or special characters to int or float?

Can you show examples of converting between these types in more complex scenarios?

bookEssenciais da Conversão de Tipos

Deslize para mostrar o menu

A conversão de tipos permite transitar entre os principais tipos do Python, possibilitando que valores sejam comparados, calculados ou exibidos.

Convertendo para int

int(x) cria um inteiro.

  • De um int: retorna o mesmo número;
  • De um float: trunca em direção a zero (por exemplo, int(2.9) retorna 2, int(-2.9) retorna -2);
  • De uma string: a string deve representar um inteiro (espaços e sinal opcionais são permitidos). O Python também permite sublinhados entre dígitos, como "1_000" — mas somente se:
  • O sublinhado estiver entre dígitos;
  • Não estiver no início ou no final ("_100", "100_");
  • Não for repetido ou adjacente a um ponto decimal ("1__000", "1_.5").

Conversões válidas

1234567
age_input = " 42 " print(int(age_input)) # 42 print(int(2.9)) # 2 print(int(-2.9)) # -2 print(int("7")) # 7 print(int(" -15 ")) # -15 print(int("1_00_0")) # 1000
copy

Estes geram ValueError

12
int("2.5") # ValueError - not an integer string int("42a") # ValueError
copy

Convertendo para float

float(x) cria um número de ponto flutuante.

  • Funciona para inteiros e strings decimais ou em notação científica ("3.14", "1e2", "5E-3");
  • Vírgulas não são pontos decimais em Python ("2,5", "2.5");
  • Python permite sublinhados dentro dos dígitos em strings numéricas, mas apenas se:
  • O sublinhado estiver entre dígitos;
  • Não estiver no início ou no final ("_3.14", "3.14_");
  • Não estiver adjacente ao ponto decimal ou repetido ("3_.14", "3.__14");
  • A notação científica também deve seguir essas regras ("1e_3").

Conversões válidas

1234
print(float(3)) # 3.0 print(float("2.5")) # 2.5 print(float("1e3")) # 1000.0 print(float("1_000.1_234")) # 1000.1234
copy

Estes geram ValueError

1
float("2,5") # ValueError - use a dot, not a comma
copy

Convertendo para str

str(x) cria uma representação em string legível para humanos. Prefira f-strings ao construir mensagens.

123
print(str(42)) # "42" print(str(3.5)) # "3.5" print(f"Ada scored {98} points.")
copy

Convertendo para bool

bool(x) segue as regras de veracidade do Python.

  • Números: 0 é False, qualquer outro número é True;
  • Strings: "" (vazia) é False, qualquer string não vazia é True (mesmo "0" e "False").
12345
print(bool(0)) # False print(bool(7)) # True print(bool("")) # False print(bool("0")) # True print(bool("False")) # True
copy

Erros Comuns a Evitar

  • int("2.5") gera ValueError - analisar como float() primeiro, depois truncar ou arredondar;
  • Hábito de localidade: "2,5" é inválido - use "2.5";
  • Surpresa de veracidade: bool("0") é True - compare o conteúdo da string explicitamente se necessário, por exemplo s == "0".

1. Qual chamada gera um ValueError?

2. Selecione a afirmação correta.

question mark

Qual chamada gera um ValueError?

Select the correct answer

question mark

Selecione a afirmação correta.

Select the correct answer

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 4. Capítulo 1
some-alt