aprendiendo python desde cero parte 6 ( strings-secuencias de escape)

8
 APRENDIENDO PYTHON DESDE CERO P ARTE 6 ( strings y secuencias de escape) Y a vimos en la parte anterior, que la comilla simple y la c omilla doble, sirven para lo mismo, y que realmente pueden utilizarse indistintamente y tambien para poder insertar el otro tipo de comilla dentro. Asi que si quiero usar una string que tiene una comilla simple, la encierro entre comillas dobles y viceversa, python reconocera las comillas externas, y tratara la interna como un carácter mas. Otra caracteristica de la concatenacion de strings que no vimos, es la posibiilidad de poner una string al lado de la otra y la concatenara tambien.  Normalmente se usa el +, pero se puede hacer de ambas formas. SECUENCIAS DE ESCAPE Si colocamos dentro de una string una barra invertida \ , dependiendo del carácter siguiente se ejecutara una accion. s = 'a\nb\tc' si tenemos esta string y la imprimimos V emos que el resultado fue: a b c Que ocurrio aquí? La barra invertida seguida de la letra n, es un salto a la linea siguiente, no se imprime, simplemente se interpreta como que queres seguir imprimendo en la siguiente linea, y la barra invertida seguida de la t, es una tabulacion por eso la c sale separada de la b.

Upload: emanuel-gonzalez

Post on 09-Jul-2015

776 views

Category:

Documents


0 download

TRANSCRIPT

5/10/2018 Aprendiendo Python Desde Cero Parte 6 ( Strings-secuencias de Escape) - slidepdf.com

http://slidepdf.com/reader/full/aprendiendo-python-desde-cero-parte-6-strings-secuencias-de-escape 1/8

 

APRENDIENDO PYTHON DESDE CERO PARTE 6 ( strings y secuencias de escape)

Ya vimos en la parte anterior, que la comilla simple y la comilla doble, sirven para lo mismo, y que

realmente pueden utilizarse indistintamente y tambien para poder insertar el otro tipo de comilla

dentro.

Asi que si quiero usar una string que tiene una comilla simple, la encierro entre comillas dobles y

viceversa, python reconocera las comillas externas, y tratara la interna como un carácter mas.

Otra caracteristica de la concatenacion de strings que no vimos, es la posibiilidad de poner una

string al lado de la otra y la concatenara tambien.

 Normalmente se usa el +, pero se puede hacer de ambas formas.

SECUENCIAS DE ESCAPE

Si colocamos dentro de una string una barra invertida \ , dependiendo del carácter siguiente se

ejecutara una accion.

s = 'a\nb\tc'

si tenemos esta string y la imprimimos

Vemos que el resultado fue:

a

b c

Que ocurrio aquí?

La barra invertida seguida de la letra n, es un salto a la linea siguiente, no se imprime, simplementese interpreta como que queres seguir imprimendo en la siguiente linea, y la barra invertida seguida

de la t, es una tabulacion por eso la c sale separada de la b.

5/10/2018 Aprendiendo Python Desde Cero Parte 6 ( Strings-secuencias de Escape) - slidepdf.com

http://slidepdf.com/reader/full/aprendiendo-python-desde-cero-parte-6-strings-secuencias-de-escape 2/8

 

Explicaremos ahora una por una las secuencias de escape

Anular barra siguiente:

Poner una barra invertida adelante de otra, \\ , lo que hace es deshabilitar la barra invertida que esta

a continuacion, asi se interpreta como un carácter comun, o sea que si quiero anular el efecto de

alguna barra invertida, poniendole otra delante, se anulara.

Alli vemos que queremos imprimir un path 'c:\pepe\new', pero la \n que se encuentra en el medio, se

interpretara como un salto a la siguiente linea, la forma de hacerlo, es poner otra barra invertida

delante de la \n asi ignora el salto y lo copiara como caracteres.

Ahora si, podiamos haber tambien agregado la r delante para hacer una string cruda como vimos enlos capitulos anteriores.

Pero muchas veces no queremos anular la funcionalidad de TODAS las secuencias de escape que

haya si no solo de algunas, para estos casos es conveniente usar la barra invertida agregada.

En este ejemplo queria imprimir los paths uno abajo del otro, y use el salto de linea \n que esta entre

ambos paths, mientras que los otros dos saltos de linea que necesitaba que no se ejecuten, les

agregue la barra invertida adicional.

Si hubiera hecho una string cruda se anularian los 3 saltos de linea y no lograria lo que quiero,

 poner los dos paths uno abajo del otro.

5/10/2018 Aprendiendo Python Desde Cero Parte 6 ( Strings-secuencias de Escape) - slidepdf.com

http://slidepdf.com/reader/full/aprendiendo-python-desde-cero-parte-6-strings-secuencias-de-escape 3/8

 

Anular comllla simple:

Si colocamos una barra invertida seguida de la comilla simple, \' , por ejemplo si quiero que alguna

comilla se interprete como el carácter de comillas y se imprima asi, y no se use como comienzo de

string le pongo delante una barra invertida y se imprimira como comilla.

Si quiero escribir en python por ejemplo

 python me da error porque la string se cierra en la comilla del medio, si a esta la anulo, agregandole

una barra invertida delante.

Vemos que el resultado es el predicho, la comilla intermedia se interpreto como carácter y las otras

