🎯 Strings e Formatação em Python

Em poucas palavras

Definição técnica ou simplificada do conceito.


📝 Notas e Desenvolvimento


🔗 Conexões e Contexto


📚 Referências e Fontes

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 in para verificar se uma substring existe.
print("arr" in name) # Saída: True
print("xyz" in name) # Saída: False

Mé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:

  1. Operador % (Antigo): Usa placeholders como %s (string), %d (inteiro), %f (float).
  2. Método str.format(): Usa chaves {} como placeholders e o método .format() para preencher.
  3. F-strings (Strings Literais Formatadas - Recomendado): Prefixo f antes 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