SlideShare a Scribd company logo
1
CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM
2
CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM
Booleans & Comparisons
In Python, there are two Boolean values: True and False. They can be created
by comparing values, for instances by using the equal operator ==.
Another comparison operator, the not equal operator (!=), evaluates to True if
the items being compares aren’t equal, and False if they are.
Compares both Numbers as well as Strings.
Python also has operators that determine whether the given number (integer
or float) is greater than or smaller than another. These are < and >
respectively.
Also we have, >= Greater than or Equal & <= Smaller than or Equal. Except
they return True when comparing equal numbers.
>>> value = True
>>> value
True
>>> 5 == 15
False
>>> "Hello" == "Hello"
True
>>> "Hi" == "hi"
False
>>> 1 != 1
False
>>> "cat" != "mat"
True
3
CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM
Greater than and smaller than operators are also used to compare Strings
lexicographically.
>>> 9 > 4
True
>>> 8 < 8
False
>>> 4 <= 7
True
>>> 8 >= 8.0
True
4
CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM
if Statements
You can use if statements to run code if a certain condition holds.
If an expression evaluates to True, some statements are carried out.
Otherwise, they aren’t carried out.
Python uses indentation (white space at the beginning of a line) to delimit
blocks of code. Other languages, such as C, use curly braces to accomplish this,
but in Python indentation is mandatory; programs won’t work without it.
Notice the colon at the end of the expression in the if statement.
As the program contains multiple lines of code, you should create it as a
separate file and run it.
To perform more complex checks, if statements can be nested, one inside the
other.
Where inner if statement will be a part of outer if statement. This is used to
see whether multiple conditions are satisfied.
Output:
if expression:
statements
no = 24
if no > 18:
print("Greater than 18")
if no <= 50:
print("Between 18 & 50")
Greater than 18
Between 18 & 50
5
CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM
else Statements
An else statement follows an if statement & contains code that is called when
the if statement evaluates to False.
Output:
You can chain if and else statements to determine which option in a series of
possibilities is true.
X = 4
if x == 8:
print(“Yes”)
else:
print(“No”)
>>>
No
>>>
6
CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM
elif Statements
The elif (short of else if) statement is a shortcut to use when chaining if and
else statements. A series of if elif statements can have a final else block, which
is called if none of the if or elif expression is True.
Output:
num = 24
if num == 5:
print("Number is 5")
elif num == 11:
print("Number is 11")
elif num == 24:
print("Number is 24")
else:
print("Number isn't 5,11 or 24")
>>>
Number is 24
>>>
7
CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM
Boolean Logic
Python’s Boolean operators are and, or and not.
The and operator takes two arguments, and evaluates as True if, and only if,
both of its arguments are True. Otherwise, it evaluates to False.
Python uses words for its Boolean operators, whereas most other languages
use symbols such as &&, || an !.
Similarly, Boolean or operator takes two arguments. It evaluates to True if
either (or both) of its arguments are True, and False if both arguments are
False.
The result of not True is False, and not False goes to True.
>>> 1 == 1 and 2 == 2
True
>>> 1 == 1 and 2 == 3
False
>>> 1 != 1 and 2 == 2
False
>>> 4 < 2 and 2 > 6
False
>>> not 1 == 1
False
>>> not 7 > 9
True
8
CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM
Operator Precedence
Operator Precedence is a very important concept in programming. It is an
extension of the mathematical idea of order of operation.
(multiplication being performed before addition etc.) to include other
operators, such as those in Boolean logic.
The below code shows that == has a higher precedence than or.
>>> False == False or True
True
>>> False == (False or True)
False
>>> (False == False) or True
True
9
CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM
List of Python’s operators, from highest precedence to lowest.
** Exponentiation (raise to the power)
~ + - Complement, unary plus and minus
(method names for the last two are +@ and -@)
* / % // Multiply, divide, modulo and floor division
+ - Addition and Subtraction
>> << Right and Left bitwise shift
& Bitwise ‘AND’
^ | Bitwise exclusive ‘OR’ and regular ‘OR’
<= == => Comparison operators
< > == != Equality Operators
= %= /= //= -= += *= **= Assignment Operators
is is not Identity operators
in not in Membership Operators
not or and Logical operators
Operator | Description
10
CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM
while Loop
An if statement is run once if its condition evaluates to True, and never if it
evaluates to False.
A while statement is similar, except that it can be run more than once. The
statements inside it are repeatedly executed, as long as the condition holds.
Once it evaluates to False, the next section of code is executed.
Program:
Output:
The infinite loop is a special kind of while loop, it never stops running. Its
condition always remains True.
This program would indefinitely print “In the loop”.
i = 1
while i <= 5:
print(i)
i+=1
print("Finished !")
1
2
3
4
5
Finished !
while 1 == 1:
print(“In the loop”)
11
CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM
You can stop the program’s execution by using the Ctrl-C shortcut or by closing
the program.
 break
