在我写这篇文章时,对我来说,我实际上遇到了这个问题似乎几乎是超现实的。
我有一个对象列表。这些对象中的每一个都是Individual
我编写的类的实例。
因此,传统智慧说isinstance(myObj, Individual)
应该返回True
。然而,事实并非如此。所以我认为我的编程中有一个错误,并打印type(myObj)
了,令我惊讶的是打印instance
并myObj.__class__
给了我Individual
!
>>> type(pop[0])
<type 'instance'>
>>> isinstance(pop[0], Individual) # with all the proper imports
False
>>> pop[0].__class__
Genetic.individual.Individual
我难住了!是什么赋予了?
编辑:我的个人课程
class Individual:
ID = count()
def __init__(self, chromosomes):
self.chromosomes = chromosomes[:] # managed as a list as order is used to identify chromosomal functions (i.e. chromosome i encodes functionality f)
self.id = self.ID.next()
# other methods