Logica e Conceito

Strings em Python são objetos da classe str, caracterizados pela imutabilidade. As operações de transformação não alteram a string original, mas retornam uma nova versão modificada. A análise de strings é fundamental para Data Cleaning (Limpeza de Dados) e Parsing (Análise de Sintaxe).

Fórmula de Localização: O método .find() retorna o índice $i$ onde o padrão começa. Se não encontrado, retorna $-1$. $$i = \text{string.find}(\text{substring})$$


Guia Técnico (Tabela + Codigo Python)

Operação Descrição (Termo Técnico) Exemplo de Uso
len() Length: Retorna o comprimento (quantidade de caracteres). len("Python") -> 6
count() Counting: Conta ocorrências de um caractere/substring. txt.count("a")
find() Searching: Retorna o índice da primeira ocorrência. txt.find("@")
replace() Replacing: Substitui um trecho por outro. txt.replace(".", ",")
upper() Uppercase: Transforma tudo em maiúsculas. txt.upper()
lower() Lowercase: Transforma tudo em minúsculas. txt.lower()
capitalize() Sentence Case: Apenas a primeira letra da string em maiúscula. txt.capitalize()
title() Title Case: Primeira letra de cada palavra em maiúscula. txt.title()
strip() Trimming: Remove espaços inúteis no início e fim. txt.strip()
join() Concatenation: Une elementos de uma lista usando um separador. "-".join(lista)

Implementação Prática (PEP 8)

# Dados brutos extraídos de um sistema legado
client_data: str = "   joão SILVA dos santos   "
product_parts: list = ["Notebook", "Gamer", "RTX"]

# 1. Transformação e Limpeza
clean_name: str = client_data.strip().title()

# 2. Análise (len e count)
char_count: int = len(clean_name)
letter_a_total: int = clean_name.lower().count("a")

# 3. Junção (join)
product_label: str = " | ".join(product_parts)

# 4. Substituição (replace)
price_br: str = "R$ 4.500,00".replace(".", "").replace(",", ".")

print(f"Nome Formatado: {clean_name} ({char_count} chars)")
print(f"Letras 'a' encontradas: {letter_a_total}")
print(f"Etiqueta: {product_label}")