PyLint W0108: лямбда может быть не нужна (ненужная лямбда) - PullRequest
0 голосов
/ 04 июня 2019

Pylint возвращает приведенное ниже сообщение для кода, который у меня есть ниже:

data.py: 125: 30: W0108: лямбда не может быть необходимо (ненужное лямбда)

in_p = ', '.join(list(map(lambda x: "'{}'".format(x), data)))

Почему здесь не требуется лямбда и как ее можно реорганизовать?

1 Ответ

2 голосов
/ 04 июня 2019

"'{}'".format уже является функцией;Ваше лямбда-выражение определяет функцию, которая ничего не делает, кроме как принимает аргумент и передает его другой функции.Вы можете просто написать

in_p = ', '.join(list(map("'{}'".format, data)))

Некоторые могут предпочесть использование списка здесь:

in_p = ', '.join(["'{}'".format(x) for x in data])

Возможно, также стоит использовать временную переменную для удобства чтения.

quote_it = "'{}'".format
in_p = ', '.join(list(map(quote_it, data)))
# in_p = ', '.join([quote_it(x) for x in data])
...