Python: Почему результат этого кода [1], а не []?
Потому что вы используете атрибут класса. А атрибуты классов совместно используются всеми экземплярами. А вот атрибуты экземпляров уникальны для каждого экземпляра:>>> class M:
	    data = []
	    def __init__(self, value):
		    self.value = value

>>> x = M(1)
>>> y = M(2)
>>> x.value
1
>>> y.value
2
>>> x.data
[]
>>> y.data
[]
>>> x.data.append(10)
>>> x.data
[10]
>>> y.data
[10]
>>> x.value += 10
>>> x.value
11
>>> y.value
2
У Вас в классе не хватает конструкта, который необходим для создания экземпляра класса. Если сделать, например, так:class Foo:
	var = []
	def __init__(self):
		self.var = []

a = Foo()
b = Foo()
a.var.append(1)
print(a.var, b.var)
То всё прекрасно заработает.