Python nommé

Python nommé

Python propose de nombreuses structures de données intégrées comme les listes, les dictionnaires et les tuples pour stocker et gérer efficacement les données. Le NamedTuple est le conteneur de type dictionnaire disponible dans le module «Collections». Semblable aux dictionnaires, le NamedTuple contient également les clés qui sont mappées à des valeurs. Cependant, le NamedTuple permet d'accéder aux valeurs via les clés et à travers les index. Par rapport aux dictionnaires Python, l'accès aux valeurs via les index est la fonctionnalité supplémentaire dans NamedTuple. Cet article explique le python nommé en détail avec des exemples.

Accéder aux valeurs à partir du NamedTuple

Les valeurs à l'intérieur du NamedTuple sont accessibles de la manière suivante:

  1. En utilisant les clés
  2. En utilisant les index
  3. En utilisant la fonction getAttr ()

Comme le NamedTuple convertit le champ en attributs, il est donc facile d'accéder aux valeurs à l'aide de la fonction getAttr ().

Exemples

Voyons maintenant quelques exemples pour comprendre la création et le travail de NamedTuple. Pour créer et utiliser le NamedTuple, nous devons d'abord importer le module de collections. Dans ce qui précède, un exemple, un NamedTuple pour un enseignant est créé. Les clés du NamedTuple sont respectivement le nom, l'âge et le département. Les valeurs sont accessibles à l'aide d'index et de clés.

# Importation du module des collections
Importer des collections
#Scréation d'un NamedTuple pour un enseignant
#Name, l'âge et le département sont les clés
Enseignant = collections.NamedTuple («enseignant», [«nom», «âge», «département»])
# Créez un nouveau professeur et ajoutant les valeurs
enseignante_john = enseignant ("John", 29, "informatique")
#Accession des valeurs des enseignants en utilisant des index
Imprimer ("Accès aux valeurs à l'aide d'index:")
Print ("Le nom de l'enseignant est:", Teacher_John [0])
imprimer ("l'âge de l'enseignant est:", Teacher_john [1])
Print ("Département des enseignants est:", Teacher_John [2])
# accéder aux valeurs des enseignants à l'aide de clés
Imprimer ("Accès aux valeurs à l'aide de clés:")
imprimer ("Le nom de l'enseignant est:", professeur_john.nom)
imprimer ("l'âge des enseignants est:", enseignant_john.âge)
imprimé ("Département des enseignants est:", Teacher_John.département)

Sortir

Accédons maintenant aux valeurs à l'aide de la fonction getAttr (). Le NamedTuple et la clé sont passés comme argument à la fonction getAttr ().

# Importation du module des collections
Importer des collections
#Scréation d'un NamedTuple pour un enseignant
#Name, l'âge et le département sont les clés
Enseignant = collections.NamedTuple («enseignant», [«nom», «âge», «département»])
# Créez un nouveau professeur et ajoutant les valeurs
enseignante_john = enseignant ("John", 29, "informatique")
#accession des valeurs de l'enseignant à l'aide de la fonction getAttr ()
imprimer (getAttr (Teacher_john, "nom"))
imprimer (getAttr (Teacher_john, "âge"))
Print (getAttr (Teacher_John, "Department"))

Sortir

Opérations populaires de NamedTuple

Certaines fonctions populaires convertissent les autres collections comme les listes, les dictionnaires et les tuples en NamedTuple et renvoient les informations nommées. Voici les fonctions qui convertissent les autres collections en NamedTuple:-

  • _faire()
  • _asdict ()
  • ** opérateur

La fonction _Make () convertit une liste d'objets iTable et Tuple en un nom. La fonction _asdict () fait un ordre d'ordre dans le NamedTuple et le renvoie. Enfin, l'opérateur ** convertit un dictionnaire en un nom. De plus, les fonctions qui renvoient les informations NamedTuPle sont les suivantes:

  • _des champs
  • _remplacer()

La fonction _fields () renvoie tous les champs du nom de NamedTuple alors que la fonction _replace () remplace une valeur particulière par une autre valeur.

Implémentons les fonctions comme mentionné ci-dessus dans notre script Python pour convertir les différentes collections en NamedTuple.

# Importation du module des collections
Importer des collections
#Scréation d'un NamedTuple pour un enseignant
#Name, l'âge et le département sont les clés
Enseignant = collections.NamedTuple («enseignant», [«nom», «âge», «département»])
# Créez un nouveau professeur et ajoutant les valeurs
enseignante_john = enseignant ("John", 29, "informatique")
#Scréation d'une liste
Teacher_list = ["Mark", 30, "Administration des affaires"]
# Création d'un dictionnaire
enseignante_dict = 'name': 'talor', 'Âge': 32, 'département': 'économie'
#Using _make () Fonction pour convertir la liste en NamedTuple
Print ("Liste à NamedTuple Conversion:")
imprimé (professeur._Make (professeur_list))
#Using _asdict () Fonction pour faire un ordre d'ordre
Imprimer ("Making the ordonnadict:")
imprimer (professeur_john._asdict ())
#Using the ** pour convertir un dictionnaire en un nom
Imprimer ("Conversion du dictionnaire en NamedTuple:")
imprimer (professeur (** professeur_dict))

Sortir

Utilisons maintenant les fonctions _fields () et _replace () pour obtenir les informations des clés et remplacer les clés, respectivement.

# Importation du module des collections
Importer des collections
#Scréation d'un NamedTuple pour un enseignant
#Name, l'âge et le département sont les clés
Enseignant = collections.NamedTuple («enseignant», [«nom», «âge», «département»])
# Créez un nouveau professeur et ajoutant les valeurs
enseignante_john = enseignant ("John", 29, "informatique")
#Using _fields Fonction pour obtenir les clés de NamedTuple
Print ("Les clés de NamedTuple sont:")
imprimé (professeur._des champs)
#Using _replace Fonction pour remplacer la valeur
Print ("La valeur de remplacement du nom est:")
imprimer (professeur_john._replace (name = 'Donald'))

Sortir
Dans la sortie, on peut voir que la fonction _fields renvoie les clés des informations et que la fonction _replace () remplace le nom avec succès.

Conclusion

Le NamedTuple est le conteneur de type dictionnaire présent dans le module «Collections». Il contient la clé et mappe les valeurs à la clé. Contrairement au dictionnaire Python, les valeurs NamedTuples sont également accessibles en utilisant la fonction index et getAttr (). Cet article explique brièvement le NamedTuple à travers des exemples.