У меня есть класс A, который можно сгенерировать двумя разными способами.
- a = A (path_to_xml_file)
- a = A (список A, список B)
Первый метод имеет путь к файлу в качестве входных данных для анализа из файла XML для получения listA и listB. Второй метод дает два списка.
Я могу придумать два способа реализации нескольких конструкторов. Как вы думаете? Какой метод обычно используют парни из Python для этого случая?
Проверьте тип
class A():
def __init__(self, arg1, arg2 = None):
if isinstance(arg1, str):
...
elif isinstance(arg1, list):
...
a = A("abc")
b = A([1,2,3],[4,5,6])
Создание разных строителей
class A2():
def __init__(self):
pass
def genFromPath(self, path):
...
def genFromList(self, list1, list2):
...
a = A2()
a.genFromPath("abc")
b = A2()
b.genFromList([1,2,3],[4,5,6])