Проверьте, имеет ли объект тип из заданного пространства имен в python3 - PullRequest
0 голосов
/ 06 января 2019

У меня есть пространство имен, скажем Hello (скажем, класс с именем Hello, с некоторыми классами, такими как World и другие классы внутри него)

Есть несколько объектов типа 'Hello.World.A', 'Hello.Everyone', 'Hello.People' и т. Д. *

Я хочу проверить, имеет ли переменная x тип, принадлежащий пространству имен / классу Hello проверка, которая выполняется для всех типов в пространстве имен / классе Hello

a = Hello.World()  # creating an object of Hello.World
b = Hello.World.A()
c = Hello()
d = Hello.People()

Я хочу, чтобы условие выполнялось для всех этих объектов.

например

def belongs_hello(obj)
   if type(obj) belongs to Hello:
        return True
   else:
        return False

belongs_hello(a) # True
belongs_hello(b) # True
belongs_hello(1) # False

Реальное, что я пытаюсь сделать, это что-то вроде:

def __init__(self,inp):
    if type(inp) is str:
        self.soup = self.get_soup(inp) # extract soup if url is given
    elif type(inp) is_some_decendant_of BeautifulSoup:
        self.soup = inp
    else:
        raise Exception('requires string(url) or element of beautifulsoup as argument')

Мне нужно что-то для is_some_decendent

...