# -------------------------------------------------------------------------
# (| " Arbol.py "|)
# (| " "|)
# (| " Este sencillo y corto código en Python, utiliza códigos de escape"|)
# (| " ANSI para imprimir en la consola colores y formato de texto; "|)
# (| " Simulando la apariencia de un arbol de navidad en la consola. "|)
# (| " "|)
# (| " Este código de ejemplo es de dominio público. "|)
# (| " "|)
# (| " Developer: jorgechac© - Técnico Laboral en Programación UNAB "|)
# (| " Visita https://jorgechac.blogspot.com "|)
# (| " "|)
# (| " Venta de accesorios Arduino/Raspberry Pi Pico/ESP32 "|)
# (| " Whatsapp y Ventas NEQUI +573177295861 "|)
# (| " Bucaramanga - Colombia "|)
# -------------------------------------------------------------------------
# Se define una clase llamada 'Color' que contiene algunos atributos que
# representan códigos de escape ANSI para cambiar el color del texto en la
# consola. Los atributos son:
# reset: Restablece el color a su valor por defecto.
# rojo: Establece el color del texto a rojo.
# verde: Establece el color del texto a verde.
# cafe: Establece el color del texto a un tono de café utilizando el formato
# de color RGB.
class Color:
reset = "\033[0m"
rojo = "\033[91m"
verde = "\033[92m"
cafe = "\033[38;2;139;69;19m"
# Se utiliza un bucle for para imprimir una serie de líneas que representan
# un árbol de Navidad. La forma del árbol está compuesta por caracteres '^'
# de diferentes longitudes. El color del árbol es verde (Color.verde), y las
# líneas se centran en un espacio de 40 caracteres.
for i in range(1, 30, 2):
print((Color.verde + ('^' * i)).center(40))
# Se utiliza otro bucle for para imprimir tres líneas horizontales que
# representan las patas del árbol. Estas líneas son de color café (Color.cafe)
# y contienen el texto '|||'. Cada línea se centra en un espacio de 50 caracteres.
for leg in range(3):
print((Color.cafe + '|||').center(50))
# Se imprimen líneas adicionales que representan el tronco del árbol. El tronco
# consiste en las líneas '\___/' de color café (Color.cafe). Estas líneas se centran
# en un espacio de 50 caracteres.
print((Color.cafe + '\___/').center(50))
# Se imprimen líneas horizontales de guiones rojos (Color.rojo) para decorar la
# parte superior e inferior del árbol. Estas líneas se centran en un espacio de
# 40 caracteres y tienen una longitud de 25 guiones.
print((Color.rojo + ('-' * 25)).center(40))
# Se imprime el mensaje '¡Feliz Navidad!' en el centro y con el color de texto
# restablecido (Color.reset). La línea se centra en un espacio de 40 caracteres.
print((Color.reset + '¡Feliz Navidad!').center(40))
print((Color.rojo + ('-' * 25)).center(40))
Los códigos de escape ANSI son secuencias de caracteres que se utilizan para controlar el formato y el color del texto en terminales compatibles con ANSI. Estas secuencias comienzan con el carácter de escape \033 seguido de parámetros y códigos de control. En este caso, se están utilizando para cambiar el color del texto en la consola.
En el código proporcionado tenemos:
\033[0m: Restablece todos los estilos y colores a los valores predeterminados.
\033[91m: Establece el color del texto a rojo.
\033[92m: Establece el color del texto a verde.
\033[38;2;139;69;19m: Establece el color del texto a un tono de café mediante el formato de color RGB. El formato es \033[38;2;R;G;Bm.
Estos códigos de escape ANSI son específicos de las terminales que admiten ANSI, como la mayoría de las terminales en sistemas operativos Unix/Linux y también en Windows si se utiliza un emulador de terminal compatible.
Finalmente después de ejecutar el código, se abrirá la consola de python y se comenzará a generar el Arbol de Navidad, así:
Quieres aportar algo que complemente este articulo? crees que hay algo que se deba corregir? Escríbenos este blog es para todos.
Recuerda que en https://jorgechac.blogspot.com nos dedicamos a construir una electrónica mejor! y apoyamos el proyecto CTC GO! (Creative Technologies in the Classroom) que es un programa de educación steam personalizable.
Si te sirvió deja un comentario de agradecimiento, comparte el post en tus redes sociales o recomiéndale el blog a un amigo, eso me motiva a seguir realizando estos pequeños posts y espero que vuelvas a mi blog, publico nuevo material con base en los softwares y apps que utilizo y la experiencia que he adquirido. Por último si deseas colaborar voluntariamente y crees que mi trabajo y mi tiempo lo ameritan, considere hacer una pequeña donación a mi NEQUI +573177295861.
También te puede interesar:
Dibujando en Python utilizando la libreria Matplotlib y Numpy
Dibujando en Python utilizando el módulo Python Turtle
Dibujo del logotipo de Python utilizando el módulo Python Turtle