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 tipos principais do Python para que valores possam ser 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 opcionais e sinal são permitidos).

Conversões válidas

12345678910
# Converting different types of user input to integers age_input = " 42 " temperature_reading = 2.9 negative_balance = -2.9 print(int(age_input)) # 42 → clean string converted to int print(int(temperature_reading)) # 2 → fractional part truncated print(int(negative_balance)) # -2 → also truncates toward zero print(int("7")) # 7 → string number becomes integer print(int(" -15 ")) # -15 → handles spaces and sign
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;
  • Vírgulas não são pontos decimais em Python.

Conversões válidas

12345678
# Converting numeric inputs for a shopping calculator quantity = 3 price_str = "2.5" discount_factor = "1e3" # scientific notation for 1000 print(float(quantity)) # 3.0 → integer converted to float print(float(price_str)) # 2.5 → string price converted to float print(float(discount_factor)) # 1000.0 → converts from scientific notation
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.

12345678910
# Formatting a student's exam result student_age = 42 average_score = 3.5 print(str(student_age)) # "42" → number converted to string print(str(average_score)) # "3.5" → float converted to string student_name, final_score = "Ada", 98 report_message = f"{student_name} scored {final_score} points on the exam." print(report_message)
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").
123456789101112
# Checking how different user inputs behave as boolean values login_attempts = 0 notifications = 7 username = "" user_id = "0" status = "False" print(bool(login_attempts)) # False → 0 means no attempts yet print(bool(notifications)) # True → non-zero means new notifications print(bool(username)) # False → empty string means no username entered print(bool(user_id)) # True → any non-empty string is truthy print(bool(status)) # True → text "False" is still a non-empty string
copy

Erros a Evitar

  • int("2.5") gera ValueError - use float() primeiro, depois trunque ou arredonde;
  • Hábito de localidade: "2,5" é inválido - use "2.5";
  • Underscores em strings de entrada: "1_000" é inválido - remova os underscores primeiro: "1_000".replace("_", "");
  • Surpresa de veracidade: bool("0") é True - compare o conteúdo da string explicitamente se necessário, por exemplo s == "0".

1. O que cada linha produz?

2. Qual chamada gera um ValueError?

3. Selecione a afirmação correta.

question-icon

O que cada linha produz?

int(3.9)
int(" -8 ")

bool("0")

Clique ou arraste solte itens e preencha os espaços

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

bookEssenciais da Conversão de Tipos

Deslize para mostrar o menu

A conversão de tipos permite transitar entre os tipos principais do Python para que valores possam ser 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 opcionais e sinal são permitidos).

Conversões válidas

12345678910
# Converting different types of user input to integers age_input = " 42 " temperature_reading = 2.9 negative_balance = -2.9 print(int(age_input)) # 42 → clean string converted to int print(int(temperature_reading)) # 2 → fractional part truncated print(int(negative_balance)) # -2 → also truncates toward zero print(int("7")) # 7 → string number becomes integer print(int(" -15 ")) # -15 → handles spaces and sign
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;
  • Vírgulas não são pontos decimais em Python.

Conversões válidas

12345678
# Converting numeric inputs for a shopping calculator quantity = 3 price_str = "2.5" discount_factor = "1e3" # scientific notation for 1000 print(float(quantity)) # 3.0 → integer converted to float print(float(price_str)) # 2.5 → string price converted to float print(float(discount_factor)) # 1000.0 → converts from scientific notation
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.

12345678910
# Formatting a student's exam result student_age = 42 average_score = 3.5 print(str(student_age)) # "42" → number converted to string print(str(average_score)) # "3.5" → float converted to string student_name, final_score = "Ada", 98 report_message = f"{student_name} scored {final_score} points on the exam." print(report_message)
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").
123456789101112
# Checking how different user inputs behave as boolean values login_attempts = 0 notifications = 7 username = "" user_id = "0" status = "False" print(bool(login_attempts)) # False → 0 means no attempts yet print(bool(notifications)) # True → non-zero means new notifications print(bool(username)) # False → empty string means no username entered print(bool(user_id)) # True → any non-empty string is truthy print(bool(status)) # True → text "False" is still a non-empty string
copy

Erros a Evitar

  • int("2.5") gera ValueError - use float() primeiro, depois trunque ou arredonde;
  • Hábito de localidade: "2,5" é inválido - use "2.5";
  • Underscores em strings de entrada: "1_000" é inválido - remova os underscores primeiro: "1_000".replace("_", "");
  • Surpresa de veracidade: bool("0") é True - compare o conteúdo da string explicitamente se necessário, por exemplo s == "0".

1. O que cada linha produz?

2. Qual chamada gera um ValueError?

3. Selecione a afirmação correta.

question-icon

O que cada linha produz?

int(3.9)
int(" -8 ")

bool("0")

Clique ou arraste solte itens e preencha os espaços

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