Bedeutung von "object at" .. ein Pointer?

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Hans1_1
User
Beiträge: 1
Registriert: Mittwoch 5. Februar 2020, 20:45

Wenn ich ein Python Programm aufrufe und einer Variablen zuorden a la

Code: Alles auswählen

ipcon = IPConnection()
und dann den Inhalt der Variablen auf dem Terminal ausgebe mit

Code: Alles auswählen

print(ipcon)
dann erhalte ich als Antwort eine Postion gewissermaßen

Code: Alles auswählen

<ip_connection.IPConnection object at 0x000001D6B525CB48>
Für mein Verständnis würde ich gern eine Vorstellung entwickeln, was mir diese Position 0x000001D6B525CB48 sagt und vielleicht auch noch etwas Kontext zur Bedeutung dieser Aussage und was in der Variablen eigentlich wie gespeichert ist. Es wirkt vielleicht wie ein Pointer, eine Lokation im Speicherbereich ..??? Bin da völlig am schwimmen.
Ich bin noch Anfänger und habe nirgends gefunden, wo das mal erklärt ist oder ich suche mit den falschen Fragen.

Danke, Hans
Sirius3
User
Beiträge: 18272
Registriert: Sonntag 21. Oktober 2012, 17:20

Für das Verständnis reicht es, zu wissen, dass diese Zahl ein Objekt zu einem bestimmten Zeitpunkt eindeutig identifiziert. Daher wird die Zahl auch Identifier genannt. Dass das in manchen Implementierungen der Python-VM eine Speicheraddresse ist, ist weiter nicht relevant, weil man zum einen nicht direkt auf den Speicher zugreifen kann und zum anderen das nicht immer der Fall sein muß.
Benutzeravatar
__blackjack__
User
Beiträge: 14051
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@Hans1_1: Ergänzend dazu: „was in der Variablen eigentlich wie gespeichert ist“ — was ist da die/eine Variable für Dich? Die Zahl/ID gehört zum Objekt/Wert und nicht zum Namen `ipcon`. Genau so wie der Typ `IPConnection` zum Objekt gehört und nicht zum Namen.
“Vir, intelligence has nothing to do with politics!” — Londo Mollari
Antworten