Ich lerne Python und erstelle eine Datenbankverbindung. Beim Versuch, der Datenbank etwas hinzuzufügen, denke ich daran, Tupel aus Informationen zu erstellen und sie dann der Datenbank hinzuzufügen.
Was ich tue : Ich nehme Informationen vom Benutzer und speichere sie in Variablen. Kann ich diese Variablen zu einem Tupel hinzufügen? Können Sie mir bitte bei der Syntax helfen?
Auch wenn es einen effizienten Weg gibt, teilen Sie bitte ...
BEARBEITEN Lassen Sie mich diese Frage ein wenig bearbeiten ... Ich brauche nur das Tupel, um Informationen in die Datenbank einzugeben. Soll ich das Tupel löschen, sobald die Informationen zur Datenbank hinzugefügt wurden? Ich meine, ich brauche das Tupel nicht mehr.
a = ()
undb= a + (5)
führt zu b = 5b= a + (5,)
, würde daher zu führenb = (5,)
; ein Tupel.Sie können mit einem leeren Tupel mit so etwas wie beginnen
t = ()
. Sie können mit hinzufügen+
, aber Sie müssen ein weiteres Tupel hinzufügen. Wenn Sie ein einzelnes Element hinzufügen möchten, machen Sie es zu einem Singleton :t = t + (element,)
. Sie können ein Tupel mehrerer Elemente mit oder ohne dieses nachfolgende Komma hinzufügen.quelle
t = ()
dannt += (1,)
Eine andere Taktik, die noch nicht erwähnt wurde, besteht darin, an eine Liste anzuhängen und die Liste am Ende in ein Tupel umzuwandeln:
kehrt zurück
Ich benutze dies manchmal, wenn ich ein Tupel als Funktionsargument übergeben muss, was oft für die Numpy-Funktionen notwendig ist.
quelle
list(someTuple)
funktioniert , dh auch funktioniert. Die beiden Objekttypen sind anscheinend austauschbarIn Python 3 können Sie
*
ein neues Tupel von Elementen aus dem ursprünglichen Tupel zusammen mit dem neuen Element erstellen.quelle
tuple1 + ("baz",)
."Sobald die Informationen zur Datenbank hinzugefügt wurden, sollte ich das Tupel löschen? Ich meine, ich brauche das Tupel nicht mehr."
Nein.
Im Allgemeinen gibt es keinen Grund, etwas zu löschen. Es gibt einige Sonderfälle zum Löschen, aber sie sind sehr, sehr selten.
Definieren Sie einfach einen engen Bereich (dh eine Funktionsdefinition oder eine Methodenfunktion in einer Klasse), und die Objekte werden am Ende des Bereichs mit Müll gesammelt.
Mach dir keine Sorgen, etwas zu löschen.
[Hinweis. Ich habe mit einem Mann zusammengearbeitet, der - zusätzlich zum Versuch, Objekte zu löschen - immer "Reset" -Methoden schrieb, um sie zu löschen. Als würde er sie retten und wiederverwenden. Auch eine dumme Einbildung. Ignorieren Sie einfach die Objekte, die Sie nicht mehr verwenden. Wenn Sie Ihre Funktionen in ausreichend kleinen Codeblöcken definieren, müssen Sie nicht mehr darüber nachdenken.]
quelle
Es ist so einfach wie das Folgende:
Tupel in Python sind jedoch unveränderlich , sodass Sie nach dem Erstellen keine Variablen mehr an ein Tupel anhängen können.
quelle
Wie andere Antworten bereits erwähnt haben, können Sie ein vorhandenes Tupel nicht ändern, aber Sie können jederzeit ein neues Tupel erstellen (das möglicherweise einige oder alle Elemente aus vorhandenen Tupeln und / oder anderen Quellen übernimmt).
Wenn sich beispielsweise alle interessierenden Elemente in skalaren Variablen befinden und Sie die Namen dieser Variablen kennen:
zu verwenden, zB wie in diesem Beispiel:
Natürlich würde dieser eine Fall einfacher ausgedrückt werden als
(x, y, z)
(oder sogar ganz auf die Namen verzichten(23, 45, 67)
), aber dermaketuple
Ansatz könnte in einigen komplizierteren Fällen nützlich sein (z. B. wenn die zu verwendenden Namen auch dynamisch bestimmt und während des Zeitraums an eine Liste angehängt werden) Berechnung).quelle
Ich bin mir ziemlich sicher, dass die Syntax dafür in Python lautet:
Einmal eingestellt, können Tupel nicht mehr geändert werden.
quelle