Найти - Пользователи
Полная версия: создание экземпляра класса
Начало » Python для новичков » создание экземпляра класса
1
aCL
Есть примерно такой код:

class go:
 def __init__(self,_list,_cnt,_org='999'):
        self.list=_list
        self.count=_cnt
        self.org=_org
def make(text):
...
return a,b
_all=go(make(data))

Интерпретатор возвращает ошибку:

__init__() missing 1 required positional argument: '_cnt'

Если же создавать экземпляр примерно так:
_all=go(x,y)
ошибки не возникает. Насколько я понял, проблема в return a,b. Возможно ли обе эти переменные присвоить экземпляру _all, кроме как следующим способом:

x,y=make(data)
_all=go(x,y)

Одна лишняя строчка не принципиальна, просто на будущее решил этот вопрос для себя прояснить)
Спасибо.
JOHN_16
_all=go(*make(data))
Потому что конструктор принимает параметр как кортеж (a,b) а не как 2 переменные a,b . Символ * при передаче параметров означает передать аргумент перечисляемого типа по его элементам
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB