Python0/27 lições

Módulo 1 • Primeiros passos

Strings e f-strings

Ferramentas e leitura
Leitura100%
Aula guiada50–75 min5 etapas práticas

Nesta aula, você vai compreender Strings e f-strings com explicação progressiva, exemplo resolvido, checagens e prática. Nada de apenas copiar: cada etapa prepara a próxima.

Antes de começar: Leia a aula anterior do módulo se algum termo parecer novo. Você pode testar o exemplo antes de continuar.

Ao terminar, você vai conseguir

  • Explicar Strings e f-strings com suas próprias palavras
  • Reconhecer as partes importantes em um exemplo real
  • Identificar e corrigir os erros mais frequentes
  • Aplicar o conteúdo em uma atividade prática
1

Entrada

Reconheça os dados e condições disponíveis.

2

Processamento

Use Strings e f-strings para transformar a entrada.

3

Saída

Confira o resultado e os casos que podem falhar.

0/6 atividades
1

Entenda o problema

O que é Strings e f-strings

String é uma sequência de caracteres imutável: toda operação que 'muda' um texto na verdade devolve um texto novo. Entender isso evita metade dos bugs de manipulação de texto.

Cheque seu entendimento

Por que dizemos que strings são imutáveis?

1 de 5

O que você aprendeu

  • String é uma sequência de caracteres imutável: toda operação que 'muda' um texto na verdade devolve um texto novo. Entender isso evita metade dos bugs de manipulação de texto.
  • Repare na última parte: chamar .upper() sem guardar o resultado não altera a variável. Strings nunca mudam no lugar.
  • Evite: Chamar um método de texto e não guardar o retorno (texto.replace(...) sozinho não muda nada).
  • Evite: Somar texto com número sem converter: em Python dá TypeError, em JavaScript vira concatenação silenciosa.

Videoaulas sobre este tema

Se você aprende melhor assistindo, abrimos uma seleção de aulas em vídeo em português sobre exatamente este assunto.

Quiz rápido

0/2 • 0 certas

1. Por que dizemos que strings são imutáveis?

2. Qual a vantagem da f-string / template literal sobre concatenação com +?

Laboratório

1/4

1. Faça funcionar

Imprima o tamanho do texto 'programacaoboa' somado a 1 (a saída deve ser 15).

Abrir no playground
  • Checkpoints da prática (1/4)
  • Escreva sua versão a partir do modeloO texto do editor ainda é igual ao modelo inicial. Altere pelo menos uma linha para que a prática conte como sua.
  • Nenhuma lacuna deixada em branco
  • Execute seu códigoClique em “Verificar resposta” para rodar seu código e comparar a saída com o esperado.
  • Resultado ainda não confereEsperado: a saída precisa conter “15”. Rode o código para comparar. Isso vale porque a aula usa exatamente esse resultado para provar que a lógica está certa.

Escreva sua solução e clique em Verificar.

Tire sua dúvida

Cada resposta é conferida contra o material desta lição antes de aparecer. Sem IA por trás e sem inventar nada.

Strings e f-strings

Python • Módulo 1: Primeiros passos • Codding — material para estudo offline

Aluno: ______________________________ Data: ____ / ____ / ______

Nesta aula, você vai compreender Strings e f-strings com explicação progressiva, exemplo resolvido, checagens e prática. Nada de apenas copiar: cada etapa prepara a próxima.

Objetivos da aula

  • Explicar Strings e f-strings com suas próprias palavras
  • Reconhecer as partes importantes em um exemplo real
  • Identificar e corrigir os erros mais frequentes
  • Aplicar o conteúdo em uma atividade prática

Pré-requisito: Leia a aula anterior do módulo se algum termo parecer novo. Você pode testar o exemplo antes de continuar. • Duração: 50–75 min

Explicação passo a passo

1. O que é Strings e f-strings

String é uma sequência de caracteres imutável: toda operação que 'muda' um texto na verdade devolve um texto novo. Entender isso evita metade dos bugs de manipulação de texto.

Checkpoint: Por que dizemos que strings são imutáveis? — Resposta: Porque toda operação devolve um texto novo em vez de alterar o original

2. Como pensar antes de fazer

Índices começam em 0 e fatiar (slice) devolve um pedaço novo sem alterar o original. Em Python, texto[0:3] pega os três primeiros caracteres; em JavaScript, texto.slice(0, 3) faz o mesmo.

Dica: Não decore a forma. Tente explicar com suas palavras qual problema “Strings e f-strings” resolve.

3. Exemplo completo, do início ao resultado

Formatação moderna evita concatenação com +. Em Python usa-se f-string: f"Olá, {nome}, você tem {idade} anos". Em JavaScript, template literal com crase: `Olá, ${nome}`. Além de mais legível, converte números automaticamente.

nome = "  Ana Souza  "
limpo = nome.strip()          # tira espaços das pontas
partes = limpo.split(" ")     # ['Ana', 'Souza']
inicial = partes[1][0]        # 'S'

# f-string: formata número com 2 casas
nota = 8.5
print(f"{partes[0]} {inicial}. tirou {nota:.2f}")

