So di essere in ritardo alla festa, ma ho appena creato una biblioteca per questo che penso possa davvero aiutare. È estremamente semplice, ecco perché penso che dovresti usarlo. Si chiama TableIT .
Uso di base
Per usarlo, segui prima le istruzioni per il download nella Pagina GitHub .
Quindi importalo:
import TableIt
Quindi crea un elenco di elenchi in cui ogni elenco interno è una riga:
table = [
[4, 3, "Hi"],
[2, 1, 808890312093],
[5, "Hi", "Bye"]
]
Quindi tutto ciò che devi fare è stamparlo:
TableIt.printTable(table)
Questo è l'output che ottieni:
+--------------------------------------------+
| 4 | 3 | Hi |
| 2 | 1 | 808890312093 |
| 5 | Hi | Bye |
+--------------------------------------------+
Nomi dei campi
Puoi usare i nomi dei campi se vuoi ( se non stai usando i nomi dei campi non devi dire useFieldNames = False perché è impostato su quello di default ):
TableIt.printTable(table, useFieldNames=True)
Da ciò otterrai:
+--------------------------------------------+
| 4 | 3 | Hi |
+--------------+--------------+--------------+
| 2 | 1 | 808890312093 |
| 5 | Hi | Bye |
+--------------------------------------------+
Ci sono altri usi per, ad esempio potresti farlo:
import TableIt
myList = [
["Name", "Email"],
["Richard", "richard@fakeemail.com"],
["Tasha", "tash@fakeemail.com"]
]
TableIt.print(myList, useFieldNames=True)
Da quello:
+-----------------------------------------------+
| Name | Email |
+-----------------------+-----------------------+
| Richard | richard@fakeemail.com |
| Tasha | tash@fakeemail.com |
+-----------------------------------------------+
Oppure potresti fare:
import TableIt
myList = [
["", "a", "b"],
["x", "a + x", "a + b"],
["z", "a + z", "z + b"]
]
TableIt.printTable(myList, useFieldNames=True)
E da ciò ottieni:
+-----------------------+
| | a | b |
+-------+-------+-------+
| x | a + x | a + b |
| z | a + z | z + b |
+-----------------------+
Colori
Puoi anche usare i colori.
I colori si utilizzano utilizzando l'opzione colore ( per impostazione predefinita è Nessuno ) e specificando i valori RGB.
Utilizzando l'esempio sopra:
import TableIt
myList = [
["", "a", "b"],
["x", "a + x", "a + b"],
["z", "a + z", "z + b"]
]
TableIt.printTable(myList, useFieldNames=True, color=(26, 156, 171))
Quindi otterrai:

Si noti che la stampa dei colori potrebbe non funzionare per voi, ma funziona esattamente come le altre librerie che stampano testo colorato. Ho testato e ogni singolo colore funziona. Neanche il blu è incasinato come farebbe se si usasse il default34m sequenza di escape ANSI (se non si sa di cosa si tratta, non importa). Comunque, tutto deriva dal fatto che ogni colore è un valore RGB anziché un valore predefinito di sistema.
Ulteriori informazioni
Per maggiori informazioni consulta la pagina GitHub