Ce guide explique comment déterminer la taille d'une fenêtre de terminal à l'aide de Python et présente des applications pratiques de ces informations pour créer des applications de ligne de commande plus conviviales. La connaissance des dimensions terminales est cruciale pour formater soigneusement la sortie du texte, la création de barres de progression de taille appropriée et la conception d'interfaces utilisateur réactives.
Récupération des dimensions terminales à Python
Python propose des fonctions intégrées pour obtenir la taille du terminal. La fonction shutil.get_terminal_size()
(disponible dans Python 3.3 et ultérieurement) est généralement préférée pour sa robustesse. La taille du terminal est représentée comme un tuple contenant le nombre de colonnes et de lignes.
Voici comment l'utiliser:
Importer la fermeture def get_terminal_dimensions (): "" "Récupère les dimensions du terminal (colonnes, rangées)." "" essayer: size = shuttil.get_terminal_size () Retour Size.Columns, taille.lines Sauf Oseror: Retour 80, 24 # Dimensions par défaut si la récupération échoue colonnes, lignes = get_terminal_dimensions () Print (F "Terminal Dimensions: {Colonnes} Colonnes X {Rows} Rows")
Cette version améliorée comprend la gestion des erreurs, fournissant des dimensions par défaut (80x24) si la taille du terminal ne peut pas être déterminée.
Applications pratiques
Plusieurs scénarios bénéficient de la connaissance de la taille du terminal:
Importer la fermeture def Center_Text (texte): colonnes, _ = get_terminal_dimensions () print (text.center (colonnes)) Centre_text ("Ce texte est centré!")
Importer la fermeture def draw_box (): colonnes, lignes = get_terminal_dimensions () print ("" "-" * (colonnes - 2) "") pour _ dans la gamme (lignes - 2): print ("|" "" * (colonnes - 2) "|") print ("" "-" * (colonnes - 2) "") draw_box ()
Barres de progression: afficher les barres de progression qui utilisent la largeur du terminal complète.
Journalisation et débogage: format des messages de journal pour s'adapter au terminal, améliorant la lisibilité pendant le développement.
Disposages multi-colonnes: organiser la sortie en colonnes qui s'ajustent à la largeur du terminal, adaptées à l'affichage des listes ou des tables.
Gestion des erreurs et approches alternatives
Si shutil.get_terminal_size()
rencontre une erreur (par exemple, quand aucun terminal n'est joint), le code fourni le gère gracieusement en renvoyant les dimensions par défaut. Pour les versions Python plus anciennes (pré-3.3), des méthodes alternatives ou des bibliothèques tierces peuvent être nécessaires.
Conclusion
Tirer parti de la taille du terminal améliore l'expérience utilisateur des applications de ligne de commande en rendant la sortie plus adaptable et visuellement attrayante. La fonction shutil.get_terminal_size()
, combinée à une gestion des erreurs appropriée, fournit une solution robuste pour obtenir ces informations dans Python. Les exemples montrent comment cette fonctionnalité peut améliorer divers aspects de la conception de l'interface de ligne de commande.
(Remarque: les chemins d'image sont supposés être corrects et relatifs à l'emplacement de sortie. Si ce n'est pas le cas, veuillez les ajuster en conséquence.)
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!