Dictionnaires avancés Python

Dictionnaires avancés Python

Introduction

Vous avez déjà fait la connaissance des dictionnaires, mais tout comme les autres structures de données supportées par Python, il existe des méthodes et des moyens plus puissants de les utiliser. Il n'y a pas autant de méthodes pour travailler avec des dictionnaires que pour les listes, mais c'est parce que les dictionnaires n'en ont tout simplement pas besoin. De plus, bon nombre de ceux qui existent, travaillent pour décomposer les dictionnaires en listes et tuples pour les rendre plus faciles à gérer. Ainsi, ces méthodes de liste peuvent être utilisées conjointement avec celles du dictionnaire pour créer une machine efficace pour gérer les données.

Méthodes de dictionnaire

Éléments, clés et valeurs

Ces méthodes s'efforcent de décomposer les dictionnaires en d'autres structures de données pour rendre le travail beaucoup plus gérable. Cela donne également accès aux méthodes de ces structures de données. Grâce à ces combinaisons de méthodes et de boucles, vous pouvez accéder et manipuler facilement les données.

La première méthode est articles(). Il décompose chaque entrée du dictionnaire dans un tuple et les stocke tous dans une liste.

distro_install_command = 'debian': 'apt-get', 'ubuntu': 'apt-get', 'fedora': 'dnf', 'Centos': 'yum', 'opensuse': 'zypper', 'arch' : 'Pacman', 'gentoo': 'émerge' distro_install_list = distro_install_command.items () print (distro_install_list) print (Distro_install_list [3] [1]) 

Tout se décompose exactement comme vous vous attendriez à ce qu'il.

La méthode suivante vous donne accès aux clés du dictionnaire sous la forme d'une liste.

distro_install_command = 'debian': 'apt-get', 'ubuntu': 'apt-get', 'fedora': 'dnf', 'Centos': 'yum', 'opensuse': 'zypper', 'arch' : 'Pacman', 'gentoo': 'émerge' distro_names = distro_install_command.Keys () pour la distribution dans Distro_Names: Print (Distro) 

Le nouveau DISTRO_NAMES La liste se comporte comme les autres et peut être bouclée à travers la même chose.

La dernière méthode est la même celle avant elle, mais au lieu de récupérer les clés, celle-ci obtient les valeurs. Il devrait être assez évident maintenant qu'il s'appelle valeurs().

distro_install_command = 'debian': 'apt-get', 'ubuntu': 'apt-get', 'fedora': 'dnf', 'Centos': 'yum', 'opensuse': 'zypper', 'arch' : 'Pacman', 'gentoo': 'émerge' distro_commands = distro_install_command.valeurs () pour la commande dans distro_commands: print (commande) 

Valeurs du dictionnaire dans les chaînes

Ce n'est pas une méthode ou quoi que ce soit trop complexe, mais des situations surgiront lorsque vous souhaitez insérer des valeurs directement d'un hachage dans une chaîne, et cela ne fonctionne pas comme vous le pensez. Le % L'opérateur regarde en fait le dictionnaire dans son ensemble et tire les valeurs des clés à l'intérieur pour les remplacer en une chaîne.

book_info = 'title': 'apprentissage python', 'pages': 342, 'pub_date': 'novembre 2016', 'chapitres': 14, print ("le livre s'appelle% (title) s, et il était Libéré sur% (pub_date) s. Il s'agit de pages de% (pages) D long avec% (chapitres) D chapitres."% book_info) 

Comme vous pouvez le voir, c'est juste un moyen plus pratique de gérer l'insertion des valeurs d'un dictionnaire. L'utilisation de la méthode régulière peut devenir très répétitive et lourde, même avec seulement quelques entrées.

Itération des dictionnaires

Iterating sur les dictionnaires n'est pas aussi simple que vous le pensez probablement. Parce que les dictionnaires fonctionnent en utilisant des paires de valeurs, la façon de faire un peu basée sur les listes ne fonctionne pas tout à fait. Donnez-le et voyez ce qui se passe.

