Python raw_input desordenando la concatenación de cadenas
Estoy tratando de hacer algo relativamente simple en Python y me sorprende lo mal que esto no funciona, por lo simple que debería ser.
Estoy aquí tratando de concatenar tres simples cuerdas. La entrada escrita en raw_input es"abc"
en todos los casos a continuación:
proj = raw_input("Name of project: ")
print proj
ProjRegex = 'test1' + proj + 'test2'
print ProjRegex
Rendimientos:
abc
test2abc
Caso 2
proj = raw_input("Name of project: ")
print proj
ProjRegex = 'test1%stest2' % (proj)
print ProjRegex
Rendimientos:
abc
test2abc
Tenga en cuenta que en ambos casos en lugar de imprimir"test1abctest2"
, como se esperaba, está sustituyendo test2 por test1.
Entonces me di cuenta de que si en lugar de utilizar raw_input, si digo:
proj = "abc"
ProjRegex = 'test1' + proj + 'test2'
Entonces se comporta como se espera.
Entonces está sucediendo algo enraw_input()
que es querer hacer sustitución de cadenas? Mi entendimiento es que toma la entrada del teclado, elimina una nueva línea y devuelve como una cadena.