[MÚSICA] [MÚSICA] Hola. Hoy vamos a profundizar un poco en uno de los tipos de datos que venimos estudiando desde el módulo anterior. Primero recordemos qué tipos de datos hemos visto. Los tipos numéricos y mi float. Para representar valores de verdad tenemos boole y finalmente tenemos str, para representar cadenas de caracteres, y es justamente en este equipo en el que profundizaremos. you hablamos de la importancia de poder representar y manipular información textual. Y ahora quiero mostrarles por qué esto representa un importante reto. Las cadenas de caracteres son un poco más complejas de lo que parece. Por ejemplo, en español usamos más caracteres que en inglés, la ñ, las tildes, y en otros idiomas como el japonés, pues, ni de qué hablar. Esto está relacionado con los estándares de codificación, algunos de los cuales he mencionado y otros que con seguridad han visto cuando usamos spyre. Bien, sin entrar mucho en detalle voy a mencionar algunos elementos que nos ayudarán a entender la complejidad detrás de las cadenas de caracteres. El primer encoding o conjunto de caracteres, que de hecho he mencionado en un par de oportunidades es conocido como ASCII, que incluye 127 caracteres que básicamente corresponden a caracteres del idioma inglés. Entonces cualquier caracter que no sea parte de ASCII, por ejemplo, una a con tilde, se convertirá en basura cuando cerremos el archivo y lo volvamos a abrir. También tenemos otro encoding, que en nuestro caso particular es muy útil, porque podemos usar ñ y tildes, y es una extensión de ASCII conocida como ISO-8859-1, o Latin 1. Sin embargo, si estamos en Japón o en Rusia este encoding tampoco es muy útil, y necesitaremos usar UNICODE. que incluye calles de emoticones y muchos otros caracteres. Este encoding está asociado a una línea que con seguridad you estamos familiarizados con, porque aparece siempre y creamos un nuevo archivo punto Python. Si se hace correctamente, en la esquina inferior derecha del ambiente debemos ver una etiqueta que dice encoding utf-8, como se muestra en la diapositiva. Y como verán, las cadenas de caracteres son un poco más complicadas de lo que parece, y mi recomendación es que en la medida de lo posible usemos únicamente caracteres ASCII en nuestro código. Es decir, escribamos año o anjo en vez de año, etcétera. Y es por esto por lo que en el código que les empezaremos a entregar como parte de los proyectos de los módulos del curso, nosotros solo usamos caracteres ASCII. Es solo un consejo para evitar problemas sencillos, pero a veces difíciles de diagnosticar. Otro importante aspecto que hace más interesante el tipo str que los otros tipos que hemos visto, es que este tipo es una sucesión de elementos o un dato estructurado. Un dato de tipo escalar es un elemento único, atómico, mientras que un dato de tipo secuencial se compone de una sucesión de elementos, y una cadena es una sucesión de caracteres. Esto hace que tengan algunas particularidades, como por ejemplo, hablamos de la longitud de la cadena. Y en Python es posible manipular los datos secuenciales de diferentes modos, facilitando así la escritura del programa que los maneja. Dentro de las particularidades de las cadenas de caracteres, encontramos que el tipo str tiene algunos caracteres de control, de los que vamos a hablar a continuación. Estos caracteres se representan con la barra invertida y otro caracter dependiendo de su significado. Por ejemplo, los más utilizados son, barra invertida n, que significa el cambio de línea, o barra invertida t, que es el tabulador, y así sucesivamente en los ejemplos que se muestran en la diapositiva. A continuación vamos a ver algunos de estos caracteres de control en ejemplos. El primero nos muestra el cambio de línea y por eso en el resultado, vemos que la palabra una y la palabra cadena, están en líneas diferentes, aunque hacen parte de la misma cadena como lo vemos en la parte izquierda de la diapositiva. También podemos observar el uso del caracter de control barra invertida t, que nos puede servir para darle formato al texto que imprimimos. Por ejemplo, organizar el texto en columnas. Por último, hablaremos de la longitud de una cadena de caracteres, y Python nos ofrece la función len, que es la abreviación de la palabra length, que significa literalmente, longitud en inglés y que podemos utilizar para conocer el número de caracteres que componen una cadena, como los ejemplos mostrados. Noten que la función len, recibe como parámetro la cadena de caracteres a la cual le calcularemos su tamaño, y que puede recibir expresiones, variables literales, siempre y cuando al evaluarlas sean de tipo str. Veamos el ejemplo de la línea 31. Podemos apreciar que la longitud de una cadena vacía es cero, y en los dos ejemplos siguientes vemos que el caracter espacio, es simplemente un caracter como cualquier otro. Así que si una cadena tiene tres espacios en blanco, su longitud será 3. Cerremos esta primera parte de las cadenas de caracteres con una pregunta. [MÚSICA]