The document discusses various topics related to lists in Python including:
- Lists can store multiple items of similar or different types in a single variable.
- List items can be accessed and modified using indexes.
- List slicing allows accessing elements within a specified index range.
- Built-in functions like len(), max(), min() etc. can be used to perform operations on lists.
- List methods allow adding, removing, and modifying elements in lists.
- Lists can be passed as arguments to functions and returned from functions.
The Key Difference between a List and a Tuple. The main difference between lists and a tuples is the fact that lists are mutable whereas tuples are immutable. A mutable data type means that a python object of this type can be modified. Let's create a list and assign it to a variable.
METHODS DESCRIPTION
copy() They copy() method returns a shallow copy of the dictionary.
clear() The clear() method removes all items from the dictionary.
pop() Removes and returns an element from a dictionary having the given key.
popitem() Removes the arbitrary key-value pair from the dictionary and returns it as tuple.
get() It is a conventional method to access a value for a key.
dictionary_name.values() returns a list of all the values available in a given dictionary.
str() Produces a printable string representation of a dictionary.
update() Adds dictionary dict2’s key-values pairs to dict
setdefault() Set dict[key]=default if key is not already in dict
keys() Returns list of dictionary dict’s keys
items() Returns a list of dict’s (key, value) tuple pairs
has_key() Returns true if key in dictionary dict, false otherwise
fromkeys() Create a new dictionary with keys from seq and values set to value.
type() Returns the type of the passed variable.
cmp() Compares elements of both dict.
METHODS DESCRIPTION
copy() They copy() method returns a shallow copy of the dictionary.
clear() The clear() method removes all items from the dictionary.
pop() Removes and returns an element from a dictionary having the given key.
popitem() Removes the arbitrary key-value pair from the dictionary and returns it as tuple.
get() It is a conventional method to access a value for a key.
dictionary_name.values() returns a list of all the values available in a given dictionary.
str() Produces a printable string representation of a dictionary.
update() Adds dictionary dict2’s key-values pairs to dict
setdefault() Set dict[key]=default if key is not already in dict
keys() Returns list of dictionary dict’s keys
items() Returns a list of dict’s (key, value) tuple pairs
has_key() Returns true if key in dictionary dict, false otherwise
fromkeys() Create a new dictionary with keys from seq and values set to value.
type() Returns the type of the passed variable.
cmp() Compares elements of both dict.
The Key Difference between a List and a Tuple. The main difference between lists and a tuples is the fact that lists are mutable whereas tuples are immutable. A mutable data type means that a python object of this type can be modified. Let's create a list and assign it to a variable.
METHODS DESCRIPTION
copy() They copy() method returns a shallow copy of the dictionary.
clear() The clear() method removes all items from the dictionary.
pop() Removes and returns an element from a dictionary having the given key.
popitem() Removes the arbitrary key-value pair from the dictionary and returns it as tuple.
get() It is a conventional method to access a value for a key.
dictionary_name.values() returns a list of all the values available in a given dictionary.
str() Produces a printable string representation of a dictionary.
update() Adds dictionary dict2’s key-values pairs to dict
setdefault() Set dict[key]=default if key is not already in dict
keys() Returns list of dictionary dict’s keys
items() Returns a list of dict’s (key, value) tuple pairs
has_key() Returns true if key in dictionary dict, false otherwise
fromkeys() Create a new dictionary with keys from seq and values set to value.
type() Returns the type of the passed variable.
cmp() Compares elements of both dict.
METHODS DESCRIPTION
copy() They copy() method returns a shallow copy of the dictionary.
clear() The clear() method removes all items from the dictionary.
pop() Removes and returns an element from a dictionary having the given key.
popitem() Removes the arbitrary key-value pair from the dictionary and returns it as tuple.
get() It is a conventional method to access a value for a key.
dictionary_name.values() returns a list of all the values available in a given dictionary.
str() Produces a printable string representation of a dictionary.
update() Adds dictionary dict2’s key-values pairs to dict
setdefault() Set dict[key]=default if key is not already in dict
keys() Returns list of dictionary dict’s keys
items() Returns a list of dict’s (key, value) tuple pairs
has_key() Returns true if key in dictionary dict, false otherwise
fromkeys() Create a new dictionary with keys from seq and values set to value.
type() Returns the type of the passed variable.
cmp() Compares elements of both dict.
A function is a set of statements that take inputs, do some specific computation and produces output. The idea is to put some commonly or repeatedly done task together and make a function, so that instead of writing the same code again and again for different inputs, we can call the function.
Python provides built-in functions like print(), etc. but we can also create your own functions. These functions are called user-defined functions.
A function is a set of statements that take inputs, do some specific computation and produces output. The idea is to put some commonly or repeatedly done task together and make a function, so that instead of writing the same code again and again for different inputs, we can call the function.
Python provides built-in functions like print(), etc. but we can also create your own functions. These functions are called user-defined functions.
Python elements lists you can study
This is help you to study the python programing.This is useful for your learning.
Happy bro.
With pdf.
I wrote anything.
Python elements lists you can study
This is help you to study the python programing.This is useful for your learning.
Python elements lists you can study
This is help you to study the python programing.This is useful for your learning.
Python elements lists you can study
This is help you to study the python programing.This is useful for your learning.
Python elements lists you can study
This is help you to study the python programing.This is useful for your learning.
Happy bro.
With pdf.
I wrote anything.
Python elements lists you can study
This is help you to study the python programing.This is useful for your learning.
Python elements lists you can study
This is help you to study the python programing.This is useful for your learning.
Python elements lists you can study
This is help you to study the python programing.This is useful for your learning.
Python elements lists you can study
This is help you to study the python programing.This is useful for your learning.
Happy bro.
With pdf.
I wrote anything.
Python elements lists you can study
This is help you to study the python programing.This is useful for your learning.
Python elements lists you can study
This is help you to study the python programing.This is useful for your learning.
Python elements lists you can study
This is help you to study the python programing.This is useful for your learning.
Python elements lists you can study
This is help you to study the python programing.This is useful for your learning.
Happy bro.
With pdf.
I wrote anything.
Python elements lists you can study
This is help you to study the python programing.This is useful for your learning.
Python elements lists you can study
This is help you to study the python programing.This is useful for your learning.
Python elements lists you can study
This is help you to study the python programing.This is useful for your learning.
Python elements lists you can study
This is help you to study the python programing.This is useful for your learning.
Happy bro.
With pdf.
I wrote anything.
Python elements lists you can study
This is help you to study the python programing.This is useful for your learning.
Python elements lists you can study
This is help you to study the python programing.This is useful for your learning.
Python elements lists you can study
This is help you to study the python programing.This is useful for your learning.
Python elements lists you can study
This is help you to study the python programing.This is useful for your learning.
Happy bro.
With pdf.
I wrote anything.
Python elements lists you can study
This is help you to study the python programing.This is useful for your learning.
Happy bro.
.
Problem 1 Show the comparison of runtime of linear search and binar.pdfebrahimbadushata00
Problem 1: Show the comparison of runtime of linear search and binary search using line chart
and table. Execute both algorithms 6 times on same data(use random integer generators), where
input data size are: 50000, 100000, 150000, 200000, 250000, and 300000. Please report worst
case runtimes so that the search item is not found in the input data.
Problem 2: Show the comparison of runtime of bubble sort and merge sort using line chart and
table. Execute both algorithms 6 times on same data(use random integer generators), where data
size are: 50000, 100000, 150000, 200000, 250000, and 300000. In each execution, sort the data
in ascending order.
Solution
Search & sort comparison for differnt sort & search algorithms.
Problem1: Java Code:
import java.util.Random;
public class SearchComparison {
public static void main(String[] args) {
//Compare linear & binary search for
//random data 6 times & print its execution time
System.out.println(\"--------------------------------\");
//50000
searchComparison(50000);
System.out.println(\"--------------------------------\");
//100000
searchComparison(100000);
System.out.println(\"--------------------------------\");
//150000
searchComparison(150000);
System.out.println(\"--------------------------------\");
//200000
searchComparison(200000);
System.out.println(\"--------------------------------\");
//250000
searchComparison(250000);
System.out.println(\"--------------------------------\");
//and 300000
searchComparison(300000);
System.out.println(\"--------------------------------\");
}
/**
* searchComparison
* @param size
*/
public static void searchComparison(int size){
System.out.println(\"Input size:\"+size);
//Generate random numbers list for given size
Random randomGenerator = new Random();
int list[]=new int[size];
for (int index = 0; index < size; ++index){
list[index]=randomGenerator.nextInt(size);
}
//For worst case key must be last number list[size-1]
long startTime=System.nanoTime();
linearSearch(list, list[size-1]);
long endTime=System.nanoTime();
long totalTime=(endTime-startTime); //time in nanoseconds
System.out.println(\"Linear search: input size=\"+size+\" - time=\"+totalTime);
startTime=System.nanoTime();
binarySearch(list, list[size-1]);
endTime=System.nanoTime();
totalTime=(endTime-startTime); //time in milliseconds
System.out.println(\"Binary search: input size=\"+size+\" - time=\"+totalTime);
}
/**
* Linearly search key in list[]. If key is present then return the index,
* otherwise return -1
*
* @param list
* @param key
* @return
*/
public static int linearSearch(int list[], int key) {
for (int index = 0; index < list.length; index++) {
if (list[index] == key)
return index;
}
return -1;
}
/**
* BinarySearch search key in list[]. If key is present then return the
* index, otherwise return -1
*
* @param list
* @param key
* @return
*/
public static int binarySearch(int list[], int key) {
int lo = 0;
int hi = list.length - 1;
while (lo <= hi) {
// Key is in list[lo..hi] or not present..
در این جلسه از کلاس به ساختار های داده
Set, Tuple, Dictionary
پرداختیم
PySec101 Fall 2013 J3E1 By Mohammad Reza Kamalifard
Talk About :
Sets,Tuples and Dictionary Data Types in Python
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...Dr.Costas Sachpazis
Terzaghi's soil bearing capacity theory, developed by Karl Terzaghi, is a fundamental principle in geotechnical engineering used to determine the bearing capacity of shallow foundations. This theory provides a method to calculate the ultimate bearing capacity of soil, which is the maximum load per unit area that the soil can support without undergoing shear failure. The Calculation HTML Code included.
About
Indigenized remote control interface card suitable for MAFI system CCR equipment. Compatible for IDM8000 CCR. Backplane mounted serial and TCP/Ethernet communication module for CCR remote access. IDM 8000 CCR remote control on serial and TCP protocol.
• Remote control: Parallel or serial interface.
• Compatible with MAFI CCR system.
• Compatible with IDM8000 CCR.
• Compatible with Backplane mount serial communication.
• Compatible with commercial and Defence aviation CCR system.
• Remote control system for accessing CCR and allied system over serial or TCP.
• Indigenized local Support/presence in India.
• Easy in configuration using DIP switches.
Technical Specifications
Indigenized remote control interface card suitable for MAFI system CCR equipment. Compatible for IDM8000 CCR. Backplane mounted serial and TCP/Ethernet communication module for CCR remote access. IDM 8000 CCR remote control on serial and TCP protocol.
Key Features
Indigenized remote control interface card suitable for MAFI system CCR equipment. Compatible for IDM8000 CCR. Backplane mounted serial and TCP/Ethernet communication module for CCR remote access. IDM 8000 CCR remote control on serial and TCP protocol.
• Remote control: Parallel or serial interface
• Compatible with MAFI CCR system
• Copatiable with IDM8000 CCR
• Compatible with Backplane mount serial communication.
• Compatible with commercial and Defence aviation CCR system.
• Remote control system for accessing CCR and allied system over serial or TCP.
• Indigenized local Support/presence in India.
Application
• Remote control: Parallel or serial interface.
• Compatible with MAFI CCR system.
• Compatible with IDM8000 CCR.
• Compatible with Backplane mount serial communication.
• Compatible with commercial and Defence aviation CCR system.
• Remote control system for accessing CCR and allied system over serial or TCP.
• Indigenized local Support/presence in India.
• Easy in configuration using DIP switches.
Welcome to WIPAC Monthly the magazine brought to you by the LinkedIn Group Water Industry Process Automation & Control.
In this month's edition, along with this month's industry news to celebrate the 13 years since the group was created we have articles including
A case study of the used of Advanced Process Control at the Wastewater Treatment works at Lleida in Spain
A look back on an article on smart wastewater networks in order to see how the industry has measured up in the interim around the adoption of Digital Transformation in the Water Industry.
Water scarcity is the lack of fresh water resources to meet the standard water demand. There are two type of water scarcity. One is physical. The other is economic water scarcity.
Saudi Arabia stands as a titan in the global energy landscape, renowned for its abundant oil and gas resources. It's the largest exporter of petroleum and holds some of the world's most significant reserves. Let's delve into the top 10 oil and gas projects shaping Saudi Arabia's energy future in 2024.
1. Lists
Creating Lists,
Accessing the Elements of a List,
Negative List Indices,
List Slicing [Start: end], List Slicing with Step Size,
Python Inbuilt Functions for Lists,
The List Operator, List Comprehensions,
List Methods, List and Strings, Splitting a String in List,
Passing List to a Function, Returning List from a Function.
Prepared by Dr. C. Sreedhar
2. # Lists are used to store multiple items in a single variable.
# List items can be of similiar items, different items,duplicates
list1 = ["cse", "cst", "csbs"]
list2 = [10, 50, 60, 80, 40]
list3 = [True, False, False]
list4 = ["cse4a","cse4b","cse4a","ece"]
print(list1)
print(list2)
print(list3)
print(list4[1])
['cse', 'cst', 'csbs']
[10, 50, 60, 80, 40]
[True, False, False]
cse4b
Prepared by Dr. C. Sreedhar
3. # Accept list items from user uslng list() constructor
l1=input(list())
print(l1)
# Access the elements using index [ ] operator
list4 = ["cse4a","cse4b","cse4a","ece"]
print(list4[2])
cse4b
# Slicing the list using
#Name_of_Variable_of_a_List[Start_Index: End_Index]
list4 = ["cse4a","cse4b","cse4a","ece"]
['cse4b',
'cse4a']
Prepared by Dr. C. Sreedhar
5. Lists in python
Lists are used to store multiple items in a single variable.
List items can be of any data type. Example:
list1 = ["cse", "cst", "csbs"]
list2 = [10, 50, 60, 80, 40]
list3 = [True, False, False]
List allows duplicates. Example:
cse4a = ["ram", "shyam", "ram", "sree", "dennis"]
print(cse4a)
List allows different data types. Example
Prepared by Dr. C. Sreedhar
6. Creating a list with w/o using constructor of the list class
Lists can be created in Python with constructor and w/o constructor
Using list Constructor
Create an empty list. L1 = list();
Create a list with any three integer elements, such as 10, 20 and 30.
L2 = list([10,20,30])
Create a list with three string elements, such as “Apple”, “Banana” and
“Grapes”. L3 = list([“Apple”,”Banana”,”Grapes”])
Create a list using inbuilt range() function. L4 = list(range(0,6))
Create a list with inbuilt characters X, Y and Z. L5=list(“xyz”)
Create a list with any three integer elements, such as 10, 20 and 30.
L1=[10,20,30]
Prepared by Dr. C. Sreedhar
7. ACCESSING THE ELEMENTS OF A LIST
index [] operator is used to access them. The syntax is:
Name_of_Variable_of_a_List[index]
L1=([10,20,30,40,50])
>>> List1=[10,20,30,40,50,60]
>>> List1[-3]
Output
40
Prepared by Dr. C. Sreedhar
8. LIST SLICING [START: END]
Name_of_Variable_of_a_List[Start_Index: End_Index]
>>> L1=([10,20,30,40,50])
>>> L1[1:4]
Output
20,30,40
>>> L1[2:5]
Output
Prepared by Dr. C. Sreedhar
9. LIST SLICING WITH STEP SIZE
List_Name[Start_Index:End_Index:Step_Size]
>>>MyList1=[“CSE”,1,”CST”,2,”ECE”,3,”EEE”]
>>>New_List1=MyList1[0:6:2]
print(New_List1)
Output
[‘CSE’, ‘CST’, ‘ECE’] >>> List1=[“Python”,450,”C”,300,”,C++”,670]
>>> List1[0:6:3]
Output
Prepared by Dr. C. Sreedhar
11. + Operator: The concatenation operator is used to join two lists.
a=[1,2,3] b=[4,5,6] a+b # [1, 2, 3, 4, 5, 6]
* Operator: The multiplication operator is used to replicate the
elements of a list.
List1=[10,20] List2=[20,30] List3=2*List1 #[10, 20, 10, 20]
in Operator: The in operator used to determine whether an element
is in a list. It returns True if the element is present and False if the
element is absent in the list.
List1= [10,20]
>>> 40 in List1
False
LIST OPERATOR Prepared by Dr. C. Sreedhar
12. LIST OPERATOR
isOperator
>>> A=’Microsoft’
>>> B=’Microsoft’
>>> A is B
True
>>> A=[‘A’,’B’,’C’]
>>> B=[‘A’,’B’,’C’]
>>> A is B #Check if two lists refer to the same Object
False
Prepared by Dr. C. Sreedhar
13. del Operator
Lst=[10,20,30,40,50,60,70]
>>> del Lst[2] #Removes 3rd element from the List
>>> Lst
[10, 20, 40, 50, 60, 70]
Lst=[10,20,30,40,50,60,70]
>>> del Lst[-1]
>>> Lst #Removes last element from the List
[10, 20, 30, 40, 50, 60]
>>> Lst=[10,20,30,40,50,60,70]
>>> del Lst[2:5] #Removes element from index position 2 to 4
>>> Lst
[10, 20, 60, 70]
>>> Lst=[10,20,30,40,50,60,70]
>>> del Lst[:] #Removes all the element from the List
>>> Lst
[]s
Prepared by Dr. C. Sreedhar
14. LIST COMPREHENSIONS
List comprehension is used to create a new list from existing sequences
Normal Code
List1= [10, 20, 30, 40, 50]
for i in range(0,len(List1)):
List1[i]=List1[i]+5 # [15, 25, 35, 45, 55]
Using List Comprehension
List1= [10,20,30,40,50]
List1= [x+10 for x in List1] # [20, 30, 40, 50, 60]
Prepared by Dr. C. Sreedhar
15. Unit 4
• Modules: Reusing Code with Modules and Packages,
Understanding Python Modules, Everyday Module Usage,
Advanced Module Behavior, Combining Modules into
Packages
• Exceptions: When Something Goes Wrong, Classes of
Exceptions, A Final Note on Pythonic Exception Handling.
• File Handling: Need of File Handling, Text Input and
Output, The seek() Function, Binary Files, Accessing and
Manipulating Files and Directories on a Disk.
Prepared by Dr. C. Sreedhar
17. Modules: Create and import
• 1. Open Python IDLE (Start --> Python IDLE)
• 2. File --> New File
• 3. ---- type the following code----
def greeting(name):
print("Hello, " + name)
• 4. Save with module1.py (in Desktop or any folder)
• 5. Pyhton IDLE ==> File --> New File
• 6. ------ type the following code ----
import module1
module1.greeting("CSE4A")
• 7. Save as runmodule.py (in Desktop or any folder)
• 8. In Python IDLE, click on Run --> Run Module
from <module_name> import *
from <module_name> import <name> as <alt_name>
Prepared by Dr. C. Sreedhar
19. In python, the inbuilt __import__() function helps
to import modules in runtime
Syntax:
__import__(name, globals, locals, fromlist, level)
Ex:
math_score = __import__('math', globals(), locals(), [], 0)
print(math_score.fabs(17.4))
Prepared by Dr. C. Sreedhar
20. Package
• A package is basically a directory with Python file
and file with the extension as _init_.py.
• Steps to create package:
– create a package (folder). The name of package, say, My _ First _ Package
– Create _ init _ .py file inside the created package My_First_Package.
– The directory should contain a file named _init_.py. This file can be empty or it
may contain valid Python code.
– create two different .py files, i.e. a.py and b.py with code
a.py
def call_A():
print(“This is first program”)
b.py
def call_B():
print(“This is second”)
>>> My_First_Package.a.call_A()
This is first program
>>> My_First_Package.b.call_B()
This is second
_init_.py
import My_First_Package.a
import My_First_Package.b
Prepared by Dr. C. Sreedhar
21. # GPREC/CSBS/__init__.py (Empty file)
# GPREC/CSBS/csbs4sem.py
print("In CSBS branch")
# GPREC/CSE/__init__.py
from . import cse4a
from . import cse4b
# GPREC/CSE/cse4a.py
print("In CSE 4A Class")
# GPREC/CSE/cse4b.py
print("In CSE 4B Class")
# GPREC/CSE/cse4c.py
print("In CSE 4C Class")
# world/__init__.py
from . import CSBS
from GPREC import CSE
import GPREC.CSE.cse4a
from GPREC.CSE import cse4b
Prepared by Dr. C. Sreedhar
22. Exceptions
• An exception is an event, which occurs during the execution of a program,
that disrupts the normal flow of the program's instructions.
• Exception: Base class for all exceptions
• ArithmeticError: Base class for all errors that occur for numeric calculation.
• OverflowError: Raised when a calculation exceeds maximum limit for a numeric type.
• FloatingPointError: Raised when a floating point calculation fails.
• ZeroDivisionError: Raised when division or modulo by zero takes place for numeric
• AttributeError: Raised in case of failure of attribute reference or assignment.
• EOFError: Raised when end of file is reached.
• ImportError: Raised when an import statement fails.
• IndexError: Raised when an index is not found in a sequence.
• EnvironmentError: Base class for all exceptions that occur outside Python environment.
• SyntaxError: Raised when there is an error in Python syntax.
• TypeError: Raised when an operation is attempted that is invalid for specified data type.
Prepared by Dr. C. Sreedhar
24. try:
num1,num2 = eval(input("Enter two numbers,separated by a comma:"))
result = num1 / num2
print("Result is", result)
except ZeroDivisionError:
print("Division by zero is error !!")
except SyntaxError:
print("Comma is missing. Enter nos separated by comma like this 1, 2")
except:
print("Wrong input")
else:
print("No exceptions")
finally:
print("This will execute no matter what“)
Prepared by Dr. C. Sreedhar
25. try:
a = [1, 2, 3]
print (a[3])
except LookupError:
print ("Index out of bound error.")
else:
print ("Success")
Prepared by Dr. C. Sreedhar
26. try:
age= int(input())
assert (age>0 and age<100)
# True: moves to the next line ie., print age; False: returns Assertion Error
except AssertionError:
print("Not valid age.")
except:
print("Invalid data entered")
else:
print("Age is:",age)
Prepared by Dr. C. Sreedhar
27. try:
age= int(input("Enter your age:"))
if age<0:
raise ValueError
except ValueError:
print("Age cannot be less than zero.")
else:
print("Age is:",age)
Prepared by Dr. C. Sreedhar
28. Format:
<file variable> = open(<file name>, "r")
Example:
filename = input("Enter name of input file: ")
inputFile = open(filename, "r")
Python File handling
Prepared by Dr. C. Sreedhar
29. Modes Description
r Opens a file for reading only, default mode.
rb Opens a file for reading only in binary format.
r+ Opens a file for both reading and writing
rb+ Opens a file for both reading and writing in binary format
w Opens a file for writing only. Overwrites the file if the file exists.
Wb Opens a file for writing only in binary format. Overwrites the file if the file exists
w+ Opens a file for both writing and reading, Overwrites file if file exists
Prepared by Dr. C. Sreedhar
30. Example:
file2 = open(“cse4a.txt", "wb")
print ("Name of the file: ", file2.name)
print ("Closed or not : ", file2.closed)
print ("Opening mode : ", file2.mode)
This would produce following result:
Name of the file: foo.txt
Closed or not : False
Opening mode : wb
Prepared by Dr. C. Sreedhar
31. Reading contents from file
inputFileName = input("Enter name of input file:")
inputFile = open(inputFileName, "r")
print("Opening file", inputFileName, " for reading.")
for line in inputFile:
sys.stdout.write(line)
inputFile.close()
print("Completed reading of file", inputFileName)
Prepared by Dr. C. Sreedhar
32. Alternate way to read contents from file
inputFileName = input ("Enter name of input file: ")
inputFile = open(inputFileName, "r")
print("Opening file", inputFileName, " for reading.")
line = inputFile.readline()
while (line != ""):
sys.stdout.write(line)
line = inputFile.readline()
inputFile.close()
print("Completed reading of file", inputFileName)
Prepared by Dr. C. Sreedhar
33. Writing contents
fo = open(“cse4a.txt", "wb")
fo.write("Welcome to CSE4A n");
fo.close()
Prepared by Dr. C. Sreedhar
34. Writing contents from one file into another
inputFileName = input("Enter file name to read grades from: ")
outputFileName = input("output filename to write GPA's to: ")
inputFile = open(inputFileName, "r")
outputFile = open(outputFileName, "w")
print("Opening file", inputFileName, " for reading.")
print("Opening file", outputFileName, " for writing.")
gpa = 0
Prepared by Dr. C. Sreedhar
35. seek()
• seek() function is used to change the position
of the File Handle to a given specific position.
Prepared by Dr. C. Sreedhar
36. Unit 5
Object-Oriented Programming:
• Class, Objects and Inheritance: Defining Classes, The
Selfparameter and Adding Methods to a Class,
• Display Class Attributes and Methods, Special Class Attributes,
Accessibility, The __init__ Method (Constructor),
• Passing an Object as Parameter to a Method, __del__()
(Destructor Method), Class Membership Tests,
• Method Overloading, Operator Overloading, Inheritance, The
Object Class.
Prepared by Dr. C. Sreedhar
37. Class and attributes
class Example :
x = 10
print(Example.x)
class Example:
x = 10
y = 20
print(Example.x)
print(Example.y)
Prepared by Dr. C. Sreedhar
38. Class and method
class Example:
x=10
y=20
def show(obj):
print("x=",obj.x)
print("y=",obj.y)
Example.show=classmethod(Example.show)
Example.show()
Prepared by Dr. C. Sreedhar
39. Constructor
class Student:
count = 0
def __init__(self):
Student.count = Student.count + 1
s1=Student()
s2=Student()
s3=Student()
print("Total students:",Student.count)
Prepared by Dr. C. Sreedhar
40. Class and Object
class Student:
def __init__(self, name, percentage):
self.name = name
self.percentage = percentage
def show(self):
print("Name:", self.name,“percentage:", self.percentage)
stud = Student("Sreedhar", 90)
stud.show()
Prepared by Dr. C. Sreedhar
41. Data encapsulation
class Employee:
def __init__(self, name, empid):
self.name = name
self.empid = empid
def show(self):
print("Name: ", self.name, "and ID:", self.empid)
E = Employee("Sreedhar", 6666)
print(E.name)
print(E.empid)
Prepared by Dr. C. Sreedhar
42. Class attributes
class MyClass(object):
var = 10
def set_val(self):
self.b = 100
ob1 = MyClass()
print(ob1.var) # This will fetch the class attribute 10.
ob1.set_val()
print(ob1.b) # This will fetch the class attribute 100
Prepared by Dr. C. Sreedhar
43. Class constructor: Example
class gprecclass:
def __init__ (self, section):
# self allows to attach parameter to the class
self.section =section
p = gprecclass("CSE4A")
print(p.section)
Prepared by Dr. C. Sreedhar
44. __init__ method: Constructor
class MyNum(object):
def __init__(self):
print("Calling __init__() constructor!n")
self.val = 0
def increment(self):
self.val = self.val + 1
print(self.val)
dd = MyNum()
dd.increment() # will print 1
dd.increment() # will print 2
Prepared by Dr. C. Sreedhar
46. Methods
class Circle:
pi = 3.14
def __init__(self, radius=1):
self.radius = radius
self.area = radius * radius * Circle.pi
def setRadius(self, new_radius):
self.radius = new_radius
self.area = new_radius * new_radius * self.pi
def getCircumference(self):
return self.radius * self.pi * 2
c = Circle()
print('Radius is: ',c.radius)
print('Area is: ',c.area)
print('Circumference is:
',c.getCircumference())
Prepared by Dr. C. Sreedhar
47. Class and methods
class Subject:
def __init__(self, name, id):
self.id = id
self.name = name
def display(self):
print("Subject ID:%d Name:%s”%(self.id, self.name))
ppy = Subject("Python Programming", 101)
ds = Subject("Data Structures", 102)
ppy.display()
ds.display()
Prepared by Dr. C. Sreedhar
48. Public access modifier
class Bank:
def __init__(self, name, pin):
# public data members
self.bankname = name
self.bankpin = pin
# public member function
def displaypin(self):
# accessing public data member
print("Pincode: ", self.bankpin)
obj = Bank("Union Bank", 518007)
print("Bank Name: ", obj.bankname)
obj.displaypin()
Prepared by Dr. C. Sreedhar
49. Private specifier
class Bank:
bankname="SBI"
__custname = None # privatemember
__custage = 20
__custbranch = None
def __init__(self, name, age, branch):
self.__custname = name
self.__custage = age
self.__custbranch = branch
# private member function
def __displayDetails(self):
print("Customer Name: ", self.__custname)
print("Customer Age: ", self.__custage)
print("Cust Branch: ", self.__custbranch)
# public member function
def accessPrivateFunction(self):
# accessing private member function
self.__displayDetails()
obj = Bank("Sree", 25, "SN Colony")
print(obj.bankname)
obj.accessPrivateFunction()
Prepared by Dr. C. Sreedhar
52. Multiple Inheritance
class A(object):
def method1(self):
print("doing this in A")
class B(A):
pass
class C(object):
def method1(self):
print("doing this in C")
class D(B, C):
pass
d_instance = D()
d_instance.method1()
print("nPrint the Method Resolution Order")
print(D.mro())
Prepared by Dr. C. Sreedhar
53. Method Overloading
class Person:
def M1(self, name=None):
if name is not None:
print('Name: ' + name)
else:
print('Default name ')
obj = Person()
obj.M1()
obj.M1('ABCDEF‘)
Prepared by Dr. C. Sreedhar
54. Method Overloading
class A:
def __init__(self, a):
self.a = a
# adding two objects
def __add__(self, o):
return self.a + o.a
ob1 = A(10)
ob2 = A(30)
ob3 = A("CSE4A")
ob4 = A(" ECE4A")
print(ob1 + ob2)
print(ob3 + ob4)
Prepared by Dr. C. Sreedhar