Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Como faço para armazenar, usando raw_input(), a barra invertida '\' ?

 regex = raw_input()
\we\w+
>>> regex
'\\we\\w+'

Testei esse trecho do meu código no terminal do Python e apresenta esses valores. Entro diretamente com a variável regex na função findall e acredito que este seja o problema pois o regex armazena uma string com barras duplicadas. Há alguma forma para armazenar a barra invertida dessa forma sem ser duplicada ?

2 respostas

Percebi que estava errando não no código e sim na entrada. A entrada deve ser partes do nome e não os atalhos vistos em aula. Mas se alguém puder tirar essa dúvida sobre como armazenar a barra invertida () numa string seria show.

solução!

Oi Henrique, como vai? Espero que esteja bem ^-^

Utilizando o console não é possível escrever a barra invertida sem que o terminal a duplique, isso ocorre porque o console entende que estamos tentando escapar o caracter barra, já que ela é um caracter especial que representa algum escape, como por exemplo: \n para quebra de linha.

Em arquivo de código, para armazenar a barra invertida você pode utilizar o prefixo r para indicar ao o python que ele deve considerar a string no sentindo literal dela, veja o exemplo abaixo:

string_com_barra_invertida = r"'\'"
print string_com_barra_invertida

Resultado: '\'

Qualquer dúvida estou por aqui, tá bom?

Abraços!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software