Functions

First Class Functions in Python

First class functions are used for declaring functions within functions, as well as passing functions as arguments. Functions that contain the declared or passed functions are called high order functions. Functions within another function are called low order functions.


Syntax
def high_order_function(passed_params, lower_function):
    #call passed in function
    lower_function(passed_params)
    #declare another function within the higher order function
    def another_lower_function(passed_params):
        #code to execute for this function
        return some_value
    #lower order functions can be used as return statements
    return another_lower_function

Notes

Lower order functions have access to variables initialized in the high order function.

Lower order functions often use tuples and dictionaries as parameters.


Example
#first class function
def compare(operator, a, b):
    return operator(a, b)

#lower order functions
def min(a, b):
    return a if a < b else b

def max(a, b):
    return a if a > b else b

def equals(a, b):
    return true if a == b else false

#calling first class function
result = compare(max, 5, 10)

Add to Slack

< Functions   |   Lambda >

© 2018 SyntaxDB. All Rights Reserved.