Skip to main content

Python Functions

Python Functions
Using ‘def‘ statement for defining a function is the corner store of majority of programs in Python. To group a set of statements, programmers use functions and they can be run more than once in a program. They acts as a pack of instructions that is invoked by a name.

What are the Functions in Python?

In simple words, Python functions are techniques used to combine a set of statements within a program. Functions also let programmers compute a result-value and give parameters that serve as function inputs that may change each time the code runs. Functions prove to be a useful tool when the operations are coded in it and can be used in a variety of scenarios.
Functions are an alternative method of cutting-and-pasting codes, rather than typing redundant copies of the same instruction or operation; which further reduces the future work for programmers. They are the most basic structure of a program and so Python provides this technique for code re-use.
Let’s make a program using function to make the average of any quantity of number.
Example:
#!/usr/bin/python
def avrg(first, *rests):
return (first + sum(rests)) / (1 + len(rests))

# Sample use, Putting values

print avrg(1, 2)
print avrg(1, 2, 3)
print avrg(1,2,3,4)
Output:
1
2
2
The keyword ‘def‘ introduce a function definition. The statements that form the body of the function starts from the next line of function definition and needs indentation. The execution of the function introduces a new symbol table that is used for function’s local variable. In other words, all the variables that are assigned within the function store their value in the local symbol table. So global variables cannot be assigned with a value within a function; unless it is named under ‘global’ statement. To accept any number of keyword arguments, the arguments have to start with *. A * argument can appear only in the last position of function’s argument. A fine concept of function definition is that arguments can still appear after the * argument.
Example:
#!/usr/bin/python
def g(a, *arg, b):
Such arguments are known as keyword-only argument.

Python Program For Calculates The Fibonacci Series By Using Function.

Example:
def fibo(n):
a
= 0
b
= 1
for i in range(0, n):
temp
= a
a
= b
b
= temp + b
return a

# Show the first 13 Fibonacci numbers.
for c in range(0, 13):
print(fibo(c)) #Function call
Output:
0
1
1
2
3
5
8
13
21
34
55
89
144
If you compare with other programming languages, you might notice that ‘fibo‘ is not a function, rather it’s a procedure that is a function that doesn’t returns a value. It has to be kept in mind that every function without a return statement do return a value which is called ‘none‘; which normally gets suppressed by the interpreter.

Calling Functions

Functions can be called in different ways.
These are:
  • Providing the mandatory argument only
  • Providing one of the optional argument
  • By giving all the arguments

Functions-related Statements Or Expressions

  • Call Expression: myfun (‘karl’, ‘os’, *rest)
  • def : def display(message):
    print (‘Hi’ +  message)
  • return : def sum(a, b=2)
    return a+b
  • global : x = ‘hello’
    def printer():
    global x; x=’hi’
  • nonlocal : def outer():
    a = ‘old’
    def inner():
    nonlocal a; a = ‘new’
  • yield : def sq(k)
    for I in range(k): yield i**2

Advantages Of Python Functions

  • Maximizing code reusability
  • Minimizing redundancy
  • Procedural decomposition
  • Make programs simpler to read and understand

Python Program That Returns Multiple Values From Function

To return multiple values we can use normal values or simply return a tuple.
Example:
#!/usr/bin/python
def karlos():
return 1, 2, 3

a
, b, c = karlos()

print a
print b
print c
Output:
1
2
3

Comments

For Programs Click Here

Popular posts from this blog

Python Lists

Python Lists Dealing with data in a structured format is quiet generous, and this is possible if those data are set accordingly in a specific manner. So, Python provides these data structures named ‘lists’ and ‘tuples’ that are used to organize data in  single set. Python has 6 built-in sequences and among them the most famous are “lists and tuples”. The lists are containers that hold a number of other objects in a given order. It usually puts into practice the sequence protocol and allows programmers to add or remove objects from that sequence. Each element of the sequence is assigned a number i.e. he index and the first index is 0 (zero). This versatile data-type of Python is written in a sequence of list separated by commas between expressions. Creating Lists To build a list, just put a number of expressions in square brackets. The syntax is: Syntax: lst1 = [ ] # lst1 is the name of the list lst2 = [ expression1 , …. , expression_N ] Example: #!/usr/bin/python ls...

C++ Objects and Classes

C++ Object Oriented C++ Objects and Classes In object-oriented programming languages like C++, the data and functions (procedures to manipulate the data) are bundled together as a self-contained unit called an object. A class is an extended concept similar to that of structure in C programming language; this class describes the data properties alone. In C++ programming language, class describes both the properties (data) and behaviors (functions) of objects. Classes are not objects, but they are used to instantiate objects. What is a class? A class is an abstract data type similar to ‘ C structure ‘. Class representation of objects and the sets of operations that can be applied to such objects. Class consists of Data members and methods. Primary purpose of a class is to held data/information. This is achieved with attributes which is also know as data members. The member functions determine the behavior of the class i.e. provide definition for supporting various operations on data held...

Java Method Overriding

Java Method Overriding Declaring a method in the subclass which already exists there in the parent class is known as method overriding. When a class is inheriting a method from a superclass of its own, then there is an option of overriding the method provided it is not declared as final. The advantage of using overriding is the ability to classify a behavior that’s specific to the child class and the child class can implement a parent class method based on its necessity. There are certain rules that a programmer should follow in order to implement overriding. These are: In Java, a method can only be written in the child class and not in same class. Argument list should be exactly the same as that of the overridden method of that class. Instance methods can also be overridden if they are inherited by the child class. A constructor cannot be overridden. Final – declared methods cannot be overridden. Any method that is static cannot be used to override. The return type must have to be the...