Hasta ahora, hemos declarado cadenas con comillas simples o dobles (' o "). Eso nos impide declarar cadenas que abarquen múltiples líneas, ya que Python espera ver una comilla de cierre al final de la línea. Declarar cadenas multilínea es posible mediante comillas triples:
text = '''This long long text
can be split
into several lines.
Like this!'''
print(text)
text = """This long long text
can be split
into several lines.
Like this!"""
print(text)
Podemos tener cadenas multilínea tanto con comillas dobles " como con comillas simples '. Ambos programas imprimirán la misma salida:
This long long text
can be split
into several lines.
Like this!
Las cadenas multilínea son especialmente útiles para mensajes largos, textos o documentación. Los desarrolladores que desean describir su código y lo que hace pueden hacerlo con comentarios para una pequeña observación de una sola línea, pero al describir el comportamiento de un bloque de código, es más común ver a los programadores usar cadenas multilínea. Más adelante en el curso, discutiremos cómo escribir documentación y algunas buenas prácticas.
Reto
To be, or not to be, that is the question:
Whether 'tis nobler in the mind to suffer
The slings and arrows of outrageous fortune,
Or to take arms against a sea of troubles
And by opposing end them. To die—to sleep,
No more; and by a sleep to say we end
The heart-ache and the thousand natural shocks
That flesh is heir to: 'tis a consummation
Devoutly to be wish'd. To die, to sleep;
To sleep, perchance to dream—ay, there's the rub:
For in that sleep of death what dreams may come,
When we have shuffled off this mortal coil,
Must give us pause—there's the respect
That makes calamity of so long life.
Los textos de William Shakespeare son muy famosos y al mismo tiempo muy extensos. Sería muy difícil leerlos en la misma línea. Por eso, se te pide mantener el texto en una sola variable multilínea. La tarea es imprimir el texto en la salida, seguido de su longitud en una nueva línea:
Otra pregunta: ¿Puedes contar el número real de símbolos en el texto, incluyendo espacios? ¿Cuántos son? ¿El programa está imprimiendo un número diferente?
Respuesta
El programa imprime un número mayor en comparación con el número de caracteres en el texto. Esto se debe a que cada carácter de nueva línea se considera un carácter separado por Python. Hay 589 caracteres, pero como Python cuenta cada nueva línea como un carácter, obtenemos 13 caracteres más. Por lo tanto, el programa imprime 602.