Dictionnaire de points de vue sont essentiellement ce que leur nom indique: des vues sont tout simplement comme une fenêtre sur les clés et les valeurs (ou des éléments) d'un dictionnaire. Voici un extrait de la documentation officielle de Python 3:
>>> dishes = {'eggs': 2, 'sausage': 1, 'bacon': 1, 'spam': 500}
>>> keys = dishes.keys()
>>> values = dishes.values()
>>> # view objects are dynamic and reflect dict changes
>>> del dishes['eggs']
>>> keys # No eggs anymore!
dict_keys(['sausage', 'bacon', 'spam'])
>>> values # No eggs value (2) anymore!
dict_values([1, 1, 500])
(Le Python 2 équivalent utilise dishes.viewkeys()
et dishes.viewvalues()
.)
Cet exemple illustre le caractère dynamique de vues: les clés de la vue n'est pas une copie des clés à un moment donné dans le temps, mais plutôt une simple fenêtre qui vous montre les clés, si elles sont modifiées, alors ce que vous voyez dans la fenêtre de modification. Cette fonction peut être utile dans certaines circonstances (par exemple, on peut travailler avec une vue sur les touches dans plusieurs parties d'un programme au lieu de recalculer la liste actuelle des touches à chaque fois qu'ils sont nécessaires).
Un avantage est que la recherche , par exemple, les touches utilise seulement une petite quantité de mémoire fixe et nécessite une petite et le montant fixe de temps processeur, comme il n'y a pas de création d'une liste de clés (Python 2, d'autre part, souvent inutilement crée une nouvelle liste, cité par Rajendran T, qui prend de la mémoire et le temps dans une quantité proportionnelle à la longueur de la liste). Pour continuer la fenêtre analogie, si vous voulez voir un paysage derrière un mur, il vous suffit de faire une ouverture dans celle-ci (vous créez une fenêtre); la copie de l'clés dans une liste correspondrait à la place de la peinture une copie du paysage sur votre mur-la copie prend du temps, de l'espace, et ne pas se mettre à jour.
Pour résumer, les vues sont tout simplement... des idées (windows) sur votre dictionnaire, qui montrent le contenu du dictionnaire, même après les changements. Ils offrent des caractéristiques qui diffèrent de celles de des listes: une liste de clés contient une copie des clés de dictionnaire, à un moment donné dans le temps, tandis qu'un affichage est dynamique et est beaucoup plus rapide à obtenir, car il n'a pas à copier les données (clés ou valeurs) afin d'être créé.