Cómo hacer un Sitio Web o Blog en 2024 - Guía fácil y Gratuita para Crear un Sitio Web

9 ejemplos de carácter inesperado después de carácter de continuación de línea (Python)

Aquí encontrará todo sobre el error de sintaxis de Python, carácter inesperado tras carácter de continuación de línea:

Este error ocurre cuando el carácter de barra invertida \ se usa incorrectamente.

Entonces, si quieres aprender todo sobre este error de Python y cómo solucionarlo, estás en el lugar correcto.

¡Sigue leyendo!

Logotipo de arte poligonal del lenguaje de programación Python.

Error de sintaxis: carácter inesperado después del carácter de continuación de línea en Python

Joven programador con dolor de cabeza mientras trabaja y piensa en la fecha límite.

entonces tienes SyntaxError: carácter inesperado después del carácter de continuación de línea?—No temas, este artículo está aquí para rescatarte y este error es fácil de corregir:

Los errores de sintaxis suelen ser los más fáciles de solucionar porque aparecen inmediatamente después de iniciar el programa y puedes verlos sin pensarlo mucho. No es como un error lógico de ciencia espacial.

Sin embargo, cuando vea el error SyntaxError: carácter inesperado después del carácter de continuación de línea por primera vezpuede que estés confundido:

¿Qué es un carácter de continuación de línea en Python?

A carácter de continuación de línea es solo una barra invertida \—colocar una reacción violenta \ al final de una línea, y se considera que el línea continúa, ignorando las nuevas líneas posteriores.

Puedes usarlo para unión de líneas explícita, Por ejemplo. Encontrará más información sobre la unión de líneas explícitas en el documentación oficial de Pitón. Otro uso de la barra invertida \ Es para secuencias de escape—Más sobre eso más abajo.

Sin embargo, aquí hay un ejemplo de unión de líneas explícita:

print(Esta es una línea enorme. Es muy grande, \ pero debe imprimirse en la pantalla \ en una línea tal como está. Para esto, \ se utiliza el carácter de barra invertida.) Esta es una línea enorme. Es muy grande, pero quiero imprimirlo en la pantalla en una línea tal como está. Para esto, uso el carácter de barra diagonal.

Como puede ver, el resultado es: Esta es una línea enorme. Es muy grande, pero hay que imprimirlo en la pantalla en una línea. Para ello se utiliza el carácter de barra invertida. Sin saltos de línea.

La barra invertida \ actúa como pegamento y conecta las cadenas a una sola cadena incluso cuando están en diferentes líneas de código.

¿Cuándo utilizar un carácter de continuación de línea en Python?

Puedes romper líneas de código con la barra invertida \ para facilitar la legibilidad y el mantenimiento del código:

🔥 Leer:  28 ejemplos de formularios de registro por correo electrónico de los que puede obtener inspiración para el diseño

El PEP 8 especifica una longitud de línea máxima de 79 caracteres: PEP es la abreviatura de Python Enhancement Proposal y es un documento que proporciona pautas y mejores prácticas sobre cómo escribir código Python.

Sin embargo, no necesitas la barra invertida. \ cuando la cadena está entre paréntesis. Luego puede hacer saltos de línea sin ningún carácter de continuación de línea. Por lo tanto, en el ejemplo anterior, no fue necesario utilizar el carácter de barra invertida, ya que toda la cadena está entre paréntesis. (…).

Sin embargo, en cualquier otro caso necesitarás la barra invertida. \ para hacer un salto de línea. Por ejemplo (el ejemplo es directamente de la documentación oficial de Python):

con open(&39;/ruta/a/algún/archivo/usted/quiere/leer&39;) como archivo_1, \ open(&39;/ruta/a/algún/archivo/siendo/escrito&39;, &39;w&39;) como archivo_2: archivo_2.write(archivo_1.read()) - FileNotFoundError Traceback (última llamada más reciente) en () -> 1 con open(&39;/path/to/some/file/you/want/to/read&39;) como file_1, open(&39;/path/to/some/file /ser/escrito&39;, &39;w&39;) como archivo_2: 2 file_2.write(file_1.read()) FileNotFoundError: [Errno 2] No existe tal archivo o directorio: &39;/ruta/a/algún/archivo/usted/quiere/leer&39;

¿Por qué tanto hablar de esta barra invertida? He aquí por qué:

El error SyntaxError: carácter inesperado después del carácter de continuación de línea ocurre cuando el carácter de barra invertida se usa incorrectamente. La barra invertida es la carácter de continuación de línea mencionado en el error!