To end a while loop prematurely, the break statement can be used.
When encountered inside a loop, the break statement causes the loop to finish
immediately.
Program:
Output:
i = 0
while 1 == 1:
print(i)
i+=1
if i >= 5:
print("Breaking")
break
print("Finished")
0
1
2
3
4
Breaking
Finished
12
CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM
 Continue
Another statement that can be used within loops is continue.
Unlike break, continue jumps back to the top of the loop, rather than stopping
it.
Program:
Output:
i=0
while True:
i+=1
if i == 2:
print("Skipping 2")
continue
if i == 5:
print("Breaking")
break
print(i)
print("Finished")
1
Skipping 2
3
4
Breaking
Finished
13
CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM
Lists:
Lists are another type of object in Python. They are used to store an indexed
list of items.
A list is created using square brackets with commas separating items.
The certain item in the list can be accessed by using its index in square
brackets.
Program:
Output:
The first list item’s index is 0, rather than 1, as might be expected.
An empty list can be created with an empty pair of square brackets.
It is perfectly valid to write comma after last item of the list, and it is
encouraged in some cases.
words = ["I","Love","Python"]
print(words[0])
print(words[1])
print(words[2])
I
Love
Python
empty_list = []
14
CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM
Typically, a list will contain items of a single item type, but it is also possible to
include several different types.
Lists can also be nested within other lists.
Program:
Output:
Lists of lists are often used to represent 2D grids, as Python lacks the
multidimensional arrays that would be used for this in other languages.
number = 33
things = ["String",0,[11,22,number],3.14]
print(things[0])
print(things[1])
print(things[2])
print(things[2][2])
String
0
[11, 22, 33]
33
15
CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM
Indexing out of the bounds of possible list values causes an IndexError.
Some types, such as strings, can be indexed like lists. Indexing strings behaves
as though you are indexing a list containing each character in the string.
For other types, such as integers, indexing them isn’t possible, and it causes a
TypeError.
Program:
Output:
Output:
str = “Hello World!”
print(str[6])
>>>
W
>>>
16
CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM
List Operations
The items at a certain index in a list can be reassigned.
Example:
Output:
Lists can be added and multiplied in the same way as strings.
Program:
Output:
Lists and strings are similar in many ways – strings can be thought of as lists of
characters that can’t be changed.
>>>
[24,24,55,24,24]
>>>
nums = [24,24,24,24,24]
nums[2] = 55
print(nums)
nums = [1,2,3]
print(nums + [4,5,6])
print(nums *3)
[1, 2, 3, 4, 5, 6]
[1, 2, 3, 1, 2, 3, 1, 2, 3]
17
CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM
To check if an item is in a list, the in operator can be used. It returns True if the
item occurs one or more times in the list, and False if it doesn’t.
Program:
Output:
The in operator is also used to determine whether or not a string is a
substring of another string.
words = ["Donut","Eclair","Froyo","Gingerbread"]
print("Donut" in words)
print("Froyo" in words)
print("Lolipop" in words)
>>>
True
True
False
>>>
18
CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM
To check if an item is not in a list, you can use the not operator in one of the
following ways:
Program:
Output:
>>>
True
True
False
False
>>>
nums = [11,22,33]
print(not 44 in nums)
print(44 not in nums)
print(not 22 in nums)
print(22 not in nums)
19
CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM
List Functions
Another way of altering lists is using the append method. This adds an item to
the end of an existing list.
Program:
Output:
The dot before append is there because it is a method of the list class.
To get the number of items in a list, you can use the len function.
Program:
Output:
Unlike append, len is a normal function, rather than a method. This means it
is written before the list it is being called on, without a dot.
nums = [1,2,3]
nums.append(4)
print(nums)
>>>
[1, 2, 3, 4]
>>>
nums=[1,2,3,4,5]
print(len(nums))
>>>
5
>>>
20
CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM
The insert method is similar to append, except that it allows you to insert a
new item at any position in the list, as opposed to just at the end.
Program:
Output:
The index method finds the first occurrence of a list item and returns its index.
If the item isn’t in the list, it raises a ValueError.
Program:
Output:
words = ["Python","Fun"]
index = 1
words.insert(index,"is")
print(words)
2
0
ValueError: 'z' is not in list
>>>
>>>
['Python', 'is', 'Fun']
>>>
letters = ['a','e','i','o','u']
print(letters.index('i'))
print(letters.index('a'))
print(letters.index('z'))
21
CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM
There are a few more useful functions and methods for lists.
max(list): Returns the list item with the maximum value.
min(list): Returns the list item with the minimum value.
list.count(obj): Returns a count of how many times an item occurs in a list.
list.remove(obj): Removes an object from a list.
List.reverse(): Reverse objects in a list.
22
CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM
Range
The range function creates a sequential list of numbers.
The code below generates a list containing all of the integers, up to 10.
Example:
Output:
The call to list is necessary because range by itself creates a range object, and
this must be converted to a list if you want to use it as one.
If range is called with one argument, it produces an object with values from 0
to that argument. If it is called with two arguments, it produces values from
the first to the second.
Program:
Output:
>>> numbers = list(range(10))
>>> print(numbers)
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>>
[3, 4, 5, 6, 7]
True
>>>
numbers = list(range(3,8))
print(numbers)
print(range(20) == range(0,20))
23
CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM
range can have a third argument, which determines the interval of the
sequence produced. This third argument must be an integer.
Example:
Output:
[5, 7, 9, 11, 13, 15, 17, 19]
>>> numbers = list(range(5,20,2))
>>> print(numbers)
24
CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM
Loops
Sometimes, you need to perform code on each item in a list. This is called
iteration, and it can be accomplished with a while loop and a counter variable.
Program:
Output:
The example above iterates through all items in the list, accesses them using
their indices, and prints them with exclamation marks.
words = ["Python","Programming","Is","Fun"]
counter = 0
max_index = len(words) - 1
while counter <= max_index:
word = words[counter]
print(word + "!")
counter = counter + 1
>>>
Python!
Programming!
Is!
Fun!
>>>
25
CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM
Iterating through a list using a while loop requires quite a lot of code, so
Python provides the for loop as a shortcut that accomplishes the same thing.
The same code from the previous example can be written with a for loop, as
follows:
Program:
Output:
The for loop in Python is like the foreach loop in other languages.
words = ["Python","Programming","Is","Fun"]
for word in words:
print(word + "!")
>>>
Python!
Programming!
Is!
Fun!
>>>
26
CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM
The for loop is commonly used to repeat some code a certain number of times.
This is done by combining for loops with range objects.
Program:
Output:
You don’t need to call list on the range object when it is used in a for loop,
because it isn’t being indexed, so a list isn’t required.
for i in range(5):
print("Python!")
>>>
Python!
Python!
Python!
Python!
Python!
>>>
27
CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM
You were reading:
1. Basic Concepts In Python
2.Control Structures In Python
 Booleans & Comparisons
 if Statements
 else Statements
 elif Statements
 Boolean Logic
 Operator Precedence
 while Loop
 Lists
 List Operations
 List Functions
 Range
 Loops
