Manipule texto com métodos de string e organize seu código em funções reutilizáveis.
s = "Olá, Mundo!"
s.lower() # "olá, mundo!"
s.upper() # "OLÁ, MUNDO!"
s.strip() # remove espaços das bordas
s.split(",") # ["Olá", " Mundo!"]
s.replace("o","0") # "Olá, Mund0!"
len(s) # 11
"vogal" in "abogado" # True s.isdigit() # só números? s.isalpha() # só letras?
def saudar(nome):
return f"Olá, {nome}!"
mensagem = saudar("Ana")
print(mensagem) # Olá, Ana!
// Exercícios
Leia uma frase e conte quantas vogais ela tem (a, e, i, o, u — maiúsculas ou minúsculas).
Percorra a frase com for letra in frase.lower(): e verifique se letra in "aeiou".
Leia uma palavra e verifique se ela é um palíndromo (lê-se igual de frente para trás, ex: "arara", "ovo"). Ignore maiúsculas/minúsculas.
Compare a palavra com ela invertida: palavra == palavra[::-1]. Use .lower() antes.
Crie uma função calcular_desconto(preco, percentual) que recebe o preço e o percentual e retorna o preço com desconto. Use-a para calcular 3 produtos diferentes.
Dentro da função: return preco * (1 - percentual/100). A função deve retornar o valor, não printar.
Crie uma função senha_forte(senha) que retorna True se a senha for forte. Critérios: pelo menos 8 caracteres, contém número, contém letra maiúscula.
Use any(c.isdigit() for c in senha) para verificar se tem número. Mesma ideia para c.isupper().
Crie uma função formatar_nome(nome) que recebe um nome em qualquer formato (maiúscula, minúscula, misturado) e retorna: nome capitalizado, iniciais (ex: "A.S."), e o total de letras (sem espaços).
Use nome.title() para capitalizar. Para iniciais: ".".join(p[0].upper() for p in nome.split()). Para contar letras: len(nome.replace(" ", "")).