11
votes

Imprimer des données tabulaires en python

Quelle est la meilleure façon d'imprimer des données tabulaires dans Python? Dites que les données sont dans une liste 2D et je souhaite créer une table à la recherche intelligente. Ce que j'ai réellement est une liste de dictionnaires et je souhaite imprimer une intersection en fonction des valeurs des dictionnaires. Quelque chose comme xxx

mais de telle sorte que chaque colonne soit fixe de largeur. Les classes des écritures et des formateurs semblent quelque chose dans le domaine de la possibilité, mais semblent toujours complexes à utiliser par rapport à, par exemple, le formateur de Perl.

Y a-t-il des implémentations existantes ou dois-je écrire le mien?


4 commentaires

Je pense que vous voudrez peut-être essayer PPrint (oui, deux 'p). Je ne l'utilise pas mais j'ai vu les autres l'utiliser dans des situations similaires et il sonne une cloche ici


J'ai regardé Pprint, mais je ne vois pas comment l'utiliser dans la façon dont j'ai besoin.


Le duplicate possible comporte plus de votes et de réponses: Stackoverflow .com / questions / 9535954 / ... . Donnez toujours des exemples de sortie souhaités explicites =)


Dupliqué possible de Comment puis-je les tables ASCII Pretty-Print avec Python?


3 Réponses :


9
votes

Connaissez-vous sur PYPI ?

DataGrid et Prettytable semble être deux bonnes alternatives que j'ai trouvées avec une brève recherche. Vous devrez peut-être assembler les données dans le format que vous le souhaitez (avec "X" lorsque votre condition est vraie) avant de l'envoyer aux routines fournies.


0 commentaires

15
votes
print "%20s" % somevar 
Will print the value 'somevar' and use up to 20 spaces. Add a comma behind the print statement in order to avoid the line-break - and of course: read the string formatting operations docs on the '%' operator

0 commentaires

6
votes

Voici deux façons d'écrire une table de carrés et de cubes: xxx

vérifier Ceci pour plus de détails.


0 commentaires