Saltar a contenido

Corner Case:1
Uso de comillas dentro de las comillas

Que ocurriría si necesitamos usar comillas dentro de comillas en un texto? Por ejemplo, si queremos escribir una cita textual en un documento, y la cita incluye comillas, cómo podemos hacer para que el texto se vea correctamente?

Python
print("La cita textual es: "La vida es un viaje, no un destino".")

La salida en la Terminal será:

Terminal (Entrada/Salida)
print("La cita textual es: "La vida es un viaje, no un destino".")
      ^^^^^^^^^^^^^^^^^^^^^^^^
SyntaxError: invalid syntax. Perhaps you forgot a comma?

Mensajes engañosos Misleading messages

Como podemos ver, esta es una sintaxis no válida: "Quizás olvidaste una coma."

Claramente Python no entiende que las comillas dentro de las comillas son parte del texto y no el fin de la cadena de caracteres. Y a veces los mensajes de error que vemos son engañosos. Al igual que la computadora, el lenguaje, no sabe realmente lo que está pasando, por lo que hace su mejor conjetura, aunque no siempre es la correcta necesariamente.

Para solucionar este problema, podemos usar comillas simples ' para delimitar la cadena de caracteres y comillas dobles " para las comillas dentro de la cita:

Python
print("La cita textual es: 'La vida es un viaje, no un destino'.")

La salida en la Terminal será:

Terminal (Entrada/Salida)
La cita textual es: 'La vida es un viaje, no un destino'.

Otra manera de resolver el problema es mediante el uso del caracter de escape \ para escapar las comillas dobles:

Python
print("La cita textual es: \"La vida es un viaje, no un destino\".")

La salida en la Terminal virtual será la misma:

Terminal (Entrada/Salida)
La cita textual es: "La vida es un viaje, no un destino".

En este caso, el uso del caracter de escape \ indica a Python que la comillas dobles " no son el fin de la cadena de caracteres, sino que es parte del texto y que deberán ser impresas en pantalla, en este caso.

Ambas formas son válidas y correctas, y dependerá de tu estilo de programación cuál prefieras utilizar.

Referencias:


  1. Corner case: en informática, un corner case (o caso límite en español) es una situación especial o extrema en la que un sistema o aplicación se comporta de manera inusual debido a condiciones atípicas de entrada o entorno. Estos casos suelen estar en los límites del espacio de entrada (ingreso de datos por parte del usuario) y son difíciles de prever y manejar.