将事件添加到列表中

时间:2009-04-01 12:38:59

标签: python

我想在列表中添加事件,以便在添加项目时根据项目执行操作,例如生成新的数据结构,改变屏幕输出或引发异常。

我如何做到这一点?

1 个答案:

答案 0 :(得分:1)

您可以创建自己的类来扩展列表对象:

class myList(list):
    def myAppend(self, item):
        if isinstance(item, list):
            print 'Appending a list'
            self.append(item)
        elif isinstance(item, str):
            print 'Appending a string item'
            self.append(item)
        else:
            raise Exception

L = myList()
L.myAppend([1,2,3])
L.myAppend('one two three')
print L

#Output:
#Appending a list
#Appending a string item
#[[1, 2, 3], 'one two three']