私はPythonでいくつかのクラスを持っています:
class Class1:
def method(self):
return 1
class Class2:
def method(self):
return 2
myList
要素がすべて または のいずれかのインスタンスでClass1
あるリストClass2
。method
の各要素に対して呼び出されるの戻り値を要素とする新しいリストを作成したいと思いますmyList
。「仮想」基本クラスを使用してみました
class Class0:
def method(self):
return 0
class Class1(Class0):
def method(self):
return 1
class Class2(Class0):
def method(self):
return 2
しかし、試してみるmap(Class0.method, myList)
と、[0, 0, 0, ...]
. 私はPythonに少し慣れていません.「ダックタイピング」が実際の継承よりも好まれると聞いているので、これは間違ったアプローチかもしれません. もちろん、できます
[myList[index].method() for index in xrange(len(myList))]
しかし、私はの簡潔さが好きですmap
。これをまだ使用する方法はありmap
ますか?