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

What's hot (20)

PDF
Python exception handling
Mohammed Sikander
 
PPTX
Operators and expressions in C++
Neeru Mittal
 
PPTX
While , For , Do-While Loop
Abhishek Choksi
 
PPT
Control structure C++
Anil Kumar
 
PPT
Bitwise operators
Puneet Rajput
 
PPTX
Preprocessor directives in c language
tanmaymodi4
 
PPTX
Functions in c++
Rokonuzzaman Rony
 
PPTX
control statements in python.pptx
Anshu Varma
 
PPT
FUNCTIONS IN c++ PPT
03062679929
 
PPTX
Nested loops
Neeru Mittal
 
PPSX
python Function
Ronak Rathi
 
PPTX
Looping Statements and Control Statements in Python
PriyankaC44
 
PPTX
Loops in Python
Arockia Abins
 
PPTX
Conditional and control statement
narmadhakin
 
PPTX
Data types in c++
Venkata.Manish Reddy
 
PPTX
Python Exception Handling
Megha V
 
PPTX
Stacks and Queue - Data Structures
Dr. Jasmine Beulah Gnanadurai
 
PPTX
Inline function
Tech_MX
 
PDF
Strings in python
Prabhakaran V M
 
PPTX
Loops in c programming
CHANDAN KUMAR
 
Python exception handling
Mohammed Sikander
 
Operators and expressions in C++
Neeru Mittal
 
While , For , Do-While Loop
Abhishek Choksi
 
Control structure C++
Anil Kumar
 
Bitwise operators
Puneet Rajput
 
Preprocessor directives in c language
tanmaymodi4
 
Functions in c++
Rokonuzzaman Rony
 
control statements in python.pptx
Anshu Varma
 
FUNCTIONS IN c++ PPT
03062679929
 
Nested loops
Neeru Mittal
 
python Function
Ronak Rathi
 
Looping Statements and Control Statements in Python
PriyankaC44
 
Loops in Python
Arockia Abins
 
Conditional and control statement
narmadhakin
 
Data types in c++
Venkata.Manish Reddy
 
Python Exception Handling
Megha V
 
Stacks and Queue - Data Structures
Dr. Jasmine Beulah Gnanadurai
 
Inline function
Tech_MX
 
Strings in python
Prabhakaran V M
 
Loops in c programming
CHANDAN KUMAR
 

Similar to Control Structures in Python (20)

PDF
ProgPrinc_Lecture_3_Data_Structures_and_Iteration-2.pdf
lailoesakhan
 
PDF
GE3151 PSPP UNIT III QUESTION BANK.docx.pdf
Guru Nanak Technical Institutions
 
ODP
Python Day1
Mantavya Gajjar
 
PDF
Python Programming - III. Controlling the Flow
Ranel Padon
 
PPTX
“Python” or “CPython” is written in C/C+
Mukeshpanigrahy1
 
PPT
python operators.ppt
ErnieAcuna
 
PDF
Python Programming Module 3 (2).pdf
Thanmayee S
 
PPTX
Chapter - 3.pptx
MikialeTesfamariam
 
PPTX
Modulebajajajjajaaja shejjsjs sisiisi 4.pptx
NikhilKumar528311
 
PDF
ProgFund_Lecture_3_Data_Structures_and_Iteration-1.pdf
lailoesakhan
 
PPTX
Learn more about the concepts of Data Types in Python
PrathamKandari
 
PDF
Python cheatsheat.pdf
HimoZZZ
 
PPT
PPT3-CONDITIONAL STATEMENT LOOPS DICTIONARY FUNCTIONS.ppt
RahulKumar812056
 
PPTX
python presentation.pptx
NightTune44
 
PPTX
Python For Data Science.pptx
rohithprabhas1
 
PPTX
Basic of Python- Hands on Session
Dharmesh Tank
 
PPTX
1664611760basics-of-python-for begainer1 (3).pptx
krsonupandey92
 
PPTX
1. control structures in the python.pptx
DURAIMURUGANM2
 
PPTX
Python introduction
leela rani
 
ProgPrinc_Lecture_3_Data_Structures_and_Iteration-2.pdf
lailoesakhan
 
GE3151 PSPP UNIT III QUESTION BANK.docx.pdf
Guru Nanak Technical Institutions
 
Python Day1
Mantavya Gajjar
 
Python Programming - III. Controlling the Flow
Ranel Padon
 
“Python” or “CPython” is written in C/C+
Mukeshpanigrahy1
 
python operators.ppt
ErnieAcuna
 
Python Programming Module 3 (2).pdf
Thanmayee S
 
Chapter - 3.pptx
MikialeTesfamariam
 
Modulebajajajjajaaja shejjsjs sisiisi 4.pptx
NikhilKumar528311
 
ProgFund_Lecture_3_Data_Structures_and_Iteration-1.pdf
lailoesakhan
 