Ejemplos de Error de sintaxis: carácter inesperado después de carácter de continuación de línea en Python

A continuación se muestran ejemplos del error de carácter de continuación de carácter después de la línea:

Ejemplo 1

El error ocurre cuando agregas un carácter de fin de línea o carácter de continuación de línea como elemento de lista:

)primero = [1, 2, 3]
lst.append(\n) lst File , línea 2 lst.append(\n) ^ SyntaxError: carácter inesperado después del carácter de continuación de línea

Fácil de arreglar: simplemente coloque la barra invertida \ entre comillas:

primero = [1, 2, 3]
lst.append(\n) lista
[1, 2, 3, \n]

Ejemplo 2

Quieres hacer un salto de línea después de imprimir algo en la pantalla:

st = python print(st, \n) Archivo , línea 2 print(st, \n) ^ SyntaxError: carácter inesperado después del carácter de continuación de línea

Fácil de arreglar, de nuevo: la barra invertida \ va entre comillas:

st = python imprimir(st, \n) pitón

Quizás desee agregar una nueva línea al imprimir una cadena en la pantalla, como esta.

Ejemplo 3

Confundir la barra / para la barra invertida \—el carácter de barra diagonal se utiliza como operador de división:

print(16\4) Archivo , línea 1 print(16\4) ^ SyntaxError: carácter inesperado después del carácter de continuación de línea

Otra solución sencilla para errores de sintaxis: simplemente reemplace la barra invertida \ con la barra /:

imprimir(16/4) 4.0

Ejemplo 5

Sin embargo, cuando una cadena es bastante grande, no siempre es tan fácil encontrar el error a primera vista.

Aquí hay un ejemplo de Stack Overflow:

largo = 10 print(Longitud entre lados: + str((largo * largo) * 2.6) + \ 1.5 = + str(((largo * largo) * 2.6) \ 1.5) + Unidades) Archivo , línea 2 print(Longitud entre lados: + str((longitud*longitud)*2.6) + \ 1.5 = + str(((longitud*longitud)*2.6) \1.5)+ Unidades) ^ SyntaxError: carácter inesperado después del carácter de continuación de línea

🔥 Leer:  Creado por Google Pixels 4 evento del 15 de octubre en la ciudad ...

La línea de código contiene varias barras invertidas. \—Así que necesitas mirar más de cerca.

Divida la línea de código en unidades lógicas y coloque cada unidad en una línea de código separada. Esto simplifica la depuración:

st = Longitud entre lados: st += str((largo * largo) * 2.6) st += \ 1.5 = x = ((largo * largo) * 2.6) \ 1.5 st += str(x) st += Unidades print(st) Archivo , línea 4 x = ((longitud*longitud)*2.6)\1.5 ^ SyntaxError: carácter inesperado después del carácter de continuación de línea

Ahora puedes ver fácilmente dónde está la barra invertida. \ falta, con una mirada atenta al código en sí o a través de la salida del depurador. Una barra invertida \ se pierde después del 1.5 en la línea del código n.° 4.

Así que arreglemos esto:

st = Longitud entre lados: st += str((largo * largo) * 2.6) st += \ 1.5 = x = ((largo * largo) * 2.6) \ 1.5 \ st += str(x) st += Unidades imprimir(st)

Ejemplo 6

Otro caso común de este error es escribir las rutas de los archivos de Windows sin comillas. Aquí hay otro ejemplo de Stack Overflow:

f = open(C\\python\\temp\\1_copy.cp,r) líneas = f.readlines() para i en líneas: thisline = i.split( ) Archivo , línea 1 f = open(C\\python\\temp\\1_copy.cp,r) ^ SyntaxError: carácter inesperado después del carácter de continuación de línea

Se debe citar la ruta completa al archivo en el código de la línea n.° 1. “”. Además, dos puntos : debe colocarse después de la letra de la unidad en el caso de rutas de Windows:

f = open(C:\\python\\temp\\1_copy.cp,r) líneas = f.readlines() para i en líneas: thisline = i.split( )

La barra invertida \ como carácter de escape en Python

La barra invertida \ También es un carácter de escape en Python:

Usa la barra invertida \ para escapar de los caracteres de servicio en una cadena.

Por ejemplo, para escapar de un carácter de servicio de tabulación o avance de línea en una cadena. Y porque la barra invertida \ es un carácter de servicio por sí solo (recuerde, se usa para la continuación de línea), también debe tener un carácter de escape cuando se usa en una cadena.\\.

