import random
def probabilized(*args):
def y():
ps = []
fs = []
for arg in args:
ps.append(arg["p"])
fs.append(arg["f"])
return fs[0]+fs[1]
return y
x = probabilized({"p": 34 ,"f":"ffffff"}, {"p": 34 ,"f":"fwwwfffff"})
print(x())
def functionCreator(txt):
def createdFunction(newTxt):
return txt + " " + newTxt
return createdFunction
print(functionCreator("hello")("world"))
def example_function(input):
output = input + 1
return output
def example_function():
return "Example"
def function():
x = "random"
print("random")
return x
a = function() #Runs line 3, makes a the return value ("random")
# Higher order function - function that take another function as parameter
# Function that returns a function
def mult_by(num):
return lambda x: x * num
print("3 * 5 =", (mult_by(3)(5))) #(5) is the parameter for the lambda fxn returned by mult_by()
# 3 * 5 = 15
# Pass a function to a function
def mult_list(list, func):
for x in list:
print(func(x), end = ' ')
mult_by_4 = mult_by(4)
mult_list(list(range(0, 5)), mult_by_4)
# 0 4 8 12 16
# Here we define the function with a parameter
# At the return statement, function ends execution
# And return the value or result of the code block
def greet(lang):
if lang == 'spanish':
return('Hola!')
elif lang == 'french':
return('Bonjour!')
else:
return('Hello!')
# Now we can call the function and print the returning value
print(greet('spanish'), 'Lucia.') # Output - Hola! Lucia.
print(greet('french'), 'Emma.') # Output - Bonjour! Emma.
print(greet('english'), 'James.')# Output - Hello! James.
return [expression_list]
def a():
def b():
return "xxxxxxxxx"
return b
print(a()())