Python: избегать предупреждений Pylint о слишком большом количестве аргументов

Я хочу реорганизовать большую функцию Python в меньшие. Например, рассмотрим следующий фрагмент кода:

x = x1 + x2 + x3 + x4 + x5 + x6 + x7 + x8 + x9

Конечно, это тривиальный пример. На практике код более сложный. Я хочу сказать, что он содержит много локальных переменных, которые должны быть переданы извлеченной функции, которая может выглядеть следующим образом:

def mysum(x1, x2, x3, x4, x5, x6, x7, x8, x9):
    x = x1 + x2 + x3 + x4 + x5 + x6 + x7 + x8 + x9
    return x

Проблема в том, что Pylint вызовет предупреждение о слишком большом количестве аргументов. Я мог бы избежать предупреждения, сделав что-то вроде:

def mysum(d):
    x1 = d['x1']
    x2 = d['x2']
    ...
    x9 = d['x9']
    x = x1 + x2 + x3 + x4 + x5 + x6 + x7 + x8 + x9
    return x

def mybigfunction():
    ...
    d = {}
    d['x1'] = x1
    ...
    d['x9'] = x9
    x = mysum(d)

но этот подход мне некрасив, он требует написания большого количества кода, который даже избыточен.

Есть ли лучший способ сделать это?

Ответы на вопрос(9)

Ваш ответ на вопрос