Bonjour,
c'est implémenter une liste de choix ( puis actions ) , dans une boucle et invite de commandes.
C'est courant ( voir GitHub , et toutes les autres sources existantes. )
pour simplifier un peu plus le corps de ta boucle, tu peux faire ( pour séparer le code ... hein )
while( choix!=valeur_quitter )
Afficher ( ensemble_de_choix_et_chaine )
Lire_choix_et_actions_correspondantes(void)
wend
ce qui fait que ta variable choix est bien utilisée,
et que tu n'a pas besoin de variable "quitter", puisque c'est une valeur parmi "choix".
pour "ensemble_de_choix_et_chaine" ...
tu prépares tes "chaines"(string) de choix.
Donc : une chaine de choix etc ..
c'est :
header ( Etage N ; Groupe N° N ... etc .... )
body ( les choix ... du premier au dernier etc ... )
footer ( footer peut être "sélectionnez l'action/ le chiffre que vous voulez.." )
Dans le déroulement :
tu affiches le(s) choix ( Chaine ), l'utilisateur valides.
Puis la variable choix est mise à jour ( c'est le choix de USER ), et une action est lancée.
Une action :
ce sera :
descendre dans l'arbre ( hierarchie ) de choix
revenir au niveau précédent
lancer cette fonction là .. qui correspond à choix 2 , puis choix 4 etc ... )
et bien d'autres ...
C'est chouette ces cycles là.
Si Python le permet,
tu pourra formatter, positionner l'affichage dans ta console Python,
c'est de l'optimisation , avec par exemple les header / footer qui ne changent pas beaucoup.
Et ça fait une fenêtre peut être plus fluide, en tout cas + légère.
Comme certaines parties seront statiques .. sans changement,
Et que parfois 'flush' une console , ça fait du lag ... plutot crasseux à regarder.
Pour dire que ce sera indispensable avec les ressources en consoles.
( j'avais approché une fenetre comme celle ci, mais dans un autre language )
Le positionement aussi , en 'position Offset' ...
c'est utile pour une affichage dans une console en coordonnées X;Y .. buffering ... ( bref .. ça va débarquer dans ton projet rapidement aussi ).
Ta console est une ensemble de colonnes, et de lignes ...
un tableur est pas jaloux du tout ... [0,0 ;;;; maxX;maxY]
Message édité par djinto le 02-07-2021 à 22:33:46
---------------
Nom : Prénom : Age : Adresse : Ville : Code Postal : Num Trois Tel