Difference between revisions of "Python:Functions"

From wiki
Jump to navigation Jump to search
Line 27: Line 27:
  
  
=Build in function=
+
=Self defined functions=
 +
 
 +
Arguments are positional but can be passed by keyword too.
 +
 
 +
<syntaxhighlight lang='python'>
 +
def main():
 +
    outcome = function(par1,par2)
 +
    function(par2 = <value>, par1 = <value>)
 +
    return
 +
 
 +
def function (inpar1, inpar2 = <defaultvalue>):
 +
    codeblock
 +
    return result
 +
 
 +
main()
 +
</syntaxhighlight>
 +
 
 +
 
 +
;def function (*args,**kwargs):
 +
:Take any number of positional arguments and put them in the [[Python:DataTypes#Tuple|tuple]] args
 +
:Take any number of keyword arguments and put them in the [[Python:DataTypes#Dictionary_or_dict|dict]] kwargs
 +
 
 +
 
 +
=Anonymous functions(lambda)=
 +
lambda defines an anonymous function.
 +
 
 +
 
 +
=Build in functions=
  
 
List of all build in functions [https://docs.python.org/3/library/functions.html]
 
List of all build in functions [https://docs.python.org/3/library/functions.html]
Line 59: Line 86:
 
time.sleep(<sec>)
 
time.sleep(<sec>)
 
</syntaxhighlight>
 
</syntaxhighlight>
 
 
=Self defined functions=
 
 
Arguments are positional but can be passed by keyword too.
 
 
<syntaxhighlight lang='python'>
 
def main():
 
    outcome = function(par1,par2)
 
    function(par2 = <value>, par1 = <value>)
 
    return
 
 
def function (inpar1, inpar2 = <defaultvalue>):
 
    codeblock
 
    return result
 
 
main()
 
</syntaxhighlight>
 
 
 
;def function (*args,**kwargs):
 
:Take any number of positional arguments and put them in the [[Python:DataTypes#Tuple|tuple]] args
 
:Take any number of keyword arguments and put them in the [[Python:DataTypes#Dictionary_or_dict|dict]] kwargs
 

Revision as of 14:20, 7 September 2021


sys._getframe( ).f_code.co_name
Return name of current function
You can pass a function-name as parameter
def main():
    outcome = function1(function2,inpar2 = <value>)
    return

def function1 (functiontocall, inpar2 = <defaultvalue>):
    result = functiontocall(inpar2)
    return result

def function2 (inpar):
    codeblock
    return result

main()
eval(functionnameasstring)()
Convert a function name as string to a function call
WARNING: Make sure you have control over the string provided, you may call anything this way.


Self defined functions

Arguments are positional but can be passed by keyword too.

def main():
    outcome = function(par1,par2)
    function(par2 = <value>, par1 = <value>)
    return

def function (inpar1, inpar2 = <defaultvalue>):
    codeblock
    return result

main()


def function (*args,**kwargs)
Take any number of positional arguments and put them in the tuple args
Take any number of keyword arguments and put them in the dict kwargs


Anonymous functions(lambda)

lambda defines an anonymous function.


Build in functions

List of all build in functions [1]

len(obj1)
Return the number of elements in obj1 (string, list, tuple, set)
max(obj1)
Return the largest item in obj1
min(obj1)

Return the smallest item in obj1

round(x,y)
Round x to y decimals
input([prompt])
Read and return input from standard input. Display 'prompt' first when provided.
int(string[,base=x)])
Convert str to an integer. Base = 2 converts bit-string presentation ('010101').
str(object)
repr(object)
Return a string representation of an object. str for the informal representation (just make it printable), repr for the formal representation (more formating??)

Other often used functions

Sleep function
import time
time.sleep(<sec>)