# Autres langages > Python > GUI >  aide pour liste de dictionnaire en python

## perduenpython

Bonjour, tout d'abord jespre que je suis dans la bonne catgorie pour exposer mon problme, je cherche  crer une fonction C qui prend en paramtre un texte et qui me donne une liste de dictionnaires.
J'ai 2 objets qui eux proviennent de 2 autres fonctions A et B:elles me donnent 2 listes, liste A(de la fonction A) et liste B(fonction B), je ferais appelle  A et B dans la C. Le but de la fonction C est d'ajouter les lments de la liste A en tant que valeur de la premire cl de mon dictionnaire et les lments de la liste B en tant que valeur de la deuxime cl de ce mme dictionnaire mais j'ai besoin d'avoir autant de dictionnaires que j'ai d'lments dans mes listes A et B, donc dico1={(cl 1: 1er lment de ma liste A),(cl 2: 1er lment de la liste B)} et ainsi de suite.

Pour l'instant je n'ai pas encore fais appel  mes fonctions A et B, j'ai inventer des listes que j'ai mis en paramtre  la place du texte: 

prenom=["euh","elle"]
nom=["rou","tu"]


def ajoutAuDico (objet1,objet2,objet3):
            dico={"prenom":"","nom":""}
            listedeDico=[]
            dico["prenom"]=objet1
            dico["nom"]=objet2
            print listedeDico.append(dico)
            return listedeDico

print ajoutAuDico(prenom,nom,compteur)


Rsultat je n'obtient que un seul dictionnaire alors que j'aimerais obtenir 
deux dictionnaires. Je suis en total manque d'imagination sur ce que je suis cense faire pour qu'il cre un nouveaux dictionnaires pour chaque lment. Comme vous l'avez surement devinez je suis une grande dbutante !


ps: on ne voit pas l'indentation je n'arrive pas  le faire apparaitre mais je l'ai

----------


## VinsS

Salut,

Il faut que tu cres ta liste de dicos dans l'espace global de noms parce que, dans ton code, tu recres une liste vide  chaque fois que tu appelles ta fonction.


```

```

Cela dit, tu appelles ta fonction en lui donnant directement les listes et non pas les objets de celles-ci, donc tu as ceci:


```

```

Par consquent, listedeDico == [{"prenom": ["euh","elle"], "nom": ["rou","tu"]}]

Pour itrer sur plusieures listes en mme temps, tu as la fonction _zip()_


```

```

Et tu peux passer ceci directement  ta fonction:


```

```

Je te laisse rcrire la fonction, mais commence la par un print.


```

```

Autre choses:
- si tu n'as pas de raison d'utiliser Python 2, alors utilise plutt Python 3
- Pour poster du code ici, utilise la balise *#* dans la barre d'outils d'dition.

----------

