python string newline substitution

python - Eliminar todas las nuevas líneas desde dentro de una cadena



string newline (7)

Como lo menciona @john, la respuesta más robusta es:

string = "a/nb/rv" new_string = " ".join(string.splitlines())

Estoy tratando de eliminar todos los caracteres de nueva línea de una cadena. He leído cómo hacerlo, pero parece que por alguna razón no puedo hacerlo. Aquí está paso a paso lo que estoy haciendo:

string1 = "Hello /n World" string2 = string1.strip(''/n'') print string2

Y todavía estoy viendo el carácter de nueva línea en la salida. He intentado con rstrip también, pero todavía estoy viendo la nueva línea. ¿Podría alguien arrojar algo de luz sobre por qué estoy haciendo esto mal? Gracias.


Respondiendo tarde ya que recientemente tuve la misma pregunta al leer el texto del archivo; Probé varias opciones como:

with open(''verdict.txt'') as f:

La primera opción a continuación produce una lista llamada alist , con ''/n'' eliminada, luego vuelve a unirse al texto completo (opcional si desea tener solo un texto):

alist = f.read().splitlines() jalist = " ".join(alist)

La segunda opción a continuación es mucho más fácil y simple produce una cadena de texto llamada texto que reemplaza ''/n'' con espacio;

atext = f.read().replace(''/n'','' '')

Funciona; Lo he hecho. Esto es limpio, más fácil y eficiente.


Si el archivo incluye un salto de línea en la mitad del texto, ni strip() ni rstrip() no resolverán el problema,

La familia de bandas se usa para recortar desde el principio hasta el final de la cuerda.

replace() es la manera de resolver su problema

>>> my_name = "Landon/nWO" >>> print my_name Landon WO >>> my_name = my_name.replace(''/n'','''') >>> print my_name LandonWO


o puedes probar esto:

string1 = ''Hello /n World'' tmp = string1.split() string2 = '' ''.join(tmp)


strip() devuelve la cadena con espacios en blanco iniciales y finales (de forma predeterminada) eliminados.

Por lo tanto, convertiría " Hello World " en "Hello World" , pero no eliminará el carácter / n, ya que está presente entre la cadena.

Trate de doc .

str = "Hello /n World" str2 = str.replace(''/n'', '''') print str2


strip() devuelve la cadena después de eliminar los espacios en blanco iniciales y finales. ver doc

En su caso, puede intentar doc :

string2 = string1.replace(''/n'', '''')


strip solo elimina caracteres del principio o final de una cadena. Quieres usar replace :

str2 = str.replace("/n", "")