Python 特征列表处理程序不响应+;=列表扩展
我错过了什么Python 特征列表处理程序不响应+;=列表扩展,python,enthought,traits,Python,Enthought,Traits,我错过了什么 谢谢 这是一个错误TraitListObject覆盖了extend()和其他传播更改的变异方法,但忽略了\uuIdd\uIdd()。解决方法是使用extend()而不是+=,因为您没有使用+=修改列表,而是将其分配给另一个新列表…+=会修改列表。 from traits.api import List, HasTraits class Foo(HasTraits): x = List def _x_items_changed(self,new): prin
谢谢 这是一个错误
TraitListObject
覆盖了extend()
和其他传播更改的变异方法,但忽略了\uuIdd\uIdd()
。解决方法是使用extend()
而不是+=
,因为您没有使用+=
修改列表,而是将其分配给另一个新列表…+=
会修改列表。
from traits.api import List, HasTraits
class Foo(HasTraits):
x = List
def _x_items_changed(self,new):
print new.added
f = Foo()
f.x = [1,3]
f.x.append(9) #handler reacts!
f.x += [9,10] # handler does not react! Why?