# strings são imutáveis: isto NÃO muda 'limpo'
limpo.upper()
print(limpo)  # continua "Ana Souza"
TrechoO que faz
nome = " Ana Souza "Cria ou atualiza um valor que será usado pelo restante do exemplo.
limpo = nome.strip() # tira espaços das pontasCria ou atualiza um valor que será usado pelo restante do exemplo.
partes = limpo.split(" ") # ['Ana', 'Souza']Cria ou atualiza um valor que será usado pelo restante do exemplo.
inicial = partes[1][0] # 'S'Cria ou atualiza um valor que será usado pelo restante do exemplo.
# f-string: formata número com 2 casasComentário de orientação: documenta a intenção sem executar uma ação.
nota = 8.5Cria ou atualiza um valor que será usado pelo restante do exemplo.
print(f"{partes[0]} {inicial}. tirou {nota:.2f}")Produz ou devolve o resultado que permite conferir a execução.
# strings são imutáveis: isto NÃO muda 'limpo'Comentário de orientação: documenta a intenção sem executar uma ação.

Dica: Repare na última parte: chamar .upper() sem guardar o resultado não altera a variável. Strings nunca mudam no lugar.

Checkpoint: Qual a vantagem da f-string / template literal sobre concatenação com +? — Resposta: Insere valores direto no texto, converte números e fica mais legível

4. Do detalhe para o todo

Métodos que você vai usar sempre: strip/trim (tira espaços das pontas), lower/upper, replace, split (quebra em lista) e join (junta lista em texto). Todos devolvem um valor novo — se você não guardar o retorno, nada acontece.

5. Erros comuns e como corrigi-los

1. Chamar um método de texto e não guardar o retorno (texto.replace(...) sozinho não muda nada). 2. Somar texto com número sem converter: em Python dá TypeError, em JavaScript vira concatenação silenciosa. 3. Comparar textos sem normalizar espaços e maiúsculas: " Ana" != "ana".

Dica: Quando algo der errado, compare uma diferença por vez com o exemplo. Evite mudar várias partes ao mesmo tempo.

Prática guiada

1. 1. Faça funcionar

Imprima o tamanho do texto 'programacaoboa' somado a 1 (a saída deve ser 15).

texto = "programacaoboa"
# imprima o tamanho do texto + 1
print(0)

Dica: Volte ao exemplo resolvido e compare a estrutura. Chamar um método de texto e não guardar o retorno (texto.replace(...) sozinho não muda nada).

Saída esperada: 15

2. 2. Preveja antes de testar

Sem executar, explique qual resultado o exemplo de Strings e f-strings deve produzir e qual parte é responsável por ele.

Minha previsão:

A parte responsável pelo resultado:

Como vou conferir:

Dica: Use o modelo mental da aula: entrada, transformação e evidência observável.

3. 3. Encontre e corrija o erro

Use o exemplo de Strings e f-strings, identifique um risco citado na aula e registre ou implemente a correção.

texto = "programacaoboa"
# imprima o tamanho do texto + 1
print(0)

Dica: Chamar um método de texto e não guardar o retorno (texto.replace(...) sozinho não muda nada).

Saída esperada: 15

4. 4. Aplique em um caso novo

Crie uma variação própria usando Strings e f-strings. Mude os dados ou o cenário e demonstre que o resultado continua correto.

texto = "programacaoboa"
# imprima o tamanho do texto + 1
print(0)

Dica: Mantenha a estrutura que já funcionou e altere uma decisão por vez.

Saída esperada: 15

Revisão

  • String é uma sequência de caracteres imutável: toda operação que 'muda' um texto na verdade devolve um texto novo. Entender isso evita metade dos bugs de manipulação de texto.
  • Repare na última parte: chamar .upper() sem guardar o resultado não altera a variável. Strings nunca mudam no lugar.
  • Evite: Chamar um método de texto e não guardar o retorno (texto.replace(...) sozinho não muda nada).
  • Evite: Somar texto com número sem converter: em Python dá TypeError, em JavaScript vira concatenação silenciosa.

Exemplo comentado

nome = "  Ana Souza  "
limpo = nome.strip()          # tira espaços das pontas
partes = limpo.split(" ")     # ['Ana', 'Souza']
inicial = partes[1][0]        # 'S'

# f-string: formata número com 2 casas
nota = 8.5
print(f"{partes[0]} {inicial}. tirou {nota:.2f}")

# strings são imutáveis: isto NÃO muda 'limpo'
limpo.upper()
print(limpo)  # continua "Ana Souza"

Repare na última parte: chamar .upper() sem guardar o resultado não altera a variável. Strings nunca mudam no lugar.

Erros comuns

  • Chamar um método de texto e não guardar o retorno (texto.replace(...) sozinho não muda nada).
  • Somar texto com número sem converter: em Python dá TypeError, em JavaScript vira concatenação silenciosa.
  • Comparar textos sem normalizar espaços e maiúsculas: " Ana" != "ana".

Quiz e gabarito completo

  1. 1. Por que dizemos que strings são imutáveis?

    • a) Porque não podem ser copiadas
    • b) Porque toda operação devolve um texto novo em vez de alterar o original
    • c) Porque só aceitam letras
    • d) Porque ocupam memória fixa

    Gabarito: b) Porque toda operação devolve um texto novo em vez de alterar o original — Métodos como replace, upper e strip devolvem um valor novo; o original continua igual.

  2. 2. Qual a vantagem da f-string / template literal sobre concatenação com +?

    • a) É mais rápida de digitar apenas
    • b) Insere valores direto no texto, converte números e fica mais legível
    • c) Permite usar acentos
    • d) Não existe diferença

    Gabarito: b) Insere valores direto no texto, converte números e fica mais legível — A formatação embutida evita conversões manuais e deixa o texto final visível de uma vez.

Codding • Python • Strings e f-strings • Prova final e certificado em codding.lovable.app/cursos/python/prova