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 :

help dictionnaires python


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2018
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2018
    Messages : 4
    Par défaut help dictionnaires python
    bonjour,

    j' ais un petit soucis dans mon code le voici :

    avez vous une idées ?
    Code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    l=['Mariana','Alain','Steven','Karim','Bilal','Elise','Oumar','Lochlainn','Kamel','Théo','Richard','Tashi','Nicolas','Ahrieane','Vanicha','Jean Mi']
    v=['=','+','+','+','0','+','=','=','=','+','=','=','++','+','=','=']
    dico={}
    i=0
    for elem in range(len(l)):
        dico[elem[i]]=v[i]    
        i+=1
    print (dico)
    l' erreur affiche "'int' object is not subscriptable" ligne 6

  2. #2
    Expert confirmé
    Avatar de tyrtamos
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2007
    Messages
    4 486
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2007
    Messages : 4 486
    Billets dans le blog
    6
    Par défaut
    Bonjour,

    C'est normal. Tel que défini dans la ligne "for...", elem est un entier. elem[i] n'a donc pas de sens.

    Pour faire plus simple, regarde avec la fonction zip.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2018
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2018
    Messages : 4
    Par défaut merci
    Citation Envoyé par tyrtamos Voir le message
    Bonjour,

    C'est normal. Tel que défini dans la ligne "for...", elem est un entier. elem[i] n'a donc pas de sens.

    Pour faire plus simple, regarde avec la fonction zip.
    merci à toi en cherchant j' ai trouvé, j'ai vu à plusieurs reprise l' utilisation de zip et ça ma l'air beaucoup mieux que avec la boucle

  4. #4
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2018
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2018
    Messages : 4
    Par défaut c'est bon trouvé :)
    c'est bon trouvé merci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    l=['Mariana','Alain','Steven','Karim','Bilal','Elise','Oumar','Lochlainn','Kamel','Théo','Richard','Tashi','Nicolas','Ahrieane','Vanicha','Jean Mi']
    v=['=','+','+','+','0','+','=','=','=','+','=','=','++','+','=','=']
    dico={}
    i=0
    for elem in range(len(l)):
        dico[elem]=v[i]    
        i+=1
    print (dico)

  5. #5
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 743
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 743
    Par défaut
    Citation Envoyé par nicolas333 Voir le message
    c'est bon trouvé merci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    l=['Mariana','Alain','Steven','Karim','Bilal','Elise','Oumar','Lochlainn','Kamel','Théo','Richard','Tashi','Nicolas','Ahrieane','Vanicha','Jean Mi']
    v=['=','+','+','+','0','+','=','=','=','+','=','=','++','+','=','=']
    dico={}
    i=0
    for elem in range(len(l)):
        dico[elem]=v[i]    
        i+=1
    print (dico)
    Si c'est vraiment le résultat souhaité, autant écrire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    dico={}
    for i in range(len(v)):
        dico[i]=v[i]
    print (dico)
    ou bien:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    dico=dict(enumerate(v))
    print (dico)
    Et si c'est pas çà, à quoi sert le "print"?

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  6. #6
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 835
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 835
    Billets dans le blog
    1
    Par défaut
    Bonjour
    Citation Envoyé par wiztricks Voir le message
    Et si c'est pas çà, à quoi sert le "print"?
    Moi j'irais même plus loin: à quoi sert d'utiliser un dictionnaire avec des indices consécutifs débutant à 0 comme clefs (ce qui est déjà le cas en natif d'un tuple ou d'une liste) ?
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  7. #7
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 743
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 743
    Par défaut
    Citation Envoyé par Sve@r Voir le message
    Moi j'irais même plus loin: à quoi sert d'utiliser un dictionnaire avec des indices consécutifs débutant à 0 comme clefs (ce qui est déjà le cas en natif d'un tuple ou d'une liste) ?
    A faire un exercice sur les dictionnaires.
    Et un exercice, c'est la mise en pratique des concepts présentés dans un cours ou dans le chapitre d'un bouquin. Sans connaître le contexte, on n'a aucune idée de ce que l'auteur (du bouquin) ou le prof. souhaitait illustrer... et difficile d'avoir un avis sur l'aspect pédagogique de la chose: apprendre à programmer et programmer efficacement avec Python, c'est pas la même chose.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

Discussions similaires

  1. [Python 3.X] récupérer la valeur maximum dans un dictionnaire python
    Par khaled87 dans le forum Général Python
    Réponses: 6
    Dernier message: 11/01/2015, 19h43
  2. Conversion d'un dictionnaire Python en Tcl
    Par t_om84 dans le forum Tcl/Tk
    Réponses: 1
    Dernier message: 23/09/2009, 18h30
  3. help() dans python
    Par yveslt dans le forum Déploiement/Installation
    Réponses: 1
    Dernier message: 31/07/2008, 10h56
  4. Dictionnaire français en python
    Par Choupinou dans le forum Général Python
    Réponses: 7
    Dernier message: 28/03/2007, 09h03

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