Комментарии 14
Или их видят лишь избранные?)
a = [1,2,3,4,5,6]
s = sum([num for num in a if num%2 == 0])
print(s)
>> 12
вообще не имеет смысла создавать тут list, правильнее писать так:
s = sum(num for num in a if not num % 2)
или даже:
s = sum(filter(lambda num: not num % 2, a))
а дальше по тексту все еще грустнее.
Сгенерировать ссылку на изображение (тут – image.png):
import base64
print('data:image/png;base64,'+base64.b64encode(open('image.png','rb').read()).decode())
9. Создание набора
В оригинале: Set Creation. Тип данных set хоть и является по сути набором элементов, но в информатике и математике в русской терминологии всё же называется множеством.
Честно говоря ожидал других однострочников, например как запустить веб сервер, как посчитать хеш файла… Практические задачи, которые можно решить прямо из консоли имея под рукой питон
Декартово произведение названо корявым словосочетанием "генерация групп".
Мгимофиништ, это само собой.
Но если автор вовсю импортирует библиотеки, то почему бы не
import itertools
pairs = itertools.product(['a', 'b'], [1, 2, 3])
findmax — это шутка такая, что ли?
Сами же упомянули стандартную функцию max; она ещё и гораздо гибче.
Если между list/generator comprehension и модулем itertools ещё можно повыбирать в силу разной выразительной способности, то какой практический смысл писать функцию findmax?
Тем более, какой смысл делать эту функцию из лямбды?
Руководства по стилю прямо говорят: если у вас есть именованная лямбда, переделайте её в функцию.
То есть, это ещё и пример, как не надо кодить.
25 полезных однострочников Python, которые вы должны знать