distro_install_command = 'debian': 'apt-get', 'ubuntu': 'apt-get', 'fedora': 'dnf', 'Centos': 'yum', 'opensuse': 'zypper', 'arch' : 'Pacman', 'gentoo': 'émerger' pour la distribution dans distro_install_command: print (Distro) 

Alors, qu'est-ce-qu'il s'est passé? Cela a en quelque sorte fonctionné, mais les seules choses publiées étaient les clés. Vous pouvez probablement deviner une façon d'obtenir les valeurs aussi, et cela fonctionnera, mais ce n'est pas si élégant d'une solution.

distro_install_command = 'debian': 'apt-get', 'ubuntu': 'apt-get', 'fedora': 'dnf', 'Centos': 'yum', 'opensuse': 'zypper', 'arch' : 'Pacman', 'gentoo': 'émerger' pour la distribution dans Distro_install_command: print ("La distribution est% s, et il utilise la commande% s."% (distro, distro_install_command [distro]))) 

Il existe une meilleure façon de gérer cela, et il utilise le articles() méthode. Si vous vous en souvenez avant, le articles() La méthode crée une liste de tuples contenant les clés et les valeurs du dictionnaire.

distro_install_command = 'debian': 'apt-get', 'ubuntu': 'apt-get', 'fedora': 'dnf', 'Centos': 'yum', 'opensuse': 'zypper', 'arch' : 'Pacman', 'gentoo': 'émerger' pour la distribution, commande dans distro_install_command.items (): imprimer ("La distribution est% s, et il utilise la commande% s."% (distribution, commande)) 

Cela semble voler face à quelque chose que vous avez appris auparavant, n'est-ce pas? Comment est-ce pour la boucle, la création de deux variables temporaires pour accéder aux éléments d'une liste bidimensionnelle? Eh bien, c'est en fait une fonctionnalité intégrée à Python pour ce genre de chose. Malheureusement, cela ne fonctionne pas toujours bien avec les listes multidimensionnelles car cela nécessite que chaque liste de la liste multidimensionnelle soit de la même taille. Avec un dictionnaire, vous savez que vous allez toujours travailler avec des paires de valeurs, mais les listes multidimensionnelles pourraient contenir des listes de n'importe quelle taille. C'est pourquoi ce n'est vraiment qu'une excellente solution lorsque vous travaillez avec des dictionnaires.

Conclusion

En utilisant des méthodes et une itération, vous pouvez divertir les dictionnaires en une forme beaucoup plus facile à travailler avec. En combinant les fonctionnalités des dictionnaires avec les fonctionnalités disponibles pour les listes et les tuples, vous gagnez des outils incroyablement puissants pour gérer les données.

Table des matières

  1. Guide d'introduction et d'installation de Python
  2. Fichiers Python et interprète
  3. Expérimenter des nombres et du texte en python
  4. Variables python
  5. Travailler avec des variables de nombre dans Python
  6. Python String Basics
  7. Chaînes de python avancées
  8. Commentaires Python
  9. Listes de python
  10. Méthodes de liste Python
  11. Listes multidimensionnelles python
  12. Tuples python
  13. Opérateurs booléens python
  14. Python If Instatations
  15. Python pendant les boucles
  16. Python pour les boucles
  17. Dictionnaires python
  18. Dictionnaires avancés Python
  19. Fonctions Python

Tutoriels Linux connexes:

  • Masterring Bash Script Loops
  • Une introduction à l'automatisation Linux, des outils et des techniques
  • Boucles imbriquées dans les scripts bash
  • Comment travailler avec l'API WooCommerce REST avec Python
  • Gestion de la saisie des utilisateurs dans les scripts bash
  • Choses à installer sur Ubuntu 20.04
  • Manipulation de Big Data pour le plaisir et le profit Partie 1
  • Mint 20: Mieux que Ubuntu et Microsoft Windows?
  • Comparaison des MPM de Linux Apache PreFork vs Worker
  • Introduction à Yaml avec des exemples