Resumo : neste tutorial, você aprenderá sobre o caractere de barra invertida do Python como parte de um caractere de sequência especial ou para escapar de caracteres em uma string.
Introdução à barra invertida do Python
Em Python, a barra invertida ( \
) é um caractere especial. Se você usar a barra invertida na frente de outro caractere, o significado desse caractere será alterado.
Por exemplo, the t
é um caractere literal. Mas se você usar a barra invertida antes da letra t
, ela se tornará o caractere de tabulação ( \t
).
Geralmente, a barra invertida tem dois propósitos principais.
Primeiro, o caractere de barra invertida faz parte de sequências de caracteres especiais, como o caractere de tabulação \t
ou o caractere de nova linha \n
.
O exemplo a seguir imprime uma string que possui um caractere de nova linha:
print('Hello,\n World')
Linguagem de código: PHP ( php )
Saída:
Hello,
World
O \n é um único caractere, não dois. Por exemplo:
s = '\n'
print(len(s)) # 1
Linguagem de código: PHP ( php )
Segundo, a barra invertida ( \
) escapa de outros caracteres especiais. Por exemplo, se você tiver uma string com aspas simples dentro de uma string entre aspas simples, como a string a seguir, será necessário usar a barra invertida para escapar do caractere de aspas simples:
s = '"Python\'s awesome" She said'
print(s)
Linguagem de código: PHP ( php )
Saída:
"Python's awesome" She said
Linguagem de código: JavaScript ( javascript )
Barra invertida em strings F
PEP-498 especifica que uma string f não pode conter um caractere de barra invertida como parte da expressão entre chaves {}
.
O exemplo a seguir resultará em um erro:
colors = ['red','green','blue']
s = f'The RGB colors are:\n {'\n'.join(colors)}'
print(s)
Linguagem de código: PHP ( php )
Erro:
SyntaxError: f-string expression part cannot include a backslash
Linguagem de código: JavaScript ( javascript )
Para corrigir isso, você precisa juntar as strings da colors
lista antes de colocá-las entre chaves:
colors = ['red','green','blue']
rgb = '\n'.join(colors)
s = f"The RGB colors are:\n{rgb}"
print(s)
Linguagem de código: PHP ( php )
Saída:
The RGB colors are:
red
green
blue
Barra invertida em strings brutas
Strings brutas tratam o caractere de barra invertida ( \
) como um caractere literal. O exemplo a seguir trata o caractere de barra invertida \
como um caractere literal, não como um caractere especial:
s = r'\n'
print(s)
Linguagem de código: PHP ( php )
Saída:
\n
Resumo
- O caractere de barra invertida python (
\
) é um caractere especial usado como parte de uma sequência especial como\t
e\n
. - Use a barra invertida (
\
) do Python para escapar de outros caracteres especiais em uma string. - Strings F não podem conter a barra invertida como parte da expressão entre chaves
{}
. - Strings brutas tratam a barra invertida (\) como um caractere literal.