Da trilha de Python Este conceito ainda não saiu como card do dia. ir para o card de hoje

Python Strings Básico

Strings e f-strings

Em Python, strings são sequências imutáveis de caracteres. Isso significa que, uma vez criada, uma string não pode ser alterada no lugar: qualquer operação que "modifique" uma string na verdade cria uma nova. Essa imutabilidade traz segurança e eficiência, e é por isso que métodos como upper() retornam uma nova string em vez de mudar a original.

Você pode acessar partes de uma string usando fatiamento (slicing): s[inicio:fim:passo]. O índice inicial é incluído, o final é excluído, e índices negativos contam a partir do fim. O fatiamento é uma ferramenta poderosa para extrair substrings, inverter strings e muito mais.

As strings vêm com vários métodos úteis, como strip(), split(), replace(), startswith(), etc. Todos retornam novas strings (ou listas) e não alteram a original. Conhecer esses métodos evita reinventar a roda.

As f-strings (format strings) são a forma mais moderna e legível de interpolar valores em strings. Basta prefixar a string com f e usar {expressao}. Dentro das chaves você pode colocar variáveis, chamadas de função e até especificadores de formato como :.2f para limitar casas decimais.

Pontos-chave

  • Strings são imutáveis: métodos como upper() retornam uma nova string, não modificam a original.
  • Fatiamento s[i:j:k] extrai substrings; índices negativos contam do fim e o final é exclusivo.
  • Métodos de string como strip(), split(), replace() são essenciais para manipulação de texto.
  • f-strings permitem interpolar expressões e formatar valores diretamente com {variavel:.2f}.
  • Para "alterar" uma string, você precisa reatribuir o resultado a uma variável.
strings_fstrings.py
nome = "  Python  "
print(nome.strip())          # remove espaços

frase = "aprendendo strings"
print(frase.upper())         # APRENDENDO STRINGS
print(frase[0:5])            # apren (fatiamento)
print(frase[::-1])           # sgnirts odnednerpa (invertida)

# Imutabilidade: métodos retornam nova string
original = "abc"
nova = original.upper()
print(original)              # abc
print(nova)                  # ABC

# f-strings
nome = "Ana"
idade = 25
print(f"{nome} tem {idade} anos.")

pi = 3.14159
print(f"Pi arredondado: {pi:.2f}")   # 3.14

# Expressões dentro de f-strings
print(f"{nome.upper()} tem {idade + 1} anos no próximo ano.")

# Alinhamento e preenchimento
print(f"|{nome:>10}|{idade:^5}|")

Exercícios

  1. 1
    Fácil

    Fatiando uma string

    Dada a string texto = "Python é divertido", use fatiamento para extrair e imprimir:

    1. Os primeiros 6 caracteres.
    2. Os últimos 8 caracteres.
    3. A string invertida.

    Resolver
  2. 2
    Médio

    Formatando com f-strings

    Crie um programa que peça ao usuário (via input) o nome e a idade, e exiba uma mensagem formatada usando f-strings. A mensagem deve ser: Olá, [nome]! Você tem [idade] anos e nasceu em [ano_nascimento]. Considere que estamos em 2025. Use f-strings para calcular o ano de nascimento.

    Resolver
  3. 3
    Desafio

    Processando e formatando dados de uma string

    Dada a string dados = " ana,25; bruno,30; carla,28 ", faça um programa que:

    1. Remova os espaços extras do início e fim.
    2. Divida a string em partes usando ; como separador.
    3. Para cada parte, remova espaços e separe nome e idade usando ,.
    4. Exiba uma linha formatada para cada pessoa no formato: Nome: [nome], Idade: [idade] (nascido em [ano]), onde ano = 2025 - idade.
    5. No final, exiba a média das idades com duas casas decimais.

    Use f-strings e métodos de string. Não use loops explícitos para separar; use split().

    Resolver

Continue estudando