Heim > Backend-Entwicklung > Python-Tutorial > Python-Variablen: Zeiger oder Referenzen?

Python-Variablen: Zeiger oder Referenzen?

Patricia Arquette
Freigeben: 2024-12-29 13:49:10
Original
881 Leute haben es durchsucht

Python Variables: Pointers or References?

Python-Variablen neu denken: Zeiger oder Referenzen?

In der Welt der Python-Programmierung wurden Variablen oft als „Zeiger“ beschrieben. Dies wirft jedoch Fragen zum Verhalten dieser Variablen auf. Betrachten Sie die folgenden Codeausschnitte:

i = 5
j = i
j = 3
print(i)
Nach dem Login kopieren

Basierend auf der „Zeiger“-Annahme könnte man erwarten, dass ich nach der Codeausführung einen Wert von 3 hätte. Das tatsächliche Ergebnis ist jedoch 5.

Was ist los?

Python-Referenzen verstehen

In Python verhalten sich Variablen nicht wie Zeiger. Stattdessen fungieren sie als Referenzen. Eine Referenz verbindet eine Variable mit einem Objekt. Wenn Sie eine Variable einer anderen Variablen zuweisen, erstellen Sie einen Verweis auf dasselbe Objekt.

Das bedeutet, dass im ersten Codeausschnitt i und j Verweise auf dasselbe ganzzahlige Objekt (int(5)) sind. . Wenn der Wert von j auf 3 geändert wird, wird ein neues ganzzahliges Objekt (int(3)) erstellt und j wird zu einer Referenz darauf. Allerdings bleibt i ein Verweis auf das ursprüngliche Integer-Objekt int(5).

Der zweite Codeausschnitt veranschaulicht dieses Verhalten mit einer Liste:

i = [1,2,3]
j = i
i[0] = 5
print(j)
Nach dem Login kopieren

In diesem Fall sind i und j beide Verweise auf dasselbe Listenobjekt. Wenn i[0] geändert wird, wird das Listenobjekt selbst geändert, sodass sowohl i als auch j weiterhin auf dieselbe Liste verweisen.

Fazit

Python-Variablen sind keine Zeiger , sondern Referenzen. Sie stellen Verbindungen zu Objekten her, und wenn der Wert einer Variablen geändert wird, wirkt sich dies auf das Objekt selbst aus. Dies erklärt die unerwarteten Ergebnisse, die in den Codeausschnitten zu sehen sind, und dient als grundlegendes Konzept zum Verständnis des Variablenverhaltens von Python.

Das obige ist der detaillierte Inhalt vonPython-Variablen: Zeiger oder Referenzen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage