IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Créer un couple numéro / item à partir d'une liste


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Février 2016
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Février 2016
    Messages : 6
    Par défaut Créer un couple numéro / item à partir d'une liste
    Bonjour a toutes et tous

    Je suis novice total en python mais j'ai un petit projet perso que je voudrais mettre en oeuvre. J'ai lu "apprenez à programmer en python" de notre ami Vincent Le Goff mais j'avoue me trouver face à une difficulté que je vais tâcher de vous expliquer simplement.

    J'ai créé une liste de plantes : gingembre, citron, curcuma... etc. Une fois la plante choisie, on peut lire sa fiche détaillée.

    Je voudrais utiliser ces éléments de liste dans un menu à choix multiple : "pour le citron, tapez 2" etc

    Je me suis dis qu'il suffisait de faire une liste de couples (2, "citron")...

    Mais je sais que ma liste est amenée à évoluer et comme tout à chacun je n'ai pas envie de changer mes numéros parce que j'ai ajouté ou supprimé un élément...

    (J'espère que je suis clair jusque là)

    Donc mon idée est de créer un compteur qui part de 0 et s'incrémente de 1 à chaque fois qu'il existe un élément "plante" dans ma liste : i+=1

    Seulement voilà :

    - si je fais quelque chose comme while i.... quelle condition je mets derrière ?
    - et comment je récupère ces infos pour en quelque sorte construire la liste avec les numéros que je désire ?

    Après je me dis que je peux créer une fonction qui appellera cette liste "sur mesure" et que je pourrais intégrer cette fonction dans une boucle. Au lieu d'utiliser print j'utilise return avec la fonction qui m'affiche mes couples, et input pour le choix utilisateur.

    J'ai essayé de poser ça sur papier mais c'est compliqué.

    Je vous copie mon code pour vous aider :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    # -*- coding :Latin -1 -*
    import os
     
    plantes = ["chou", "sureau", "gingembre", "citron"]
     
    dictionnaire = ["vulnéraire", "apéritif"]
     
    pathologie = ["colon irritable", "angine", "constipation"]
     
    chou = ("Les variétés utilisées couramment sont le chou rouge et le chou vert.")
     
    compteur=0
     
    def fruitleg ():
     
    def dico ():
     
    def pathos ():
     
    def accueil():
        # Affiche le menu d'accueil qui renvoie le choix de l'utilisateur
    	print("1 : Dictionnaire des thermes techniques")
    	print("2 : recherche par plante")
    	print("3 : Recherche par pathologie")
        print("q : Quitter\n") # On saute une ligne
     
        return input("votre choix : ")
     
    def nouvelle_recherche():
    	#L'utilisateur a le choix de quitter ou de lancer une nouvelle recherche. Ce boolean permet de mettre fin ou non aux recherches
    	input("veux-tu lancer une nouvelle recherche ? (O/N) :")
    	if information == "N"
    		return False
    	True
     
    information = True
    #ce Drapeau permet de relancer la boucle après une recherche uniquement si la réponse est oui. Sinon, la boucle est stoppée.
     
    print ("Bienvenue dans le guide pratique des plantes médicinales")
    #Petit message d'accueil à l'attention du visiteur
     
    while information:
    #Etape 1 : récupérer le menu principal
    	choix = accueil()
    #Etape 2 : En fonction du choix utilisateur, l'opération est lancée	
    	if choix == "1"
    		return 
    	elif choix == "2"
    		return fruitleg
    	else
    		print ("Merci d'indiquer un choix valide")

  2. #2
    Modérateur

    Avatar de Bktero
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2009
    Messages
    4 493
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2009
    Messages : 4 493
    Billets dans le blog
    1
    Par défaut
    Regarde la fonction len() qui te donne la longueur d'une liste. Tu sais donc combien d'éléments tu as.

    Tu peux aussi regarder la fonction enumerate() qui renvoie les couples (indice ; élément) d'une liste.

  3. #3
    Membre du Club
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Février 2016
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Février 2016
    Messages : 6
    Par défaut
    merci

    je vais creuser dans ces directions et je vous tiens au courant

    Bonne journée

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 29/01/2016, 13h01
  2. Réponses: 0
    Dernier message: 30/03/2015, 12h08
  3. Créer des groupes de 4 à partir d'une liste
    Par Coussati dans le forum Algorithmes et structures de données
    Réponses: 6
    Dernier message: 07/12/2011, 21h39
  4. Créer un nouvel onglet à partir d'une liste déroulante
    Par valouche dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 02/06/2007, 11h26
  5. Créer une variable d'environnement à partir d'une liste de fichier
    Par ddams dans le forum Shell et commandes GNU
    Réponses: 2
    Dernier message: 23/02/2007, 20h03

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo