Seite 1 von 1

Assignment von Variablen zu Variablen

Verfasst: Donnerstag 16. Januar 2014, 11:00
von Krischu
Bin neu bei Python und habe so ein paar Verständnisprobleme beim Assignment von Variablen.

a = b

bedeutet, wie ich gelesen habe, daß a und b dieselbe Memorylocation teilen. Also ist diese Zuweisung im Grunde sinnlos,
weil das, was ich mit b mache auch gleich auf a zurückwirkt und umgekehrt.

In anderen Programmiersprachen ist das meist anders.

Wie löse ich also in Python dieses in jeder anderen Programmiersprache ziemlich triviale Problem

Code: Alles auswählen

for line in f :
      if '\t' in line:
           print 'Zeile mit TAB gefunden'
           print 'Vorgängerzeile war:', previous
      previous = line


--
Grüße
Christoph

Re: Assignment von Variablen zu Variablen

Verfasst: Donnerstag 16. Januar 2014, 11:30
von BlackJack
@Krischu: Was ist jetzt das Problem? Das Programm dort zeigt die Zeile vor der Zeile in der das Tab gefunden wird. Hättest Du jetzt etwas anderes erwartet und wenn ja was?

`a` und `b` sind Namen. Denen werden Objekte zugeordnet. Und nach ``a = b`` stehen sowohl `a` als auch `b` für das selbe Objekt. Dass das nicht sinnlos ist zeigt ja Dein Programmbeispiel. Denn man kann `b` danach natürlich wieder an ein anderes Objekt binden. Das macht in Deinem Beispiel die ``for``-Schleife.

Edit: Java & Co funktionieren an der Stelle übrigens genau so, mit der Ausnahme von „primitiven Typen”. Die gibt es in Python nicht, in Python ist *alles* was man an einen Namen binden kann ein Objekt.

Re: Assignment von Variablen zu Variablen

Verfasst: Donnerstag 16. Januar 2014, 11:43
von Krischu
Ich muß ein Brett vorm Kopf gehabt haben, sorry.
:)