1 Review of Python Basics
1 Review of Python Basics
CHAPTER - 1
Python
• In last class we have learned about Python. In this class we will
learn Python with some new techniques.
• We know that Python is a powerful and high level language and it is
an interpreted language.
• Python gives us two modes of working-
– Interactive mode
– Script mode
ScriptMode
Interactiv
e Mode
Python
• It is possible to develop various Apps with Python like–
– GUI Apps
– Web Apps
– Games
– DBMS Apps
– Scripting etc.
Python - Limitations
There are few limitations in Python which can be neglected because of its
vast usage.
It is not a Fast
Language. Libraries are
very less.
It is week in Type
binding.
Token
• Token- is the smallest unit of any programming language.
Keywords
Keywords are those words which provides
a special meaning to interpreter.
These are reserved for specific functioning.
These can not be used as identifiers,
variable name or any other purpose.
Available keywords in Python are-
Boolean Literals
• It can contain either of only two values – True or False
A= True
B=False
Special Literals
• None, which means nothing (no value).
X = None
Operators
• An Operator is a symbol that trigger some action
when
applied to identifier (s)/ operand (s)
• Therefore, an operator requires operand (s) to
compute upon. example :
c=a+b
Here, a, b, c are operands and operators are = and + which
are performing differently.
Punctuators
• In Python, punctuators are used to construct the program
and to make balance between instructions and statements.
Punctuators have their own syntactic and semantic
significance.
• Python has following Punctuators -
‘, ”, #, \, (, ), [, ], {, }, @. ,, :, .. `, =
DATA TYPES
• Data can be of any type like- character, integer, real, string.
• Anything enclosed in “ “ is considered as string in Python.
• Any whole value is an integer value.
• Any value with fraction part is a real value.
• True or False value specifies boolean value.
• Python supports following core data types-
I. Numbers (int like10, 5) (float like 3.5, 302.24) (complex like 3+5j)
II. String (like “pankaj”, ‘pankaj’, ‘a’, “a” )
III. List like [3,4,5,”pankaj”] its elements are Mutable.
IV. Tuple like(3,4,5,”pankaj”) its elements are immutable.
V. Dictionary like {‘a’:1, ‘e’:2, ‘I’:3, ‘o’:4, ‘u’:5} where a,e,i,o,u
are keys
and 1,2,3,4,5 are their values.
CORE DATA TYPES
Graphical View
CORE DATA
TYPE
Floating
Integer Complex String Tuple List Dictionary
Point
Boolean
10
Variables and Values
An important fact to know is-
– In Python, values are actually objects.
– And their variable names are actually their reference names.
Suppose we assign 10 to a variable A.
A = 10
Here, value 10 is an object and A is its
reference name.
10
Referenc Object
e
variable
Variables and Values
If we assign 10 to a variable B,
B will refer to same object.
• Immutable (Non-Changeable)
– integers, floats, Booleans, strings and tuples.
Operators
• The symbols that shows a special behavior or
action when applied to operands are called
operators. For ex- + , - , > , < etc.
• Python supports following operators-
I. Arithmetic Operator
II. Relation Operator
III. Identity Operators
IV. Logical Operators
V. Bitwise Operators
VI. Membership Operators
Operator Associativity
• In Python, if an expression or statement consists
of multiple or more than one operator then
operator associativity will be followed from left-to-
right.
• In above given expression, first 7*8 will be calculated as 56, then 56 will
be divided by 5 and will result into 11.2, then 11.2 again divided by 2
and will result into 5.0.
*Only in case of **, associativity will be followed from right-to-left.
» Empty Statements
• pass
» Simple Statements (Single Statement)
• name=input (“Enter your Name “)
• print(name) etc.
» Compound Statements
<Compound Statement Header>:
<Indented Body containing multiple simple
statements/compound statements>
• Here, Header line starts with the keyword and ends at colon (:).
• The body consists of more than one simple Python statements
or compound statements.
Statement Flow Control
• In a program, statements executes in sequential
manner or in selective manner or in iterative
manner.
Sequential Selective Iterative
Python -----if Statements
• In Python, if statement is used to select statement
for processing. If execution of a statement is to be
done on the basis of a condition, if statement is to
be used. Its syntax is-
if <condition>:
statement(s)
like -
Python---if-else Statements
• If out of two statements, it is required to select one
statement for processing on the basis of a condition,
if-else statement is to be used. Its syntax is-
if <condition>:
statement(s) when condition is true
else:
statement(s) when condition is false
like -
Nested If -else
Loop/Repetitive Task/Iteration
These control structures are used for repeated
execution of statement(s) on the basis of a condition.
Loop has 3 main components-
1. Start (initialization of loop)
2. Step (moving forward in loop )
3. Stop (ending of loop)
Output Output
in and not in operator
• in operator-
3 in [1,2,3,4] will return True.
5 in [1,2,3,4] will return False.
– not in operator-
5 not in [1,2,3,4] will return True.
Jump Statements
continue Statement
OUTPUT
String Creation
• String can be created in following ways-
1. By assigning value directly to the variable
String Literal
2. By taking
Input
Output
String Operators
• There are 2 operators that can be used to work
upon strings + and *.
»+ (it is used to join two strings)
• Like - “tea” + “pot” will result into “teapot”
• Like- “1” + “2” will result into “12”
• Like – “123” + “abc” will result into “123abc”
word =
“RESPO
NSIBILIT
Y”
• Long lists-
even = [0, 2, 4, 6, 8, 10 ,12 ,14 ,16 ,18 ,20 ] This is a Tuple
• Nested list -
L = [ 3, 4, [ 5, 6 ], 7]
Another method
List Creation
-As we have seen in the example
That when we have supplied
values as numbers to a list even
then
They have automatically
converted to string
– If we want to pass
values to a list in numeric
form then we have to
eval ( ) function identifies type of the passed string and then return it.
write
following function -
eval(input())
Another example
L=eval(input(“Enter list to be added “))
String Values
Accessing a List
• First we will see the similarities between a List and a String.
• List is a sequence like a string.
• List also has index of each of its element.
• Like string, list also has 2 index, one for forward indexing (from
0, 1, 2, 3, ….to n-1) and one for backward indexing(from -n to
- 1).
• In a list, values can be accessed like string.
0 1 2 3 4 5 6 7 8 9 10 11 12 13
Forward index
List R E S P O N S I B I L I T Y
Backward -14 -13 -12 -11 -10 -9 -8 -7 -6 -5 -4 -3 -2 -1
index
Accessing a List
• len( ) function is used to get the length of a list.
Important 1:membership
operator (in, not in) works
in list similarly as they work
in other sequence.
• L[ i ] will return the values exists at i index.
• L [ i : j ] will return a new list with the values from i index to j index excluding
j index.
Important 2: + operator
adds a list at the end of
other list whereas *
operator repeats a list.
Difference between a List and a String
• Main difference between a List and a string is that string
is
immutable whereas list is mutable.
• Individual values in string can’t be change whereas it
is possible with list.
Value didn’t
change in string.
Error shown. Value got changed
in list specifying
list is mutable
40
Traversal of a list
• Traversal of a list means to access and process each
and every element of that list.
• Traversal of a list is very simple with for loop –
for <item> in
<list>:
List.extend(<list>) Append the list (passed in the form of argument) at the end of list
with which function is called.
List.pop(<index>) Delete and return the element of passed index. Index passing is
optional, if not passed, element from last will be deleted.
List.remove(<value>) It will delete the first occurrence of passed value but does not
return the deleted value.
List Functions and Methods
Function Details
List.clear ( ) It will delete all values of list and gives an empty list.
List.count (<item>) It will count and return number of occurrences of the passed element.
List.reverse ( ) It will reverse the list and it does not create a new list.
List.sort ( ) It will sort the list in ascending order. To sort the list in descending
order, we need to write----- list.sort(reverse =True).
Creation of Tuple
• In Python, “( )” parenthesis are used for tuple
( ) creation. empty tuple
( 1, 2, 3) integers tuple
( 1, 2.5, 3.7, 7) numbers tuple
(‘a’, ’b’, ’c’ ) characters tuple
( ‘a’, 1, ‘b’, 3.5, mixed values tuple
‘zero’) string tuple
(‘one’, ’two’,
’three’, ’four’)
*Tuple is an immutable sequence whose values can not be changed.
Creation of Tuple
Look at following examples of tuple creation carefully-
• Empty tuple:
• Long tuple:
• Nested tuple:
Creation of Tuple
tuple() function is used to create a tuple from other sequences.
See examples-
Tuple creation from string Tuple creation from list
• Membership operator:
• Working of membership operator “in” and “not in” is same as
in a list. (for details see the chapter- list manipulation).
• Concatenation and Replication operators:
• + operator adds second tuple at the end of first tuple. * operator repeats
elements of tuple.
Accessing a Tuple
• Accessing Individual elements-
• Traversal of a Tuple –
for <item> in <tuple>:
#to process every element.
OUTPUT
Tuple Operations
• Tuple joining
• Both the tuples should be there to add
with +.
• Tuple Replication-
Tuple Slicing
teachers={“Rajeev”:”Math”, “APA”:”Physics”,”APS”:”Chemistry:”SB”:”CS”}
<dictionary>[<key>] = <value>
By passing List
Nesting in
look at the following example carefully in which element of a dictionary is
a dictionary itself. Dictionary
Updation in a
following syntax isDictionary
used to update an element in Dictionary-
<dictionary>[<ExistingKey>]=<value>
WAP to create a dictionary containing names of employee as key and their salary as
value Output
.
Deletion of an element from a
Dictionary
following two syntaxes can be used to delete an element form a
Dictionary. For deletion, key should be there otherwise python
will give error.
1. del <dictionary>[<key>]- it only deletes the value and
does not return deleted value.
Fals
e
* in and not in does not apply
on values, they can only
work with keys.
Pretty Printing of a
To print a Dictionary
Dictionary in a beautify manner, we need to
import
json module. After that following syntax of dumps ( ) will be used.
json.dumps(<>,indent=<n>)
Program to create a dictionary by counting words in a line
Here a dictionary is
created of words
and their frequency.
Dictionary Function and
1. Method
len( ) Method : it tells the length of dictionary.
In the above given example, you can see that change is done in
the values of similar keys whereas dissimilar keys got joined with
their values.
THANK YOU
75