голосование
Firebird
Программы
Майнинг
Заработок на сайте
Docker
Хостинг
Железо
PHP
Javascript
HTML
BASH
PostgreSQL
Мобильные технологии
Mercurial
Ресурсы
GIT
SEO
Oracle
Python
Ремонт
Проголосуйте за категорию!
счётчик
Яндекс.Метрика

Функции callback lambda Python

Существуют в python анонимные функции callback, lambda. Вы можете их использовать прямо внутри других функций. Они всегда возвращают результат. Они должны принимать данные для своих параметров. Посмотрите на пример. Тут callback - функции.


#!/usr/bin/python3
def function1(x) : return x ** 2
def function2(x) : return x ** 3
def function3(x) : return x ** 4

callback = [function1(2),function2(2),function3(2)]
print(list(callback))
"""
вывод:
[4, 8, 16]
"""

Функции lambda используют для различных задач: генерации списков, генерации множеств. Их используют для уменьшения объёма кода. С ними не просто работать, но оно того стоит.


#!/usr/bin/python3
# тут массив из 3 функций
callback = [lambda x : x ** 2, lambda x : x ** 3, lambda x : x ** 4]
# вывод в цикле
for function in callback : print('Result', function(3))
"""
вывод:
Result 9
Result 27
Result 81
"""

Функции lambda могут содержать массу параметров. В наше примере 3 параметра x, y, z.


#!/usr/bin/python3
getLambda = lambda x, y, z: x + y + z
print(getLambda(1,2,3))	
print(getLambda(4,5,6))
"""
вывод:
6
15
"""

Посмотрите на пример ниже. Тут написана функция square. Она достаточно проста. Затем я просто переписал функцию, используя lambda-функцию. Обратите внимание на количество кода и отсутствия слова return.


#!/usr/bin/python3
def square(x):
    return x**2

print(square(2))

square = lambda x : x ** 2
print(square(2))

"""
вывод:
4
4
"""

Еще есть интересная страница: lambda python примеры. В ней вы найдёте не сложные примеры lambda-функции.

просмотры: 3907, уровень: лёгкий уровень, рейтинг: 1, дата: 2017-09-01 13:21:09
проголосовать:

Комментарии:






поиск
реклама
банеры
домен RU всего за 99 рублей
http://trainingweb.ru/redirect/domains домен RU домен RU всего за 99 рублей
http://trainingweb.ru/redirect/well_web_vps_kvm Аренда VPS KVM в Европе Мы предлагаем в аренду VPS серверы с выделенным IP-адресом, которые полностью эмулируют физический сервер.
http://trainingweb.ru/redirect/pingadmin мониторинг сайтов сервис мониторинга работы сайта, мониторим HTTP, HTTPS, FTP, MYSQL, PostgreSQL, POP3, SMTP, IMAP