🎯 Strings e Formatação em Python
Em poucas palavras
Definição técnica ou simplificada do conceito.
📝 Notas e Desenvolvimento
🔗 Conexões e Contexto
- Atlas: MdC - Programação
- Notas Relacionadas:
📚 Referências e Fontes
Links Externos
Citações Diretas
📂 Outros Conteúdos Preservados
Acessando Caracteres e Substrings
Você pode acessar elementos individuais dentro da string usando indexação (começando do 0 para o primeiro caractere) e fatiamento (slicing).
name = "Harry"
print(name[0]) # Imprime o primeiro caractere 'H'
print(name[1]) # Imprime o segundo caractere 'a'
print(name[-1]) # Imprime o último caractere 'y'
### Fatiamento (Slicing)
print(name[1:4]) # Imprime 'arr' (do índice 1 até o 3)
print(name[:3]) # Imprime 'Har' (do início até o índice 2)
print(name[2:]) # Imprime 'rry' (do índice 2 até o final)
print(name[::2]) # Imprime 'Hry' (a cada 2 caracteres)Operações Básicas com Strings
Além de acessar caracteres, você pode realizar várias operações:
- Comprimento da String: Use a função
len()para obter o número de caracteres.
print(len(name)) # Saída: 5- Concatenação: Juntar strings usando o operador
+.
first_name = "John"
last_name = "Doe"
full_name = first_name + " " + last_name
print(full_name) # Saída: John Doe- Repetição: Repetir uma string usando o operador
*.
print("abc" * 3) # Saída: abcabcabc- Verificação de Substring: Use o operador
inpara verificar se uma substring existe.
print("arr" in name) # Saída: True
print("xyz" in name) # Saída: FalseMétodos Comuns de String
Python oferece uma vasta gama de métodos para manipular strings:
upper(): Converte todos os caracteres para maiúsculas.lower(): Converte todos os caracteres para minúsculas.capitalize(): Converte o primeiro caractere para maiúscula e o restante para minúscula.strip(): Remove espaços em branco do início e do fim da string.replace(old, new): Substitui todas as ocorrências de uma substring por outra.split(delimiter): Divide a string em uma lista de substrings usando um delimitador.join(list_of_strings): Junta elementos de uma lista de strings em uma única string, usando a string como separador.
text = " Olá, Mundo! "
print(text.strip()) # Saída: 'Olá, Mundo!'
print(text.upper()) # Saída: ' OLÁ, MUNDO! '
print(text.replace("Mundo", "Python")) # Saída: ' Olá, Python! '
palavras = "Python é incrível".split(" ")
print(palavras) # Saída: ['Python', 'é', 'incrível']
nova_frase = "-".join(palavras)
print(nova_frase) # Saída: 'Python-é-incrível'Formatando Strings
Strings podem ser formatadas de diferentes maneiras para incluir valores de variáveis ou expressões. As três principais abordagens são:
- Operador
%(Antigo): Usa placeholders como%s(string),%d(inteiro),%f(float). - Método
str.format(): Usa chaves{}como placeholders e o método.format()para preencher. - F-strings (Strings Literais Formatadas - Recomendado): Prefixo
fantes da string, permitindo expressões diretamente dentro das chaves{}.
name = "Eric"
age = 30
pi = 3.14159
### 1. Usando o operador %
print("Hello, %s. You are %d years old." % (name, age))
print("Value of PI: %.2f" % pi) # Formatação para 2 casas decimais
### 2. Usando o método .format()
print("Hello, {}. You are {} years old.".format(name, age))
print("Hello, {0}. You are {1} years old.".format(name, age)) # Com índices
print("Hello, {n}. You are {a} years old.".format(n=name, a=age)) # Com nomes
print("Value of PI: {:.2f}".format(pi))
### 3. Usando F-strings (Recomendado)
print(f"Hello, {name}. You are {age} years old.")
print(f"Hello, {name.lower()}.") # Chamado com uma função.
print(f"The sum of 5 and 3 is {5 + 3}.") # Expressões dentro das chaves
print(f"Value of PI: {pi:.2f}") # Formatação para 2 casas decimais
print(f"Number with leading zeros: {age:05d}") # Preenchimento com zeros (00030)
print(f"Left aligned: {'text':<10}") # Alinhamento à esquerda
print(f"Right aligned: {'text':>10}") # Alinhamento à direita
print(f"Centered: {'text':^10}") # Alinhamento centralizado
### Saídas (para os exemplos acima)
### Hello, Eric. You are 30 years old.
### Value of PI: 3.14
### Hello, Eric. You are 30 years old.
### Hello, Eric. You are 30 years old.
### Hello, Eric. You are 30 years old.
### Value of PI: 3.14
### Hello, Eric. You are 30 years old.
### Hello, eric.
### The sum of 5 and 3 is 8.
### Value of PI: 3.14
### Number with leading zeros: 00030
### Left aligned: text
### Right aligned: text
### Centered: text
A versão com indicação de formatação, também conhecida como f-string, é a forma mais moderna e recomendada de formatar strings em Python 3.6+. Ela é mais legível, concisa e geralmente mais rápida para realizar esse tipo de formatação.
:: Referência: :: Python documentation on string methods