Python - создание списка значений, полученных через API


class PythonUtilities(object):
    _public_methods_ = ['func_base']

    _reg_clsid_ = "{.......................}"
    _reg_desc_ = ""
    _reg_progid_ = ""
    _readonly_attrs_ = ['']

    _public_attrs_ = ['NDepVar', 'ArrayLen', 'ProbArray',
                      'X_cond1', 'X_cond2', 'X_cond3', 'X_cond4',
                      'X_cond5', 'X_cond6', 'Log']

    Log = ""

    def func_base(self, InList, coef0, coef1, coef2):
        self.revision = "version 1"
        OutList = []

        InList = list(InList)

        if len(InList) == 0:
            return OutList
        OutList = InList[:]
        for index in range(0, len(InList)):
            OutList.append(
                coef0 * InList[index] + coef1 * InList[index - 1] + coef2 * InList[index - 2])
        OutList.append(0)
        if OutList is None:
            return
        else:
            return OutList


Ответы (1 шт):

Автор решения: insolor
  1. Нужно привести в порядок отступы внутри класса
  2. Насколько я понимаю, func_out - отдельная функция, нужно убрать отступы перед ней, чтобы она была не внутри класса PythonUtilities
  3. func_base - метод, его нужно вызывать от объекта PythonUtilities, который нужно сначала создать
  4. При вызове func_base нужно передать 4 параметра - входной список (InList) и 3 коэффициента.
class PythonUtilities(object):
    _public_methods_=['func_base']

    def func_base(self,InList,coef0,coef1,coef2):
        self.revision="version 1"
        OutList=[]
            
        ...
        
        return OutList


def func_out(OutList):
    print(OutList)


func_out(PythonUtilities().func_base([],0,0,0))
→ Ссылка