3.Functions & Modules In Python
4.Exceptions & Files In Python
5.More Types In Python
6.Functional Programming with Python
7.Object-Oriented Programming with Python
8.Regular Expressions In Python
9.Pythonicness & Packaging

More Related Content

PPTX
Python - Data Structures
PDF
What are Data structures in Python? | List, Dictionary, Tuple Explained | Edu...
PPTX
FLOW OF CONTROL-NESTED IFS IN PYTHON
PPT
Unit 1 python (2021 r)
PPTX
Values and Data types in python
PPTX
Parts of python programming language
PPTX
Programming
PDF
Introduction to Python
Python - Data Structures
What are Data structures in Python? | List, Dictionary, Tuple Explained | Edu...
FLOW OF CONTROL-NESTED IFS IN PYTHON
Unit 1 python (2021 r)
Values and Data types in python
Parts of python programming language
Programming
Introduction to Python

What's hot (20)

PPTX
Variables in python
PPTX
Python for loop
PPTX
Data types in C
PPTX
Python Functions
PPTX
Super keyword in java
PPT
Python Control structures
PPTX
PPTX
Data types
PDF
Datatypes in python
PPT
Strings
PPS
Wrapper class
PDF
Object oriented programming c++
PPTX
Regular expressions in Python
PPTX
Encapsulation C++
PDF
Java threads
PPTX
Procedural programming
PPTX
Tokens in C++
PPTX
Looping statement in python
PPTX
Getters_And_Setters.pptx
PPTX
python conditional statement.pptx
Variables in python
Python for loop
Data types in C
Python Functions
Super keyword in java
Python Control structures
Data types
Datatypes in python
Strings
Wrapper class
Object oriented programming c++
Regular expressions in Python
Encapsulation C++
Java threads
Procedural programming
Tokens in C++
Looping statement in python
Getters_And_Setters.pptx
python conditional statement.pptx
Ad

