Tôi đã chơi xung quanh với các lớp Python và đến ví dụ sau, trong đó hai biến xuất hiện là các biến lớp tĩnh có hành vi khác nhau khi được sửa đổi.Biến lớp int int vs mảng
Điều gì đang xảy ra ở đây? Bản năng đầu tiên của tôi là cái gì đó phức tạp đang diễn ra với các tham chiếu.
class Foo:
a = []
n = 0
def bar(self):
self.a.append('foo')
self.n += 1
x = Foo()
print x.a, x.n ([] 0)
x.bar()
print x.a, x.n (['foo', 1])
y = Foo()
print y.a, y.n (['foo', 0])
y.bar()
print y.a, y.n (['foo', 'foo'], 1)
đây là trường hợp tương tự để tìm ra trong python http://stackoverflow.com/questions/101268/hidden-features-of-python#113198 – qwwqwwq