Criação de Strings
Strings podem ser definidas com aspas simples, duplas ou triplas. As aspas triplas permitem a inclusão de múltiplas linhas.
# Definição com aspas simples
str_simples = 'Olá, mundo!'
# Definição com aspas duplas
str_dupla = "Olá, mundo!"
# Definição com aspas triplas para múltiplas linhas
str_multiplas = """Isto é uma
string com
diversas linhas."""
# Exibição dos resultados
print(str_simples) # Olá, mundo!
print(str_dupla) # Olá, mundo!
print(str_multiplas) # Isto é uma\nstring com\ndiversas linhas.
Acesso a Caracteres
O acesso é feito por índice, iniciando em zero. Índices negativos permitem acessar a partir do final.
# String exemplo
texto = "Python"
# Primeiro caractere
print(texto[0]) # P
# Último caractere
print(texto[-1]) # n
# Caractere na posição 3
print(texto[3]) # h
Slicing de Strings
A técnica de slicing extrai subconjuntos usando a sintaxe [início:fim:passo]. Omitir valores aplica padrões como início no zero e fim no comprimento total.
# String base
frase = "Olá, mundo!"
# Do índice 0 ao 4 (exclusivo)
print(frase[0:4]) # 'Olá,'
# Do índice 5 em diante
print(frase[5:]) # ' mundo!'
# Do início ao índice 3
print(frase[:3]) # 'Olá'
# Últimos dois caracteres
print(frase[-2:]) # '!'
# Pular de 2 em 2
print(frase[::2]) # 'Oá ud!'
# Slicing reverso com passo -1
print(frase[5:0:-1]) # 'mund ,álO'
# Inverter a string inteira
print(frase[::-1]) # '!odnum ,álO'
Modificação de Strings
Como strings são imutáveis, alterações requerem a criação de uma nova string.
# String original
saudacao = "Olá"
# Concatenação para "atualizar"
nova_saudacao = saudacao + " a todos"
# Resultado
print(nova_saudacao) # Olá a todos
Caracteres de Escape
Sequências de escape inserem caracteres especiais na string.
# Uso de \n para nova linha
print("Linha1\nLinha2") # Exibe em duas linhas
# Uso de \t para tabulação
print("Campo\tValor") # Adiciona espaços de tabulação
Operadores de String
Operadores comuns incluem concatenação (+), repetição (*), verificação de pertinência (in) e slicing.
# Concatenação
print("Py" + "thon") # Python
# Repetição
print("Ha" * 3) # HaHaHa
# Verificação de pertinência
print("a" in "Python") # False
print("t" not in "Python") # True
Formatação de Strings
Diversos métodos de formatação estão disponíveis, como operador %, método format() e f-strings.
# Operador %
print("A linguagem %s tem %d anos." % ("Python", 33))
# Método format()
print("A linguagem {} tem {} anos.".format("Python", 33))
# F-string (Python 3.6+)
ling = "Python"
anos = 33
print(f"A linguagem {ling} tem {anos} anos.")
Strings com Aspas Triplas
Aspas triplas facilitam a criação de strings longas ou com múltiplas linhas.
# Definição com aspas triplas
texto_longo = """Este é um exemplo
de string com
múltiplas linhas."""
print(texto_longo)
Funções Internas para Strings
Python oferece várias funções integradas, como len(), upper(), strip(), entre outras.
# Exemplo com funções internas
dados = " Python "
print(len(dados)) # 8
print(dados.strip()) # "Python"
print(dados.upper()) # " PYTHON "
print(dados.lower()) # " python "
print(dados.split()) # ['Python']
print(", ".join(["A", "B"])) # A, B