Similar to Control Structures in Python (20)

PDF
ProgPrinc_Lecture_3_Data_Structures_and_Iteration-2.pdf
PDF
GE3151 PSPP UNIT III QUESTION BANK.docx.pdf
ODP
Python Day1
PDF
Python Programming - III. Controlling the Flow
PPTX
“Python” or “CPython” is written in C/C+
PPT
python operators.ppt
PDF
Python Programming Module 3 (2).pdf
PPTX
Chapter - 3.pptx
PPTX
Modulebajajajjajaaja shejjsjs sisiisi 4.pptx
PDF
ProgFund_Lecture_3_Data_Structures_and_Iteration-1.pdf
PPTX
Learn more about the concepts of Data Types in Python
PDF
Python cheatsheat.pdf
PPT
PPT3-CONDITIONAL STATEMENT LOOPS DICTIONARY FUNCTIONS.ppt
PPTX
python presentation.pptx
PPTX
Python For Data Science.pptx
PPTX
Basic of Python- Hands on Session
PPTX
1664611760basics-of-python-for begainer1 (3).pptx
PPTX
1. control structures in the python.pptx
PPTX
Python introduction
ProgPrinc_Lecture_3_Data_Structures_and_Iteration-2.pdf
GE3151 PSPP UNIT III QUESTION BANK.docx.pdf
Python Day1
Python Programming - III. Controlling the Flow
“Python” or “CPython” is written in C/C+
python operators.ppt
Python Programming Module 3 (2).pdf
Chapter - 3.pptx
Modulebajajajjajaaja shejjsjs sisiisi 4.pptx
ProgFund_Lecture_3_Data_Structures_and_Iteration-1.pdf
Learn more about the concepts of Data Types in Python
Python cheatsheat.pdf
PPT3-CONDITIONAL STATEMENT LOOPS DICTIONARY FUNCTIONS.ppt
python presentation.pptx
Python For Data Science.pptx
Basic of Python- Hands on Session
1664611760basics-of-python-for begainer1 (3).pptx
1. control structures in the python.pptx
Python introduction
Ad

Recently uploaded (20)

PDF
Mark Klimek Lecture Notes_240423 revision books _173037.pdf
PPTX
IMMUNITY IMMUNITY refers to protection against infection, and the immune syst...
PDF
RMMM.pdf make it easy to upload and study
PDF
O5-L3 Freight Transport Ops (International) V1.pdf
PDF
Module 4: Burden of Disease Tutorial Slides S2 2025
PDF
Abdominal Access Techniques with Prof. Dr. R K Mishra
PDF
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
PPTX
human mycosis Human fungal infections are called human mycosis..pptx
PPTX
PPT- ENG7_QUARTER1_LESSON1_WEEK1. IMAGERY -DESCRIPTIONS pptx.pptx
PPTX
Renaissance Architecture: A Journey from Faith to Humanism
PDF
Saundersa Comprehensive Review for the NCLEX-RN Examination.pdf
PDF
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
PPTX
Cell Types and Its function , kingdom of life
PDF
Supply Chain Operations Speaking Notes -ICLT Program
PDF
Chapter 2 Heredity, Prenatal Development, and Birth.pdf
PDF
O7-L3 Supply Chain Operations - ICLT Program
PDF
Insiders guide to clinical Medicine.pdf
PPTX
Introduction_to_Human_Anatomy_and_Physiology_for_B.Pharm.pptx
PPTX
BOWEL ELIMINATION FACTORS AFFECTING AND TYPES
PDF
TR - Agricultural Crops Production NC III.pdf
Mark Klimek Lecture Notes_240423 revision books _173037.pdf
IMMUNITY IMMUNITY refers to protection against infection, and the immune syst...
RMMM.pdf make it easy to upload and study
O5-L3 Freight Transport Ops (International) V1.pdf
Module 4: Burden of Disease Tutorial Slides S2 2025
Abdominal Access Techniques with Prof. Dr. R K Mishra
The Lost Whites of Pakistan by Jahanzaib Mughal.pdf
human mycosis Human fungal infections are called human mycosis..pptx
PPT- ENG7_QUARTER1_LESSON1_WEEK1. IMAGERY -DESCRIPTIONS pptx.pptx
Renaissance Architecture: A Journey from Faith to Humanism
Saundersa Comprehensive Review for the NCLEX-RN Examination.pdf
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
Cell Types and Its function , kingdom of life
Supply Chain Operations Speaking Notes -ICLT Program
Chapter 2 Heredity, Prenatal Development, and Birth.pdf
O7-L3 Supply Chain Operations - ICLT Program
Insiders guide to clinical Medicine.pdf
Introduction_to_Human_Anatomy_and_Physiology_for_B.Pharm.pptx
BOWEL ELIMINATION FACTORS AFFECTING AND TYPES
TR - Agricultural Crops Production NC III.pdf

