Attribute der Python -Klasse: unerwartetes Verhalten [Duplikat]Python

Python-Programme
Anonymous
 Attribute der Python -Klasse: unerwartetes Verhalten [Duplikat]

Post by Anonymous »

Ich bin verwirrt über Klassenattribute in Python.
Betrachten Sie die folgende Klasse: < /p>

Code: Select all

class A:
__lst = []

def add(self, str):
self.__lst.append(str)
print len(self.__lst)
Ich habe versucht, zwei Instanzen x und y zu erstellen und habe Folgendes erhalten:

Code: Select all

>>> x = A()
>>> x.add('aaa')
1
>>> x.add('bbb')
2
>>> y = A()
>>> y.add('aaa')
3
>>> y.add('bbb')
4
Ich hatte erwartet, dass die Instanz y eine separate Kopie des Listenattributs hat, aber es scheint, dass die Liste nur dann größer wird, selbst wenn Sie ein anderes Objekt verwenden, um Elemente zur Liste hinzuzufügen.>

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post