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 comparar, calcular ou exibir valores. Este capítulo apresenta como converter de forma segura e destaca onde iniciantes frequentemente cometem erros.

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

12345
print(int(7)) # 7 print(int(2.9)) # 2 - truncates toward zero print(int(-2.9)) # -2 print(int("42")) # 42 print(int(" -15 ")) # -15
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

123
print(float(3)) # 3.0 print(float("2.5")) # 2.5 print(float("1e3")) # 1000.0
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.

12345
print(str(42)) # "42" print(str(3.5)) # "3.5" name, score = "Ada", 98 msg = f"{name} scored {score}" print(msg)
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 a Evitar

  • int("2.5") gera ValueError - use float() primeiro, depois trunque ou arredonde;
  • Hábito de localidade: "2,5" é inválido - utilize "2.5";
  • Underlines em strings de entrada: "1_000" é inválido - remova os underlines antes: "1_000".replace("_", "");
  • Surpresa de veracidade: bool("0") é True - compare explicitamente o conteúdo da string 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

Suggested prompts:

Can you explain more about how type conversion works in Python?

What are some common errors beginners make with type conversion?

Can you show examples of converting between other types, like lists or dictionaries?

Awesome!

Completion rate improved to 5

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 comparar, calcular ou exibir valores. Este capítulo apresenta como converter de forma segura e destaca onde iniciantes frequentemente cometem erros.

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

12345
print(int(7)) # 7 print(int(2.9)) # 2 - truncates toward zero print(int(-2.9)) # -2 print(int("42")) # 42 print(int(" -15 ")) # -15
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

123
print(float(3)) # 3.0 print(float("2.5")) # 2.5 print(float("1e3")) # 1000.0
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.

12345
print(str(42)) # "42" print(str(3.5)) # "3.5" name, score = "Ada", 98 msg = f"{name} scored {score}" print(msg)
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 a Evitar

  • int("2.5") gera ValueError - use float() primeiro, depois trunque ou arredonde;
  • Hábito de localidade: "2,5" é inválido - utilize "2.5";
  • Underlines em strings de entrada: "1_000" é inválido - remova os underlines antes: "1_000".replace("_", "");
  • Surpresa de veracidade: bool("0") é True - compare explicitamente o conteúdo da string 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