Estructuras de Control en Python, Encodig o Codificación
El encoding o codificación es una opción que se ha de incluir dentro de las estructuras de control de Python, ya que permite determinar el juego de caracteres que va a utilizar el archivo que se esta programando.
En caso de no especificar el juego de caracteres a utilizar por el archivo, se puede producir un error al interpretar el mismo, ya que Python considera que en el código fuente existen «caracteres extraños».
Aunque es un error de fácil arreglo, ya que los editores de código fuente, la mayoría de veces ya crean un archivo codificado con el juego de caracteres UTF-8, con lo que utilizar caracteres como la Ñ o los acentos, no suele producir problemas en la ejecución.
Supongamos el siguiente ejemplo de programación:
# Ejemplo de codificación de caracteres
print("En España, encontré un Ñandú.")
Si el archivo anterior esta guardado con un formato distinto de UTF-8, o un juego de codificación latino, al ejecutar el programa es posible que se nos devuelve un error, como se muestra a continuación.
Como se ha comentado es un error con facil solución, por una parte es grabar el archivo con el editor de codigo utilizado con el juego de caracteres UTF-8, el universal y por otra parte es utilizar una directiva de Python, que permite indicar el juego de caracteres que utiliza el archivo.
Esta directiva se ha de utilizar al inicio del archivo, de esta forma el sistema inicia conociendo el juego de caracteres que ha de aplicar. la directiva utiliza la siguiente sintaxis:
# _*_ coding: codigodecodificación _*_
Por ejemplo para especificar el juego de caracteres universal se ha de utilizar la siguiente directiva.
# _*_ coding: utf-8 _*_
El siguiente código muestra como ha de quedar la directiva y su utilización con el juego de caracteres utf-8.
# _*_ coding: utf-8 _*_
# Ejemplo de codificación de caracteres
print("En España, encontré un Ñandú.")
Al ejecutar el programa en el terminal, ha de ser el resultado similar al que se muestra a continuación.
Un saludo y agradecer vuestra visita, hasta la próxima.