创建一个被视为列表但具有更多功能的python类?
发布时间:2020-12-20 12:26:56 所属栏目:Python 来源:网络整理
导读:我有一个名为dataList的类.它基本上是一个包含一些元数据的列表—myDataList.data包含(numpy)列表本身,myDataList.tag包含描述等.我希望能够使myDataList [42]返回myDataList的相应元素.数据,我想让Numpy等将它识别为一个列表(IE,numpy.asarray(myDataList)
我有一个名为dataList的类.它基本上是一个包含一些元数据的列表—myDataList.data包含(numpy)列表本身,myDataList.tag包含描述等.我希望能够使myDataList [42]返回myDataList的相应元素.数据,我想让Numpy等将它识别为一个列表(IE,numpy.asarray(myDataList)返回一个包含myDataList中数据的numpy数组).在
Java中,这就像将dataList声明为实现List接口一样简单,然后只定义必要的函数.你会怎么用
Python做到这一点?
谢谢. 解决方法
您可以子类列表并提供其他方法:
class CustomList(list): def __init__(self,*args,**kwargs): list.__init__(self,args[0]) def foobar(self): return 'foobar' CustomList继承了Python普通列表的方法,您可以轻松地让它实现更多的方法和/或属性. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |