• comment connaitre si une clé existe dans un dico:

il est préférable de tester si une clé est présente dans un dico par cette méthode, plutot que d'utiliser une fonction de parcours.
Code :
1
2
3
4
 
monDico={'a':'b','b':'c'}
if nomDico.has_key('a'):
    print monDico['a']
>> b

  • acquerir une valeur d'un dico sans savoir si elle est presente.

bien souvent il nous faut tester la presence d'une clé dans un dico avant d'en récupérer la valeur, afin de traiter l'exception d'une clé manquante. Hors une méthode du dico est prévue a cet effet ce qui évite l'utilisation de la méthode has_key. On utilisera plutot la méthode setdefault. Cette derniére permet soit de récupérer la valeur courante pour la clé correspondante, a défaut d'en initialiser une.
Code :
1
2
3
4
5
6
 
a=monDico('a','toto')
print a
c=monDico('c','toto')
print c
print monDico
>> b
>> toto
>> {'a':'b','b':'c','c':'toto'}
  • construire un dico a partir d'une liste

Il peut être utile d'utiliser une liste pour construire un dico, les items de la liste représentant chacune des clé du dico.
la methode fromkeys prend une liste en argument. Cette dernière sera utiliser pour construire le dico. Un arguments supplémentaire peut être passer. Celui ci défini la valeur par défaut donné au clé, pour le dico.
Code :
1
2
3
4
5
6
 
a=[1,2,3,4,5,6,7]
b=dict.fromkeys(a)
print b
c=dict.fromkeys(a,'valeur')
print c
>> {1: None, 2: None, 3: None, 4: None, 5: None, 6: None, 7: None}
>> {1: 'valeur', 2: 'valeur', 3: 'valeur', 4: 'valeur', 5: 'valeur', 6: 'valeur', 7: 'valeur'}