Learn more about the concepts of Data Types in Python
PrathamKandari
 
Python cheatsheat.pdf
HimoZZZ
 
PPT3-CONDITIONAL STATEMENT LOOPS DICTIONARY FUNCTIONS.ppt
RahulKumar812056
 
python presentation.pptx
NightTune44
 
Python For Data Science.pptx
rohithprabhas1
 
Basic of Python- Hands on Session
Dharmesh Tank
 
1664611760basics-of-python-for begainer1 (3).pptx
krsonupandey92
 
1. control structures in the python.pptx
DURAIMURUGANM2
 
Python introduction
leela rani
 
Ad

Recently uploaded (20)

PPTX
CATEGORIES OF NURSING PERSONNEL: HOSPITAL & COLLEGE
PRADEEP ABOTHU
 
PDF
STATEMENT-BY-THE-HON.-MINISTER-FOR-HEALTH-ON-THE-COVID-19-OUTBREAK-AT-UG_revi...
nservice241
 
PPTX
Cultivation practice of Litchi in Nepal.pptx
UmeshTimilsina1
 
PPTX
How to Create a Customer From Website in Odoo 18.pptx
Celine George
 
PPTX
How to Configure Re-Ordering From Portal in Odoo 18 Website
Celine George
 
PDF
The Constitution Review Committee (CRC) has released an updated schedule for ...
nservice241
 
PDF
Horarios de distribución de agua en julio
pegazohn1978
 
PPTX
DAY 1_QUARTER1 ENGLISH 5 WEEK- PRESENTATION.pptx
BanyMacalintal
 
PPTX
Post Dated Cheque(PDC) Management in Odoo 18
Celine George
 
PPTX
grade 5 lesson matatag ENGLISH 5_Q1_PPT_WEEK4.pptx
SireQuinn
 
PPTX
Universal immunization Programme (UIP).pptx
Vishal Chanalia
 
PPTX
How to Manage Allocation Report for Manufacturing Orders in Odoo 18
Celine George
 
PPTX
How to Send Email From Odoo 18 Website - Odoo Slides
Celine George
 
PDF
The History of Phone Numbers in Stoke Newington by Billy Thomas
History of Stoke Newington
 
PPTX
How to Set Up Tags in Odoo 18 - Odoo Slides
Celine George
 
PDF
Introduction presentation of the patentbutler tool
MIPLM
 
PDF
Android Programming - Basics of Mobile App, App tools and Android Basics
Kavitha P.V
 
PPTX
DIGITAL CITIZENSHIP TOPIC TLE 8 MATATAG CURRICULUM
ROBERTAUGUSTINEFRANC
 
PDF
Reconstruct, Restore, Reimagine: New Perspectives on Stoke Newington’s Histor...
History of Stoke Newington
 
PDF
QNL June Edition hosted by Pragya the official Quiz Club of the University of...
Pragya - UEM Kolkata Quiz Club
 
CATEGORIES OF NURSING PERSONNEL: HOSPITAL & COLLEGE
PRADEEP ABOTHU
 
STATEMENT-BY-THE-HON.-MINISTER-FOR-HEALTH-ON-THE-COVID-19-OUTBREAK-AT-UG_revi...
nservice241
 
Cultivation practice of Litchi in Nepal.pptx
UmeshTimilsina1
 
How to Create a Customer From Website in Odoo 18.pptx
Celine George
 
How to Configure Re-Ordering From Portal in Odoo 18 Website
Celine George
 
The Constitution Review Committee (CRC) has released an updated schedule for ...
nservice241
 
Horarios de distribución de agua en julio
pegazohn1978
 
DAY 1_QUARTER1 ENGLISH 5 WEEK- PRESENTATION.pptx
BanyMacalintal
 
Post Dated Cheque(PDC) Management in Odoo 18
Celine George
 
grade 5 lesson matatag ENGLISH 5_Q1_PPT_WEEK4.pptx
SireQuinn
 
Universal immunization Programme (UIP).pptx
Vishal Chanalia
 
How to Manage Allocation Report for Manufacturing Orders in Odoo 18
Celine George
 
How to Send Email From Odoo 18 Website - Odoo Slides
Celine George
 
The History of Phone Numbers in Stoke Newington by Billy Thomas
History of Stoke Newington
 
How to Set Up Tags in Odoo 18 - Odoo Slides
Celine George
 
Introduction presentation of the patentbutler tool
MIPLM
 
Android Programming - Basics of Mobile App, App tools and Android Basics
Kavitha P.V
 
DIGITAL CITIZENSHIP TOPIC TLE 8 MATATAG CURRICULUM
ROBERTAUGUSTINEFRANC
 
Reconstruct, Restore, Reimagine: New Perspectives on Stoke Newington’s Histor...
History of Stoke Newington
 
QNL June Edition hosted by Pragya the official Quiz Club of the University of...
Pragya - UEM Kolkata Quiz Club
 
Ad

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