Existen al menos dos formas posibles para definir un string en Python utilizando múltiples líneas.



Cuando se necesita definir una cadena (string) demasiado larga, tal vez es deseable partirla en múltiples líneas, por prolijidad y legibilidad. Para hacer esto es posible optar por dos alternativas diferentes, de acuerdo a nuestras necesidades.

La primera alternativa consiste en escapar los saltos de línea para que el intérprete Python no detecte el fin de la instrucción (tal como haríamos en Bash). Para ello simplemente se debe utilizar la barra invertida (\) e insertar el salto de línea a continuación.

La otra alternativa consiste en definir un string literal utilizando tres comillas (pueden ser simples o dobles), sin necesidad de escapar los saltos. Esta alternativa es tal vez más cómoda, aunque hay que tener cuidado ya que al utilizar string literals multi-línea, los saltos de línea se muestran al momento de imprimir.

Veamos dos ejemplos.

Primero abrir el intérprete de Python:

emi@hal9000:~ % python
Python 2.7.11 (default, Jan 31 2016, 01:27:30) 
[GCC 4.2.1 Compatible FreeBSD Clang 3.4.1 (tags/RELEASE_34/dot1-final 208032)] on freebsd10
Type "help", "copyright", "credits" or "license" for more information.
>>> 

En este primer ejemplo se define un string y se escapan los saltos de línea utilizando barra invertida:

>>> s="Este es \
... un string largo"
>>> print s
Este es un string largo
>>> 

Notar que, al momento de imprimir, los saltos de línea no se imprimen sino que se muestra como si se hubiese definido el string en una sola línea.

Ahora veamos un string literal:

>>>  s2="""Este
... es
... otro
... string
... largo"""
>>>  print s2
Este
es
otro
string
largo
>>>  

Al utilizar triples comillas, no es necesario escapar los saltos de línea y éstos a su vez forman parte de la cadena. Al momento de imprimir el string, los saltos se hacen visibles.

Referencias

Python 2.7.11 Documentation - Strings


Tal vez pueda interesarte


Compartí este artículo