В процессе изучения Python я наткнулся на функцию isinstance, но она не работает так, как я ожидал. несмотря на то, что экземпляр и его класс являются параметрами, он все равно возвращает false.
Я просмотрел этот и некоторые другие веб-сайты, но мне не удалось найти что-либо относительно моей конкретной ситуации. Я протестировал его с Python 3.7.3.
Вот как я это использовал:
class bird:
def fly():
print("all birds fly.")
class owl(bird):
def hoot():
print("owls hoot.")
my_owl=owl
my_owl.fly()
my_owl.hoot()
print(isinstance(my_owl, owl))
print(isinstance(owl, my_owl))
Я изменил порядок экземпляра и параметров класса, чтобы убедиться, что сначала я охватил все базы. Согласно прочитанным мною учебным пособиям isinstance должен возвращать True в одном из двух вышеупомянутых случаев (в частности, в первом случае, но в обоих случаях он возвращает false).
Заранее спасибо.