como el comienzo y final de la string.

Anular comillas dobles:

Si colocamos una barra invertida seguida de la comilla doble, \” , es similar al anterior, hara que lacomilla se imprima como tal y no funcione como comienzo o final de string.

Campana:

Si colocamos una barra invertida seguida de la letra a , \a , es un efecto de campana, si hacemos un

script.

5/10/2018 Aprendiendo Python Desde Cero Parte 6 ( Strings-secuencias de Escape) - slidepdf.com

http://slidepdf.com/reader/full/aprendiendo-python-desde-cero-parte-6-strings-secuencias-de-escape 4/8

 

al correrlo desde linea de comandos veremos que antes de imprimir pepe, suena un aviso sonoro,

dentro de la ventana interactiva solo se muestra como el carácter BEL, por lo poco usado.

Salto atras

Si colocamos una barra invertida seguida de la letra be, \b , significa realizar un espacio atrás, si

realizamos este ejemplo

y lo corremos en una ventana de comandos

Vemos que realmente escribe pepe, luego corre el cursor tres lugares atrás, uno por cada \b, y luego

escribe papa, por eso queda ppapa, ya que al retroceder el cursor y volver a escribir encima,

 borramos lo que habia alli.

En la ventana interactiva nos muestra lo que haria pero según como este configurada lo ejecuta o

no, en este caso nos muestra BS que significa que haria BACKSPACE o salto atrás alli.

 por default solo ejecuta los codigos importantes y como saltos de linea y tabulacion., el resto los

muestra solamente.

Alimentacion de formulario

Es muy poco usado realmente pero es bueno conocerlo si colocamos la barra invertida delante de la

letra efe, \f , es un comando que permite el avance de pagina a la impresora.

5/10/2018 Aprendiendo Python Desde Cero Parte 6 ( Strings-secuencias de Escape) - slidepdf.com

http://slidepdf.com/reader/full/aprendiendo-python-desde-cero-parte-6-strings-secuencias-de-escape 5/8

 

En la ventana interactiva lo muestra como FF, si lo ejecutaramos en un script, alli funcionaria

 perfectamente permitiendo avanzar el papel de la impresora, realmente muy poco usado hoy dia.

Salto de linea:

Uno de los mas importantes, si colocamos la barra invertida delante de la letra n, se produce un

salto a la linea siguiente, como si al escribir apretamos la tecla enter.

Alli vemos en el ejemplo cada \n, me salta a la linea siguiente donde continua imprimiendo.

Retorno de carro:

La letra r luego de la barra invertida se interpretara como retorno de carro.

La diferencia con el salto de linea según el sistema esta en esta nota:

5/10/2018 Aprendiendo Python Desde Cero Parte 6 ( Strings-secuencias de Escape) - slidepdf.com

http://slidepdf.com/reader/full/aprendiendo-python-desde-cero-parte-6-strings-secuencias-de-escape 6/8

 

Tabulacion horizontal:

Si coloco la barra invertida delante de la letra te , \t , se ejecutara una tabulacion.

Tabulacion vertical:

si colocamos luego de la barra invertida la letra ve, \v , se ejecutara una tabulacion vertical, la

ventana interactiva solo la muestra, no es de las mas importantes pero es bueno conocerla.

5/10/2018 Aprendiendo Python Desde Cero Parte 6 ( Strings-secuencias de Escape) - slidepdf.com

http://slidepdf.com/reader/full/aprendiendo-python-desde-cero-parte-6-strings-secuencias-de-escape 7/8

 

Valor hexadecimal y octal:

Si coloco la barra invertida y luego la letra equis, \x , interpretara que lo que hay a continuacion es

un valor hexa

Si hago un print del mismo, imprimira el caracter ASC correpondiente a dicho valor hexa.

Aquí tenemos la tablita de las correspondencias entre DECIMAL, HEXADECIMAL, OCTAL y el

caracter que se imprime.

5/10/2018 Aprendiendo Python Desde Cero Parte 6 ( Strings-secuencias de Escape) - slidepdf.com

http://slidepdf.com/reader/full/aprendiendo-python-desde-cero-parte-6-strings-secuencias-de-escape 8/8

 

Como vemos el hexadecimal 41 corresponde a la A, por eso se imprimio en el ultimo ejemplo la

misma.

Si quiero imprimir la A pero usando numeros octales, en la misma linea veo que corresponde al 101,

veamos que pasa.

El octal se puede ingresar directamente luego de la barra invertida y en este caso el octal 101,

corresponde al carácter A.

Bueno con esto ya conocemos los carecteres de escape mas conocidos, algunos nos serviran otros

nos molestaran, y sabemos como anularlos, poniendoles una barra invertida mas delante, si no

queremos que se ejecuten, normalmente al usar paths que tienen la barra invertida incluida,

tendremos el problema de que al intentar abrir un archivo que se encuentra por ejemplo en

c:\windows\files

no funciona, y es que \f es un carácter especial de escape, y hay que ponerle otra barra delante para

que no se ejecute y se reconozca e imprima como \f.

al agregarle la segunda barra anulamos el \f 

es muy importante entender bien esto para evitar problemas al tratar de ejecutar archivos y manejar strings de paths, que tengan las secuencias de escape que acabamos de estudiar.

Hasta la parte 7

Ricardo Narvaja