Sei que estou atrasado para a festa, mas acabei de criar uma biblioteca para isso que acho que poderia realmente ajudar. É extremamente simples, é por isso que acho que você deveria usá-lo. É chamado TableIT .
Uso básico
Para usá-lo, primeiro siga as instruções de download na página do GitHub .
Em seguida, importe-o:
import TableIt
Em seguida, faça uma lista de listas em que cada lista interna é uma linha:
table = [
[4, 3, "Hi"],
[2, 1, 808890312093],
[5, "Hi", "Bye"]
]
Então tudo que você precisa fazer é imprimi-lo:
TableIt.printTable(table)
Esta é a saída que você obtém:
+--------------------------------------------+
| 4 | 3 | Hi |
| 2 | 1 | 808890312093 |
| 5 | Hi | Bye |
+--------------------------------------------+
Nomes dos campos
Você pode usar nomes de campos se desejar ( se não estiver usando nomes de campos, não precisará dizer useFieldNames = False porque está definido como padrão por padrão ):
TableIt.printTable(table, useFieldNames=True)
A partir disso, você obterá:
+--------------------------------------------+
| 4 | 3 | Hi |
+--------------+--------------+--------------+
| 2 | 1 | 808890312093 |
| 5 | Hi | Bye |
+--------------------------------------------+
Existem outros usos para, por exemplo, você pode fazer isso:
import TableIt
myList = [
["Name", "Email"],
["Richard", "richard@fakeemail.com"],
["Tasha", "tash@fakeemail.com"]
]
TableIt.print(myList, useFieldNames=True)
A partir desse:
+-----------------------------------------------+
| Name | Email |
+-----------------------+-----------------------+
| Richard | richard@fakeemail.com |
| Tasha | tash@fakeemail.com |
+-----------------------------------------------+
Ou você pode fazer:
import TableIt
myList = [
["", "a", "b"],
["x", "a + x", "a + b"],
["z", "a + z", "z + b"]
]
TableIt.printTable(myList, useFieldNames=True)
E a partir disso você obtém:
+-----------------------+
| | a | b |
+-------+-------+-------+
| x | a + x | a + b |
| z | a + z | z + b |
+-----------------------+
Cores
Você também pode usar cores.
Você usa cores usando a opção de cor ( por padrão, é definida como Nenhuma ) e especificando valores RGB.
Usando o exemplo acima:
import TableIt
myList = [
["", "a", "b"],
["x", "a + x", "a + b"],
["z", "a + z", "z + b"]
]
TableIt.printTable(myList, useFieldNames=True, color=(26, 156, 171))
Então você receberá:
Observe que as cores de impressão podem não funcionar para você, mas funcionam exatamente da mesma forma que as outras bibliotecas que imprimem texto colorido. Eu testei e todas as cores funcionam. O azul também não está bagunçado, como seria se estivesse usando a 34m
sequência de escape ANSI padrão (se você não souber o que é isso, não importa). Enfim, tudo vem do fato de que todas as cores têm valor RGB e não o padrão do sistema.
Mais informações
Para mais informações, consulte a página do GitHub