Control Structures in Python

  • 1. 1 CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM
  • 2. 2 CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM Booleans & Comparisons In Python, there are two Boolean values: True and False. They can be created by comparing values, for instances by using the equal operator ==. Another comparison operator, the not equal operator (!=), evaluates to True if the items being compares aren’t equal, and False if they are. Compares both Numbers as well as Strings. Python also has operators that determine whether the given number (integer or float) is greater than or smaller than another. These are < and > respectively. Also we have, >= Greater than or Equal & <= Smaller than or Equal. Except they return True when comparing equal numbers. >>> value = True >>> value True >>> 5 == 15 False >>> "Hello" == "Hello" True >>> "Hi" == "hi" False >>> 1 != 1 False >>> "cat" != "mat" True
  • 3. 3 CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM Greater than and smaller than operators are also used to compare Strings lexicographically. >>> 9 > 4 True >>> 8 < 8 False >>> 4 <= 7 True >>> 8 >= 8.0 True
  • 4. 4 CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM if Statements You can use if statements to run code if a certain condition holds. If an expression evaluates to True, some statements are carried out. Otherwise, they aren’t carried out. Python uses indentation (white space at the beginning of a line) to delimit blocks of code. Other languages, such as C, use curly braces to accomplish this, but in Python indentation is mandatory; programs won’t work without it. Notice the colon at the end of the expression in the if statement. As the program contains multiple lines of code, you should create it as a separate file and run it. To perform more complex checks, if statements can be nested, one inside the other. Where inner if statement will be a part of outer if statement. This is used to see whether multiple conditions are satisfied. Output: if expression: statements no = 24 if no > 18: print("Greater than 18") if no <= 50: print("Between 18 & 50") Greater than 18 Between 18 & 50
  • 5. 5 CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM else Statements An else statement follows an if statement & contains code that is called when the if statement evaluates to False. Output: You can chain if and else statements to determine which option in a series of possibilities is true. X = 4 if x == 8: print(“Yes”) else: print(“No”) >>> No >>>
  • 6. 6 CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM elif Statements The elif (short of else if) statement is a shortcut to use when chaining if and else statements. A series of if elif statements can have a final else block, which is called if none of the if or elif expression is True. Output: num = 24 if num == 5: print("Number is 5") elif num == 11: print("Number is 11") elif num == 24: print("Number is 24") else: print("Number isn't 5,11 or 24") >>> Number is 24 >>>
  • 7. 7 CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM Boolean Logic Python’s Boolean operators are and, or and not. The and operator takes two arguments, and evaluates as True if, and only if, both of its arguments are True. Otherwise, it evaluates to False. Python uses words for its Boolean operators, whereas most other languages use symbols such as &&, || an !. Similarly, Boolean or operator takes two arguments. It evaluates to True if either (or both) of its arguments are True, and False if both arguments are False. The result of not True is False, and not False goes to True. >>> 1 == 1 and 2 == 2 True >>> 1 == 1 and 2 == 3 False >>> 1 != 1 and 2 == 2 False >>> 4 < 2 and 2 > 6 False >>> not 1 == 1 False >>> not 7 > 9 True
  • 8. 8 CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM Operator Precedence Operator Precedence is a very important concept in programming. It is an extension of the mathematical idea of order of operation. (multiplication being performed before addition etc.) to include other operators, such as those in Boolean logic. The below code shows that == has a higher precedence than or. >>> False == False or True True >>> False == (False or True) False >>> (False == False) or True True
  • 9. 9 CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM List of Python’s operators, from highest precedence to lowest. ** Exponentiation (raise to the power) ~ + - Complement, unary plus and minus (method names for the last two are +@ and -@) * / % // Multiply, divide, modulo and floor division + - Addition and Subtraction >> << Right and Left bitwise shift & Bitwise ‘AND’ ^ | Bitwise exclusive ‘OR’ and regular ‘OR’ <= == => Comparison operators < > == != Equality Operators = %= /= //= -= += *= **= Assignment Operators is is not Identity operators in not in Membership Operators not or and Logical operators Operator | Description
  • 10. 10 CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM while Loop An if statement is run once if its condition evaluates to True, and never if it evaluates to False. A while statement is similar, except that it can be run more than once. The statements inside it are repeatedly executed, as long as the condition holds. Once it evaluates to False, the next section of code is executed. Program: Output: The infinite loop is a special kind of while loop, it never stops running. Its condition always remains True. This program would indefinitely print “In the loop”. i = 1 while i <= 5: print(i) i+=1 print("Finished !") 1 2 3 4 5 Finished ! while 1 == 1: print(“In the loop”)
  • 11. 11 CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM You can stop the program’s execution by using the Ctrl-C shortcut or by closing the program.  break To end a while loop prematurely, the break statement can be used. When encountered inside a loop, the break statement causes the loop to finish immediately. Program: Output: i = 0 while 1 == 1: print(i) i+=1 if i >= 5: print("Breaking") break print("Finished") 0 1 2 3 4 Breaking Finished
  • 12. 12 CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM  Continue Another statement that can be used within loops is continue. Unlike break, continue jumps back to the top of the loop, rather than stopping it. Program: Output: i=0 while True: i+=1 if i == 2: print("Skipping 2") continue if i == 5: print("Breaking") break print(i) print("Finished") 1 Skipping 2 3 4 Breaking Finished
  • 13. 13 CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM Lists: Lists are another type of object in Python. They are used to store an indexed list of items. A list is created using square brackets with commas separating items. The certain item in the list can be accessed by using its index in square brackets. Program: Output: The first list item’s index is 0, rather than 1, as might be expected. An empty list can be created with an empty pair of square brackets. It is perfectly valid to write comma after last item of the list, and it is encouraged in some cases. words = ["I","Love","Python"] print(words[0]) print(words[1]) print(words[2]) I Love Python empty_list = []
  • 14. 14 CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM Typically, a list will contain items of a single item type, but it is also possible to include several different types. Lists can also be nested within other lists. Program: Output: Lists of lists are often used to represent 2D grids, as Python lacks the multidimensional arrays that would be used for this in other languages. number = 33 things = ["String",0,[11,22,number],3.14] print(things[0]) print(things[1]) print(things[2]) print(things[2][2]) String 0 [11, 22, 33] 33
  • 15. 15 CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM Indexing out of the bounds of possible list values causes an IndexError. Some types, such as strings, can be indexed like lists. Indexing strings behaves as though you are indexing a list containing each character in the string. For other types, such as integers, indexing them isn’t possible, and it causes a TypeError. Program: Output: Output: str = “Hello World!” print(str[6]) >>> W >>>
  • 16. 16 CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM List Operations The items at a certain index in a list can be reassigned. Example: Output: Lists can be added and multiplied in the same way as strings. Program: Output: Lists and strings are similar in many ways – strings can be thought of as lists of characters that can’t be changed. >>> [24,24,55,24,24] >>> nums = [24,24,24,24,24] nums[2] = 55 print(nums) nums = [1,2,3] print(nums + [4,5,6]) print(nums *3) [1, 2, 3, 4, 5, 6] [1, 2, 3, 1, 2, 3, 1, 2, 3]
  • 17. 17 CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM To check if an item is in a list, the in operator can be used. It returns True if the item occurs one or more times in the list, and False if it doesn’t. Program: Output: The in operator is also used to determine whether or not a string is a substring of another string. words = ["Donut","Eclair","Froyo","Gingerbread"] print("Donut" in words) print("Froyo" in words) print("Lolipop" in words) >>> True True False >>>
  • 18. 18 CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM To check if an item is not in a list, you can use the not operator in one of the following ways: Program: Output: >>> True True False False >>> nums = [11,22,33] print(not 44 in nums) print(44 not in nums) print(not 22 in nums) print(22 not in nums)
  • 19. 19 CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM List Functions Another way of altering lists is using the append method. This adds an item to the end of an existing list. Program: Output: The dot before append is there because it is a method of the list class. To get the number of items in a list, you can use the len function. Program: Output: Unlike append, len is a normal function, rather than a method. This means it is written before the list it is being called on, without a dot. nums = [1,2,3] nums.append(4) print(nums) >>> [1, 2, 3, 4] >>> nums=[1,2,3,4,5] print(len(nums)) >>> 5 >>>
  • 20. 20 CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM The insert method is similar to append, except that it allows you to insert a new item at any position in the list, as opposed to just at the end. Program: Output: The index method finds the first occurrence of a list item and returns its index. If the item isn’t in the list, it raises a ValueError. Program: Output: words = ["Python","Fun"] index = 1 words.insert(index,"is") print(words) 2 0 ValueError: 'z' is not in list >>> >>> ['Python', 'is', 'Fun'] >>> letters = ['a','e','i','o','u'] print(letters.index('i')) print(letters.index('a')) print(letters.index('z'))
  • 21. 21 CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM There are a few more useful functions and methods for lists. max(list): Returns the list item with the maximum value. min(list): Returns the list item with the minimum value. list.count(obj): Returns a count of how many times an item occurs in a list. list.remove(obj): Removes an object from a list. List.reverse(): Reverse objects in a list.
  • 22. 22 CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM Range The range function creates a sequential list of numbers. The code below generates a list containing all of the integers, up to 10. Example: Output: The call to list is necessary because range by itself creates a range object, and this must be converted to a list if you want to use it as one. If range is called with one argument, it produces an object with values from 0 to that argument. If it is called with two arguments, it produces values from the first to the second. Program: Output: >>> numbers = list(range(10)) >>> print(numbers) [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] >>> [3, 4, 5, 6, 7] True >>> numbers = list(range(3,8)) print(numbers) print(range(20) == range(0,20))
  • 23. 23 CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM range can have a third argument, which determines the interval of the sequence produced. This third argument must be an integer. Example: Output: [5, 7, 9, 11, 13, 15, 17, 19] >>> numbers = list(range(5,20,2)) >>> print(numbers)
  • 24. 24 CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM Loops Sometimes, you need to perform code on each item in a list. This is called iteration, and it can be accomplished with a while loop and a counter variable. Program: Output: The example above iterates through all items in the list, accesses them using their indices, and prints them with exclamation marks. words = ["Python","Programming","Is","Fun"] counter = 0 max_index = len(words) - 1 while counter <= max_index: word = words[counter] print(word + "!") counter = counter + 1 >>> Python! Programming! Is! Fun! >>>
  • 25. 25 CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM Iterating through a list using a while loop requires quite a lot of code, so Python provides the for loop as a shortcut that accomplishes the same thing. The same code from the previous example can be written with a for loop, as follows: Program: Output: The for loop in Python is like the foreach loop in other languages. words = ["Python","Programming","Is","Fun"] for word in words: print(word + "!") >>> Python! Programming! Is! Fun! >>>
  • 26. 26 CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM The for loop is commonly used to repeat some code a certain number of times. This is done by combining for loops with range objects. Program: Output: You don’t need to call list on the range object when it is used in a for loop, because it isn’t being indexed, so a list isn’t required. for i in range(5): print("Python!") >>> Python! Python! Python! Python! Python! >>>
  • 27. 27 CONTROL STRUCTURES IN PYTHON SUMIT S. SATAM You were reading: 1. Basic Concepts In Python 2.Control Structures In Python  Booleans & Comparisons  if Statements  else Statements  elif Statements  Boolean Logic  Operator Precedence  while Loop  Lists  List Operations  List Functions  Range  Loops 3.Functions & Modules In Python 4.Exceptions & Files In Python 5.More Types In Python 6.Functional Programming with Python 7.Object-Oriented Programming with Python 8.Regular Expressions In Python 9.Pythonicness & Packaging