functions
This commit is contained in:
117
src/basic/functions.py
Normal file
117
src/basic/functions.py
Normal file
@@ -0,0 +1,117 @@
|
||||
|
||||
|
||||
def my_function():
|
||||
print("Anikuttan")
|
||||
|
||||
|
||||
# calling the function
|
||||
my_function()
|
||||
|
||||
|
||||
# name is Positional Arguments
|
||||
def say_my_name(name):
|
||||
print(f"Hello {name}")
|
||||
|
||||
|
||||
# calling
|
||||
say_my_name("Kuttan")
|
||||
say_my_name(name="Kuttan")
|
||||
say_my_name() # gives error because the positional arguments is missing
|
||||
say_my_name(name1="Kuttan") # it gives unexpected keyword argument
|
||||
|
||||
|
||||
def say_my_full_name(first_name, last_name):
|
||||
print(first_name + " " + last_name)
|
||||
|
||||
|
||||
say_my_full_name(first_name="Ani", last_name="kuttan") # calling
|
||||
|
||||
# If the number of positional arguments is unknown, add a * before the parameter name
|
||||
# *args give the tuple of arguments,
|
||||
|
||||
|
||||
def my_function(*kids):
|
||||
print("The youngest child is " + str(kids[0]))
|
||||
print(type(kids))
|
||||
|
||||
|
||||
my_function("Emil", "Tobias", "Linus")
|
||||
|
||||
|
||||
# If the number of keyword arguments is unknown, add a ** before the parameter name
|
||||
# **kwargs give the dict of arguments,
|
||||
def my_function2(**kids):
|
||||
print("The youngest child is " + str(kids))
|
||||
print("The youngest child is " + str(kids['name']))
|
||||
print(type(kids))
|
||||
|
||||
|
||||
my_function2(name="Emil", month="May", age="12")
|
||||
|
||||
|
||||
# default value
|
||||
def say_my_name(name="Name"):
|
||||
print(name)
|
||||
|
||||
|
||||
say_my_name()
|
||||
say_my_name("Anikuttan")
|
||||
|
||||
# Return Values
|
||||
|
||||
|
||||
def my_function(x):
|
||||
return 5 * x
|
||||
|
||||
|
||||
print(my_function(3))
|
||||
print(my_function(5))
|
||||
print(my_function(9))
|
||||
|
||||
# To specify function can have only positional arguments, add , / after the arguments:
|
||||
|
||||
|
||||
def my_function(x, /):
|
||||
print(x)
|
||||
|
||||
|
||||
# my_function(3)
|
||||
# my_function(x=3)
|
||||
my_function(x=3)
|
||||
|
||||
|
||||
# Keyword-Only Arguments
|
||||
# To specify that a function can have only keyword arguments, add *, before the arguments
|
||||
def my_function(*, x):
|
||||
print(x)
|
||||
|
||||
|
||||
my_function(x=3)
|
||||
|
||||
|
||||
# Combine Positional-Only and Keyword-Only
|
||||
# a, b is positional
|
||||
# c, d is keyword
|
||||
def my_function(a, b, /, *, c, d):
|
||||
print(a + b + c + d)
|
||||
|
||||
|
||||
my_function(5, 6, c=7, d=8)
|
||||
|
||||
# return type
|
||||
|
||||
|
||||
def say_my_name(name) -> str:
|
||||
return name
|
||||
|
||||
|
||||
my_name = say_my_name("ANikuttan")
|
||||
print(my_name)
|
||||
|
||||
|
||||
def add(a, b) -> int:
|
||||
return a + b
|
||||
|
||||
|
||||
number = add(a=10, b=20)
|
||||
print(number)
|
||||
Reference in New Issue
Block a user