Es por eso que en el último ejemplo la ruta contiene barras invertidas dobles. \\ en lugar de una sola barra invertida \ en la línea del código n.° 1.

Sin embargo, no necesita ningún escape en una cadena cuando usa una cadena sin formato. Utilice la cadena literal r para obtener una cuerda cruda. Entonces el ejemplo anterior se puede codificar como:

f = abrir(rC:\python\temp\1_copy.cp,r)

Sin barra invertida \ se escapa del todo, ¡sí!

Otro caso de uso de un escape son los símbolos Unicode. Puedes escribir cualquier símbolo Unicode usando una secuencia de escape.

Por ejemplo, un signo de interrogación invertido. ¿ tiene el Unicode 00BFpara que puedas imprimirlo así:

imprimir(\u00BF)

Ejemplos adicionales de Error de sintaxis: carácter inesperado después de carácter de continuación de línea en Python

A continuación se muestran ejemplos más comunes del error de carácter inesperado tras carácter de continuación de línea:

🔥 Leer:  Solución: FIFA 23 se bloquea o no se carga en PS4 y PS5

Ejemplo 7

A menudo, no tienes una ruta de archivo o carpeta específica y tienes que ensamblarlo a partir de partes. Puedes hacerlo mediante secuencias de escape. \\ y concatenaciones de cadenas \. Sin embargo, este manual que se reconstruye regularmente es la razón del error inesperado de carácter tras línea de continuación.

Pero el osmodulo ¡al rescate! Utilizar el ruta.unirse función. La función path.join no solo completa la ruta por usted, sino que también determina los separadores necesarios en la ruta dependiendo del sistema operativo en el que esté ejecutando su programa.

os ejemplos de separador?

Por ejemplo:

importar os ruta_actual = os.path.abspath(os.getcwd()) directorio = salida archivo de texto = test.txt nombre de archivo = os.path.join(ruta_actual, directorio, archivo de texto)

Ejemplo 8

Puede obtener el error de continuación de línea cuando intenta comentar una línea después de un carácter de continuación de línea \—No puedes hacer eso de esta manera:

soneto = De las criaturas más bellas deseamos crecimiento,\n\ línea uno Para que así la rosa de la belleza nunca muera,\n\ línea dos Pero como el que madura debe morir con el tiempo,\n\ línea tres Su tierno heredero podría llevar su memoria\n línea cuatro print(soneto) Archivo , línea 1 soneto = De las criaturas más bellas deseamos aumento,\n\ línea uno ^ SyntaxError: carácter inesperado después del carácter de continuación de línea

Recuerda desde arriba que entre paréntesis () ¿No es necesario un carácter de escape? Así que pon la cadena entre paréntesis. ()así de fácil y listo, puedes usar comentarios donde quieras.

Puedes poner paréntesis ficticios, simplemente para separar palabras:

soneto = (De las criaturas más hermosas deseamos crecer,\n línea uno Para que así la rosa de la belleza nunca muera,\n línea dos Pero como el que madura debe morir con el tiempo,\n línea tres Su su tierno heredero podría llevar su memoria\n) line four print(soneto) De las criaturas más bellas deseamos aumentar, Para que así la rosa de la belleza nunca muera, Pero como la más madura con el tiempo fallece, Su tierno heredero podría llevar su memoria

Ejemplo 9

Otra variación del error de carácter inesperado después del carácter de continuación de línea es cuando intenta ejecutar un script desde el indicador de Python. Aquí hay un script iniciado correctamente desde el línea de comando de Windows:

c:\temp>python c:\temp\helloworld.py ¡Hola mundo!

Sin embargo, si escribe pitón primero y presiona enter, serás llevado al mensaje de Python.

Aquí, puede ejecutar directamente código Python como imprimir (¡Hola, mundo!). Y si intenta ejecutar un archivo por analogía con la línea de comando de Windows, obtendrá un error:

d:\temp>python Python 3.8.2 (tags/v3.8.2:7b3ab59, 25 de febrero de 2020, 23:03:10) [MSC v.1916 64 bit (AMD64)] en win32 Escriba ayuda, derechos de autor, créditos o licencia para obtener más información. >>> d:\temp\helloworld.py Archivo , línea 1 d:\temp\helloworld.py ^ SyntaxError: carácter inesperado después del carácter de continuación de línea

Aquí hay más soporte para Python: