
В Python есть крайне необычные функции, которые не всегда даже можно вообразить.
Например, если вы такой занятый, что вам было некогда писать функцию, а в момент написания кода эта самая функция вам понадобилась, то ее можно сразу и написать внутри кода, для этого лишь указав слово lambda.
lamba список аргументов через запятую, разделитель : далее код самой функции.
Вот так это будет выглядеть – возведем число x в степень y
stepen = lambda x,y : x*y
Теперь можем использовать так:
stepen(3,5)
возведет 3 в 5 степень.
Для отображения на экране
print (stepen(3,5))
Можно так же попробовать что-то типа такого:
r=5 u= lambda x:x**2 if r>u(2): print('больше') else: print('меньше')
Вторая интересная функция map.
В качестве первого аргумента она принимает функцию, а в качестве второго или третьего – списки данных.
Например,
Напишем функцию aa которая данное число умнажает на себя и прибавляет 3. def aa(x): x*=x+3 return x Создадим список значений, которые будет брать поочередно map b=[1,2,3,4] Прокрутим-рассчитаем все значения через map c= map(aa,b) Получили результат в с, но это пока объект, его надо перобразовать в список: d = list(c) Теперь смотрим результат. print(d)
Если же у функции например 2 или более аргумента, то тогда так:
def bb(x,y): x*=y+3 return x Два списка, так как два аргумента у функции b=[1,2,3,4] c=[2,0,3,6] # bb - сама функция, b - первый аргумент, c -второй. map прокрутит все аргументы по попрядку. c= map(bb,b,c) d = list(c) print(d) Вывод: [5, 6, 18, 36]
Отправить ответ
Для отправки комментария вам необходимо авторизоваться.