Este sitio utiliza cookies propias y de terceros. Si continúa navegando consideramos que acepta el uso de cookies. OK Más Información.

[Aporte][Python3] pyconio - Interactuar con la consola de forma fácil!

  • 0 Respuestas
  • 2598 Vistas

0 Usuarios y 2 Visitantes están viendo este tema.

Desconectado konn

  • *
  • Underc0der
  • Mensajes: 3
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
  • Twitter: @konniskatt1
« en: Noviembre 03, 2018, 01:27:03 pm »
PyConio (Python console I/O) es un módulo que provee funciones útiles para trabajar con la I/O de la consola.

Todas las funciones de PyConio tienen el similar comportamiento que conio.h.

Y lo mejor es que es Cross Platform. (osea que funciona en todas las plataformas)
Este módulo esta bajo la licencia GNU GPL v2.


Instalación
Simplemente ejecuta esto:
Código: Bash
  1. pip3 install pyconio
en modo administrador o sudo, dependiendo de tu sistema operativo.

Funciones
Colorear texto (paleta de 4 Bits, 16 colores):



Código: Python
  1. from pyconio import *
  2. textcolor(Red)
  3. print("El texto esta en rojo!")
  4. textbackground(Green) # Color de texto se mantiene
  5. print("Esto es un texto con fondo verde!")
  6.  
  7. textcolor(Red)
  8. textbackground(Green)
  9. print("spam")
  10. reversevideo()
  11. # Ahora el color de texto es verde y fondo es rojo
  12. normvideo()
  13. # Reinicia la consola a sus configuraciones por defecto
  14.  

Lista de colores de la paleta de 4 Bits:
Black, Blue, Green, Red, Yellow, Cyan, Magenta, White, Gray, LightRed, LightGreen, LightBlue, LightWhite, LightYellow, LightCyan y LightMagenta.

Coloreando texto (paleta extendida de 8 Bits, 256 colores)
Código: Python
  1.  
  2. from pyconio import *
  3.  
  4. textcolor(69, 8)
  5. print("Here")
  6. textcolor(34, 8)
  7. print("using")
  8. textcolor(208, 8)
  9. print("the")
  10. textcolor(196, 8)
  11. print("256")
  12. textcolor(226, 8)
  13. print("color")
  14. textcolor(87, 8)
  15. print("palette!")
  16.  
   


Puedes encontrar más info aquí.

Coloreando texto (24 Bits paleta True RGB, 16,777,216 colores)
Código: Python
  1. from pyconio import *
  2. import colorsys as clsy
  3.    
  4. for i in range(256):
  5.     color = clsy.hsv_to_rgb(i / 255, 1, 1)
  6.     color = int(color[0] * 255), int(color[1] * 255), int(color[2] * 255)
  7.     rgb_backgroundcolor(color[0], color[1], color[2]) # R, G, B
  8.  
  9. print()
  10. pause()
  11.  

La paleta de 8 Bits y RGB sólo están disponibles para sistemas POSIX (GNU/Linux, GNU Hurd, MacOSX, Android, etc) y sólo para Windows 10 TH2 en adelante.
Nota: Cuando el programa termina, se reinicia los colores automátcamente

Controlando la posición del cursor:
Código: Python
  1. from pyconio import *
  2. gotoxy(5, 5)
  3. print("El cursor está ahora en x:5 and y:5")
  4.  


Leer teclado:
Código: Python
  1. from pyconio import *
  2. c = getch()
  3. print("Presionaste: %s" % c)
  4.  
getch():
Lee una tecla del teclado sin esperar que el usuario presione enter y retorna la tecla.
getche():
Al igual que getch(), pero imprime la tecla presionada.
getchar():
Lee una letra del teclado, pero espera hasta que el usuario presione enter.
kbhit():
Detecta si una tecla ha sido presionada.


Colocando título a la consola:
Código: Python
  1. from pyconio import *
  2. title("eggs")
  3.  

Pausar la ejecución del programa:
Código: Python
  1. from pyconio import *
  2. pause()
  3. pause("Programa pausado ")
  4.  


Escondiendo y mostrado el cursor:
Código: Python
  1. from pyconio import *
  2. hidecur() # El cursor está oculto
  3. showcur() # Ahora el cursor no lo está
  4.  

Limpiar la pantalla:
Código: Python
  1. from pyconio import *
  2. clrscr()
  3.  

Obtener el tamaño de la consola:
Código: Python
  1. from pyconio import *
  2. a = gettermsz()
  3.  
Retorna: tupla con tamaño X & Y de la consola.

Ejemplos
Un (muy) simple juego hecho usando PyConio.

PD: el código de este "juego" está en la misma repo (pyconio/demo/Walk.py), y viene incluido con el módulo.
Si quieren pueden enviarme por MP lo que hagan con este módulo, y lo pondré aquí.

Compatibilidad
Este módulo ha sido probado en Windows (10), en GNU/Linux (Ubuntu, Debian y Ubuntu WSL) y en Android usando Pydroid 3.



Cualquier problema o sugerencia, comuníquenla atravez de un MP.
La repo está acá, en caso de que quieran contribuir, o si tienen un problema, aunque preferiblemente si el problema será escrito en español, mejor escríbanme un MP como dije anteriormente.
Espero que mi aporte les sea útil.
Saludos! :)
« Última modificación: Noviembre 11, 2018, 06:31:39 pm por konn »


 

¿Te gustó el post? COMPARTILO!



[Python] Consola de comandos en python (Kyurem)

Iniciado por Razel

Respuestas: 1
Vistas: 1637
Último mensaje Agosto 17, 2013, 12:14:21 pm
por Sanko
[APORTE] cat.py, herramienta para buscar panel administrativo web

Iniciado por k1llu4s3x

Respuestas: 0
Vistas: 2395
Último mensaje Febrero 27, 2018, 12:06:26 am
por k1llu4s3x
[APORTE] Reconozcamos los colores de nuestras imágenes

Iniciado por Mortal_Poison

Respuestas: 6
Vistas: 3633
Último mensaje Diciembre 22, 2017, 02:21:45 am
por Mortal_Poison
[Aporte] Login/Panel/Path Finder

Iniciado por n0Sense

Respuestas: 0
Vistas: 2230
Último mensaje Julio 21, 2015, 10:56:47 pm
por n0Sense
Librería para parsear de forma correcta los mensajes del IRC

Iniciado por Polsaker

Respuestas: 0
Vistas: 1889
Último mensaje Junio 03, 2015, 07:09:51 pm
por Polsaker