Как работает данная строчка
Объясните пожалуйста как работает данная строчка. Я понимаю что она из списка, где значения кортежи, делает просто список со значениям, но как она работает, зачем там метод sum. Спасибо)
var = [(data,),(data2,),(data3,)...]
new = list(sum(var, ()))
Ответы (1 шт):
Функция sum возвращает сумму элементов переданного объекта и имеет следующее определение:
sum(iterable, /, start=0)
Первым параметром она принимает итерируемый объект (например кортеж или список), а вторым — начальное значение — значение, к которому будут прибавляться элементы итерируемого объекта.
Приведённый Вами код аналогичен следующему:
start = ()
for t in var:
start += t
new = list(start)
list — это конструктор списка. В него можно передать итерируемую последовательность, которая будет конвертирована в список.
Сначала может показаться, что list — это функция, так как классы в Python принято именовать в стиле CamelCase. Но это именно класс, а его имя оставлено в таком виде по некоторым историческим соображениям.