Python namedtuple

Python namedtuple

Python erstellt viele integrierte Datenstrukturen wie Listen, Wörterbücher und Tupel, um die Daten effizient zu speichern und zu verwalten. Das benannte Tuple ist der im Modul „Sammlungen“ erhältliche Wörterbuch-ähnliche Container. Ähnlich wie bei den Wörterbüchern enthält das benannte Tupel auch die Schlüssel, die den Werten zugeordnet sind. Das benannte Tupel ermöglicht es jedoch, auf die Werte über Schlüssel und sowie über Indizes auf die Werte zugreifen zu können. Im Vergleich zu den Python -Wörterbüchern ist der Zugriff auf die Werte über Indizes die zusätzliche Funktionalität in Namenstuple. Dieser Artikel erläutert das Python namensTuple im Detail mit Beispielen.

Zugriff auf Werte aus dem benannten Tuple

Auf die Werte innerhalb des benannten Tupels kann auf folgende Weise zugegriffen werden:

  1. Durch die Verwendung der Schlüssel
  2. Unter Verwendung der Indizes
  3. Durch die Verwendung der Funktion getattr ()

Da der benannte Tupel das Feld in die Attribute umwandelt, ist es daher einfach, auf die Werte mit der Funktion von GetAttr () zugreifen zu können.

Beispiele

Sehen wir uns nun einige Beispiele an, um die Erstellung und Arbeit von Namentuple zu verstehen. Um das benannte Tuple zu erstellen und zu verwenden, müssen wir zunächst das Sammlungsmodul importieren. Im folgenden Beispiel wird ein benannter Tuple für einen Lehrer erstellt. Die Schlüssel der Namenstuple sind Name, Alter und Abteilung. Die Werte werden mit Indizes und Tasten zugegriffen.

#Das Sammlungsmodul
Kollektionen importieren
#einen benannten Tuple für einen Lehrer erstellen
#Name, Alter und Abteilung sind die Schlüssel
Lehrer = Sammlungen.Namentuple ('Lehrer', ['Name', 'Alter', 'Abteilung'])
# Erstellen Sie einen neuen Lehrer und fügen Sie die Werte hinzu
lehrer_john = Lehrer ("John", 29, "Informatik")
#Zugriff auf die Lehrerwerte mit Indizes
print ("Zugriff auf Werte mit Indizes:")
print ("Lehrername ist:", lehrer_john [0])
print ("Lehreralter ist:", lehrer_john [1])
print ("Lehrerabteilung ist:", lehrer_john [2])
#Zugriff auf die Lehrerwerte mit Schlüsseln
print ("Zugriff auf Werte mit Tasten:")
print ("Lehrername ist:", lehrer_john.Name)
print ("Lehreralter ist:", lehrer_john.Alter)
print ("Lehrerabteilung ist:", lehrer_john.Abteilung)

Ausgang

Greifen wir nun mit der Funktion von GetAttr () auf die Werte zu. Das benannte Tuple und der Schlüssel werden als Argument an die Funktion von Getattr () übergeben.

#Das Sammlungsmodul
Kollektionen importieren
#einen benannten Tuple für einen Lehrer erstellen
#Name, Alter und Abteilung sind die Schlüssel
Lehrer = Sammlungen.Namentuple ('Lehrer', ['Name', 'Alter', 'Abteilung'])
# Erstellen Sie einen neuen Lehrer und fügen Sie die Werte hinzu
lehrer_john = Lehrer ("John", 29, "Informatik")
#Zugriff auf die Lehrerwerte mit der Funktion von GetAttr ()
print (getattr (lehrer_john, "name"))
print (getattr (lehrer_john, "Alter"))
print (getattr (lehrer_john, "Abteilung"))

Ausgang

Beliebte Operationen von genannten Tuple

Einige beliebte Funktionen wandeln die anderen Sammlungen wie Listen, Wörterbücher und Tupel in Namenstuple um und geben die benannten Tuple -Informationen zurück. Im Folgenden sind die Funktionen aufgeführt, die die anderen Sammlungen in Namenstuple umwandeln:-

  • _machen()
  • _AsDict ()
  • ** Operator

Die Funktion _Make () wandelt ein iterables Objekt wie Liste und Tupel in ein benanntesTuple um. Die Funktion _aSdict () macht ein Auftrag aus dem benannten Tuple und gibt sie zurück. Zuletzt konvertiert der ** Operator ein Wörterbuch in einen Namenstuple. Darüber hinaus sind die Funktionen, die die namensTuple -Informationen zurückgeben, die folgenden:

  • _fields
  • _ersetzen()

Die Funktion _fields () gibt alle Felder des NamensTuple zurück, während die Funktion _replace () einen bestimmten Wert durch einen anderen Wert ersetzt.

Lassen Sie uns die Funktionen, wie oben in unserem Python -Skript erwähnt.

#Das Sammlungsmodul
Kollektionen importieren
#einen benannten Tuple für einen Lehrer erstellen
#Name, Alter und Abteilung sind die Schlüssel
Lehrer = Sammlungen.Namentuple ('Lehrer', ['Name', 'Alter', 'Abteilung'])
# Erstellen Sie einen neuen Lehrer und fügen Sie die Werte hinzu
lehrer_john = Lehrer ("John", 29, "Informatik")
#eine Liste erstellen
lehrer_list = ["mark", 30, "Business Administration"]
#ein Wörterbuch erstellen
lehrer_dict = 'name': 'talor', 'ay': 32, 'Abteilung': 'Economics'
#UNGUED _MAKE () -Funktion, um die Liste in namedTuple zu konvertieren
print ("Liste der namedTuple Conversion:")
Druck (Lehrer._make (lerner_list))
#UseSused _AsDict () -Funktion, um ein Bestelldikt zu machen
print ("Machen Sie das bestellt:")
print (lehrer_john._aSdict ())
#Verwenden Sie den **, um ein Wörterbuch in einen benannten Tupel umzuwandeln
print ("Konvertieren des Wörterbuchs in Namenstuple:")
print (Lehrer (** lehrer_dict))

Ausgang

Verwenden wir nun die Funktionen _fields () und _replace (), um die Informationen der Schlüssel zu erhalten und die Schlüssel zu ersetzen.

#Das Sammlungsmodul
Kollektionen importieren
#einen benannten Tuple für einen Lehrer erstellen
#Name, Alter und Abteilung sind die Schlüssel
Lehrer = Sammlungen.Namentuple ('Lehrer', ['Name', 'Alter', 'Abteilung'])
# Erstellen Sie einen neuen Lehrer und fügen Sie die Werte hinzu
lehrer_john = Lehrer ("John", 29, "Informatik")
#Verwendung _fields Funktion, um die Tasten von namedTuple zu erhalten
print ("Die Schlüssel von benannten Tuple sind:")
Druck (Lehrer._fields)
#Verwendung von _replace -Funktion, um den Wert zu ersetzen
print ("Der Name des Namens ersetzen:")
print (lehrer_john._replace (name = 'Donald'))

Ausgang
In der Ausgabe ist ersichtlich, dass die Funktion _fields die Informationsschlüssel zurückgibt, und die Funktion _replace () ersetzt den Namen erfolgreich.

Abschluss

Das benannte Tupel ist der im Modul „Sammlungen“ vorhandene Wörterbuch-ähnliche Container. Es enthält den Schlüssel und ordnet die Werte dem Schlüssel zu. Im Gegensatz zum Python Dictionary können auch auf die NamedTuples -Werte mit der Funktion der Indizes und Getattr () zugegriffen werden. Dieser Artikel erklärt das benannte Tuple kurz anhand von Beispielen.