Introduction to Control Flow and Functions in Python.

CONTROL FLOW
What is control Flow?
  • A program's control flow is the order in which the program's code executes.
  • The control flow of a Python program is regulated by conditional statements, loops, and function calls.
  • Python if Statement
    You use the if statement to execute a block of code based on a specified condition.
    The syntax of the if statement is as follows:
    if condition:
        if-block
    The if statement checks the condition first.
    If the condition evaluates to True, it executes the statements in the if-block. Otherwise, it ignores the statements.
    Example
    marks = input('Enter your score:')
    if int(marks) >= 40:
        print("You have passed")
    Output
    Enter your score:46
    You have passed
    Python if…else statement
    Used when you want to perform an action when a condition is True and another action when the condition is False.
    Here is the syntax
    if condition:
        if-block;
    else:
        else-block;
  • From the above syntax, the if...else will execute the if-block if the condition evaluates to True. Otherwise, it’ll execute the else-block.
  • An example to illustrate how to use the if...else statement:
    marks = input('Enter your score:')
    if int(age) >= 40:
        print("You have passed.")
    else:
        print("You have failed.")
    Python if…elif…else statement
    It is used to check multiple conditions and perform an action accordingly.
    The elif stands for else if.
    Here is the syntax:
    if if-condition:
        if-block
    elif elif-condition1:
        elif-block1
    elif elif-condition2:
        elif-block2
    ...
    else:
        else-block
  • The elif statement allows you to check multiple expressions for true and execute a block of code as soon as one of the conditions evaluates to true.
  • If no condition evaluates to true, the if...elif...else statement executes the statement in the else branch.
  • Example
    marks = input('Enter your score:')
    
    your_marks = int(marks)
    
    if your_marks >= 70:
        print("Your grade is A")
    elif your_marks >= 60:
        print("Your grade is B")
    else:
        print("null")
    Output
    Enter your score:70
    Your grade is A
    Python for Loop
    To execute a block of code multiple times in programming you use for loop
    Here is the syntax:
    for index in range(n):
        statement
  • In this syntax, the index is called a loop counter. And n is the number of times that the loop will execute the statement.
  • The range() is a built-in function in Python that generates a sequence of numbers: 0,1, 2, …n-1. Example
  • for index in range(5):
        print(index)
    Output
    0
    1
    2
    3
    4
    Specifying the starting value for the sequence
    The range() function allows you to specify the starting number like this:
    range(start,stop)
    Example
    for index in range(1, 4):
        print(index)
    Output
    1
    2
    3
    4
    Specifying the increment for the sequence
    By default, the range(start, stop) increases the start value by one in each loop iteration.
    To specify increment sequence, use the following syntax:
    range(start, stop, step)
    The following example shows all odd numbers from 0 to 10:
    for index in range(0, 11, 2):
        print(index)
    output
    0
    2
    4
    6
    8
    10
    Using Python for loop to calculate the sum of a sequence
    The following example uses the for loop statement to calculate the sum of numbers from 1 to 50:
    sum = 0
    for num in range(51):
        sum += num
    print(sum)
    Output
    1275
    Python while Loop
    Python while statement allows you to execute a code block repeatedly as long as a condition is True
    Here is the syntax:
    while condition:  
       body
  • The condition is an expression that evaluates to a Boolean value, either True or False.
  • The while statement checks the condition at the beginning of each iteration and executes the body as long as the condition is True. An example that uses a while statement to show 5 numbers from 0 to 4 to the screen:
  • max = 5
    counter = 0
    
    while counter < max:
        print(counter)
        counter += 1
    Output
    0
    1
    2
    3
    4
    Python break Statement
  • Break statement in python is used to terminate a for loop and a while loop prematurely regardless of the conditional results. Example:
  • for index in range(0, 11):
        print(index)
        if index == 3:
            break
    Output
    0
    1
    2
    3
    FUNCTIONS IN PYTHON
    A function is a block of organized, reusable code that is used to perform a single, related action.
    Defining a Function
    Here are simple rules to define a function in Python.
  • Function blocks begin with the keyword def followed by the function name and parentheses ( ( ) ).
  • Any input parameters or arguments should be placed within these parentheses. You can also define parameters inside these parentheses.
  • The code block within every function starts with a colon (:) and is indented.
  • The statement return [expression] exits a function, optionally passing back an expression to the caller. A return statement with no arguments is the same as return None.
  • Syntax
    def functionname( parameters ):
       "function_docstring"
       function_suite
       return [expression]
    Calling a Function
    When you want to use a function, you just need to call it. A function call instructs Python to execute the code inside the function.
    Returning a value
    A function can perform a task like the greet() function. Or it can return a value. The value that a function returns is called a return value.
    To return a value from a function, you use the return statement inside the function body.
    Function Parameters and Arguments
    Parameter and argument can be used for the same thing but from functions perspectives;
  • A parameter is the variable listed inside the parentheses in the function definition.

  • An argument is the value that are sent to the function when it is called.
    From this example;

  • def addNumbers(a, b):
        sum =a + b
        print("The sum is " ,sum)
    addNumbers(2,5)
  • We have a function called addNumbers which contains two values inside the parenthesis, a, and b. These two values are called parameters.
  • We have passed two values along with the function 2 and 5. These values are called arguments.
  • Python functions with multiple parameters
    A function can have zero, one, or multiple parameters.
    The following example defines a function called sum() that calculates the sum of two numbers:
    def sum(a, b):
        return a + b
    total = sum(1,20)
    print(total)
    output
    21
    In the above example, the sum() function has two parameters a and b, and returns the sum of them. Use commas to separate multiple parameters.
    Types of Arguments in Python Function Definition
  • Default arguments.
  • Keyword arguments.
  • Positional arguments.
  • Arbitrary positional arguments.
  • Arbitrary keyword arguments
  • Python Recursive Functions
  • A recursive function is a function that calls itself and always has condition that stops calling itself.
  • Where do we use recursive functions in programming?
  • To divide a big problem that’s difficult to solve into smaller problems that are easier-to-solve.
  • In data structures and algorithms like trees, graphs, and binary searches.
  • Recursive Function Examples
    1.Count Down to Zero
  • countdown()takes a positive number as an argument and prints the numbers from the specified argument down to zero: def countdown(n):
  • def countdown(n):
        print(n)
        if n == 0:
            return  # Terminate recursion
        else:
            countdown(n - 1)  # Recursive call
    countdown(5)
    Output
    5
    4
    3
    2
    1
    0
    2.Calculating the sum of a sequence
    Recursive functions makes a code shorter and readable.
    Suppose we want to calculate the sum of sequence from 1 to n instead of using for loop with range() function we can use recursive function.
    def sum(n):
        if n > 0:
            return n + sum(n - 1)
        return 0
    result = sum(100)
    print(result)
    Python Lambda Expressions
    A lambda function is a small anonymous function that can take any number of arguments, but can only have one expression.
    Syntax
    lambda arguments : expression
    Examples:
    def times(n):
        return lambda x: x * n
    double = times(2)
    result = double(2)
    print(result)
    result = double(3)
    print(result)
    From the above example times() function returns a function which is a lambda expression.
    Python Decorators.
  • A decorator is a design pattern in Python that allows a user to add new functionality to an existing object without modifying its structure.
  • Decorators are usually called before the definition of a function you want to decorate.
  • Here is a simple syntax for a basic python decorator
    def my_decorator_func(func):
    def wrapper_func():
            # Do something before the function.
            func()
            # Do something after the function.
        return wrapper_func
    To use a decorator ,you attach it to a function like you see in the code below.
    @my_decorator_func
    def my_func():
    
        pass

    23

    This website collects cookies to deliver better user experience

    Introduction to Control Flow and Functions in Python.