0% found this document useful (0 votes)
81 views15 pages

GE3151_PYTHON_UNIT_5

GE3151_UNIT5

Uploaded by

Muppudathi R
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
81 views15 pages

GE3151_PYTHON_UNIT_5

GE3151_UNIT5

Uploaded by

Muppudathi R
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 15

UNIT V : FILES, MODULES AND PACKAGES

Files and exceptions: text files, reading and writing files, format operator; command line
arguments, errors and exceptions, handling exceptions, modules, packages; Illustrative
programs: word count, copy file, Voter’s age validation, Marks range validation (0-100).

FILES AND EXCEPTIONS


FILES
❖ File is a named location on disk to store related information. It is used to store data
permanently in a memory (e.g. hard disk).
❖ File Types: 1) Text file 2) binary file
Text File Binary file
Text file is a sequence of characters that A binary files store the data in the binary
can be sequentially processed by a format (i.e. 0 s and 1 s )
Computer in forward direction.
Each line is terminated with a special It contains any type of data ( PDF ,
character, called the EOL [End Of images , Word doc ,Spreadsheet, Zip
Line character] files,etc)

Operations on Files
In Python, a file operation takes place in the following order,
1. Open a file
2. Write a file
3. Read a file
4. Close a file
1. Open a file
Syntax: Example:
file_object=open(“ file_name.txt” , mode ) f=open( “sample.txt” , ‘w ‘)
2. Write a file
Syntax: Example:
file_object.write(string) f.write( ‘hello’ )
file_object.close()
3. Read a file
Syntax
file_object.read() f.read( )
4. Close a file
Syntax
file_object.close() f.close()
modes description
r read only mode
w write only
a appending mode
r+ read and write mode
w+ write and read mode
Differentiate write and append mode

write mode append mode


It is used to write a string into a file. It is used to append (add) a string into a file.
If file is not exist it creates a new file. If file is not exist it creates a new file.
If file is exist in the specified name, the It will add the string at the end of the old file.
existing content will be overwritten by the
given string.

File operations and methods:


S.No Syntax Example Description
1 f.write(string) f.write("hello") Writing a string into a file.
f.writelines (“1st line \n Writes a sequence of strings to
2 f.writelines(sequence) second line” ) the file.
f.read( ) #read entire To read the content of a file.
3 f.read(size) file f.read(4) #read the
first 4 chr
4 f.readline( ) f.readline( ) Reads one line at a time.
5 f.readlines( ) f.readlines( ) Reads the entire file and returns a
list of lines.
f.seek(offset,[whence]) Move the file pointer to the
f.seek(0) appropriate position. It sets the
[whence value is optional.] file pointer to the starting of the
file.
[whence =0 from f.seek(3,0) Move three characters from the
6 beginning] beginning.
[whence =1 from current Move three characters ahead from
position] f.seek(3,1) the current position.
[whence =2 from last f.seek(-1,2) Move to the first character from
position] end of the file
7 f.tell( ) f.tell( ) Get the current file pointer
position.
8 f.flush( ) f.flush( ) To flush the data before closing
any file.
9 f.close( ) f.close( ) Close an open file.
10 f.name( ) f.name( ) Return the name of the file.
11 f.mode( ) f.mode( ) Return the Mode of file.
12 os.rename(old import os Renames the file or directory.
name,new name ) os.rename( 1.txt , 2.txt )
13 os.remove(file name) import os Remove the file.
os.remove("1.txt")
5.1.2. FORMAT OPERATOR

The argument of write () has to be a string, so if we want to put other values in a


file, we have to convert them to strings.

Convert No into string: Output


x = 52 52
f.write(str(x))
Convert to strings using format operator, % Example:
print ( format string %(tuple of values)) >>>age=13
file.write( format string %(tuple of values) >>>print( “ age is %d “%age)
age is 13
Program to write even number in a file using Output
format operator
enter n:4
f=open("t.txt","w") enter number:3
n=eval(input("enter n:")) enter number:4
for i in range(n): enter number:6
a=int(input("enter number:")) enter number:8
if(a%2==0):
f.write(str(a)) result in file t.txt
f.close() 4
6
8

Format character Description


%c Character
%s String formatting
%d Decimal integer
%f Floating point real number

COMMAND LINE ARGUMENT


● The command line argument is used to pass input from the command line to your
program when they are started to execute.
● Handling command line arguments with Python need sys module.
● sys module provides information about constants, functions and methods of the
python interpreter.
o argv[ ] is used to access the command line argument. The argument list
starts from 0. In argv[ ], the first argument always the file name
o sys.argv[0] gives file name
o sys.argv[1] provides access to the first input

Example 1 Output
import sys python demo.py
print( “file name is %s” %(sys.argv[0])) the file name is demo.py
Eg 2 : addition of two num Output
import sys sam@sam~$ python sum.py 2 3
a= sys.argv[1] sum is 5
b= sys.argv[2]
sum=int(a)+int(b)
print("sum is",sum)
Eg 3 : Word occurrence count Output
using comment line arg:
from sys import argv C:\Python34>python word.py
a = argv[1].split() "python is awesome lets program in python"
dict = {}
for i in a: {'lets': 1, 'awesome': 1, 'in': 1, 'python': 2,
if i in dict: 'program': 1, 'is': 1}
dict[i]=dict[i]+1 7
else:
dict[i] = 1
print(dict)
print(len(a))

ERRORS AND EXCEPTION

ERRORS
Errors are the mistakes in the program also referred as bugs. They are almost
always the fault of the programmer. The process of finding and eliminating errors is called
debugging. Errors can be classified into three major groups:
1. Syntax errors
2. Runtime errors
3. Logical errors

1. Syntax errors
❖ Syntax errors are the errors which are displayed when the programmer do
mistakes when writing a program.
❖ When a program has syntax errors it will not get executed.
❖ Common Python syntax errors include:
● leaving out a keyword
● putting a keyword in the wrong place
● leaving out a symbol, such as a colon, comma or brackets
● misspelling a keyword
● incorrect indentation
● empty block
2. Runtime Errors
● If a program is syntactically correct that is, free of syntax errors it will be run by the Python
Interpreter
● However, the program may exit unexpectedly during execution if it encounters a
runtime error.
● When a program has runtime error, it will get executed but it will not
produce output.
● Common Python runtime errors include
● division by zero
● performing an operation on incompatible types
● using an identifier which has not been defined
● accessing a list element, dictionary value or object attribute which does
not exist
● trying to access a file which does not exist
3. Logical errors
● Logical errors occur due to mistake in program’s logic, these errors are difficult to
fix.
● Here program runs without any error but produces an incorrect result.
● Common Python logical errors include
a. using the wrong variable name
b. indenting a block to the wrong level
c. using integer division instead of floating-point division
d. getting operator precedence wrong
e. making a mistake in a Boolean expression
EXCEPTIONS
● An exception (runtime time error) is an error, that occurs during the execution of
a program that disrupts the normal flow of the program's instructions.
● When a Python script raises an exception, it must either handle the exception
immediately otherwise it terminates or quit.

S.No. Exception Name Description


1 FloatingPointError Raised when a floating-point calculation fails.
2 ZeroDivisionError Raised when division or modulo by zero takes place for
all numeric types.
3 ArithmeticError All errors that occur for numeric calculation

4 ImportError Raised when an import statement fails.


Raised when a calculation exceeds maximum limit
5 OverflowError for a numeric type

6 IndexError Raised when an index is not found in a sequence


7 KeyError Raised when the specified key is not found in the
dictionary.
8 NameError Raised when an identifier is not found in the local or
global namespace
Raised when an input/ output operation fails, such as the
9 IOError
print statement or the open() function when trying to
open a file that does not exist.
10 SyntaxError Raised when there is an error in Python syntax.
11 IndentationError Raised when indentation is not specified properly.
Raised when the interpreter finds an internal problem,
12 SystemError
but when this error is encountered the Python
interpreter does not exit.
Raised when Python interpreter is quit by using the
13 SystemExit
sys.exit() function. If not handled in the code, causes the
interpreter to exit.
14 TypeError Raised when an operation or function is attempted that
is invalid for the specified data type.
Raised when the built-in function for a data type has the
15 ValueError
valid type of arguments, but the arguments have invalid
values specified.
16 RuntimeError Raised when a generated error does not fall into any
category.

Handling Exception
❖ Exception handling is done by try and except block.
❖ Suspicious code that may raise an exception, this kind of code will be placed in
try block.
❖ A block of code which handles the problem is placed in except block.

● If an error is encountered, a try block code execution is stopped and control


transferred down to except block

Catching exceptions
1. try…except
2. try…except…inbuilt exception
3. try… except…else
4. try…except…else….finally
5. try…raise..except..
1. try ... except
❖ First try clause is executed. if no exception occurs, the except clause is skipped
and execution of the try statement is finished.
❖ If an exception occurs during execution of the try clause, the rest of the try
clause is skipped.

Syntax
try:
code that create exception
except:
exception handling statement

Example: Output
try: enter age:8
age=int(input("enter age:")) ur age is: 8
print("ur age is:",age) enter age:f
except: enter a valid age
print("enter a valid age")

2. try…except…inbuilt exception

❖ First try clause is executed. if no exception occurs, the except clause is


skipped and execution of the try statement is finished.
❖ if exception occurs and its type matches the exception named after the except
keyword, the except clause is executed and then execution continues after
the try statement

Syntax
try:
code that create exception
except inbuilt exception:
exception handling statement

Example: Output
try: enter age: d
age=int(input("enter age:")) enter a valid age
print("Your age is:",age)
except ValueError:
print("enter a valid age")

3. try ... except ... else clause

● Else part will be executed only if the try block does not raise an exception.
● Python will try to process all the statements inside try block.
● If error occurs, the flow of control will immediately pass to the except block and
remaining statement in try block will be skipped.
Syntax
try:
code that create exception
except:
exception handling statement
else:
statements

Example program Output


try: enter your age: six
age=int(input("enter your age:")) entered value is not a number
except ValueError: enter your age:6
print("entered value is not a number") your age is 6
else:
print("your age :” ,age)

4 try ... except…finally

A finally clause is always executed before leaving the try statement, whether
an exception has occurred or not.
Syntax
try:
code that create exception
except:
exception handling statement
else:
statements
finally:
statements

Example program Output


try: enter your age: six
age=int(input("enter your age:")) entered value is not a number
except ValueError: Thank you
print("entered value is not a number") enter your age:5
else: your age is 5
print("your age :”,age) Thank you
finally:
print("Thank you")

5 try…raise..except (Raising Exceptions)

In Python programming, exceptions are raised when corresponding errors occur at


run time, but we can forcefully raise it using the keyword raise.
Syntax
try:
code that create exception
raise exception
except
exception handling statement
else:
statements

Example: Output:
try: enter your age:-7
age=int(input("enter your age:")) age cannot be negative
if (age<0):
raise ValueError
except ValueError:
print("age cannot be negative")
else:
print("your age is: “,age)

MODULES
❖ A module is a file containing Python definitions, functions, statements and
instructions.
❖ Standard library of Python is extended as modules.
❖ To use modules in a program, programmer needs to import the module.
❖ Once we import a module, we can reference or use to any of its functions or
variables in our code.
❖ There is large number of standard modules also available in python.
❖ Standard modules can be imported the same way as we import our user-defined
modules. We use:
❖ 1. import keyword
❖ 2. from keyword
1. import keyword
 import keyword is used to get all functions from the module.
 Every module contains many function.
 To access one of the function, you have to specify the name of the module and the
 name of the function separated by dot. This format is called dot notation.

Syntax:
import module_name
module_name.function_name(variable)

Eg:
Importing builtin module
import math
x=math.sqrt(25)
print(x)
Importing user defined module:
import cal
x=cal.add(5,4)
print(x)

2. from keyword:
from keyword is used to get only one particular function from the module.

Syntax:
from module_name import function_name
Eg:
Importing builtin module
from math import sqrt
x=sqrt(25)
print(x)

Importing user defined module


from cal import add
x=add(5,4)
print(x)

math-mathematical module
Mathfunctions description
math.ceil(x) Return the ceiling of x, the smallest integer greater than or
equal to x
math.floor(x) Return the floor of x,the largest integer less than or equal
to x.
math.factorial(x) Return x factorial
math.sqrt(x) Return the square root of x

math.log(x) Return the natural logarithm of x

math.log10(x) Returns the base-10 logarithms


math.log2(x) Return the base-2 logarithm
math.sin(x) Returns sin of x radians
math.cos(x) Returns cosine of x radians

math.tan(x) Returns tangent of x radians

math.pi The mathematical constant π=3.141592

OS module
❖ The OS module in python provides functions for interacting with the operating
system
❖ To access the OS module have to import the OS module in our program
import os
Method Example Description
os.name os.name This function gives the name of the
Operating system.
os.getcwd() os.getcwd() returns the Current Working
'C:\\Python34' Directory(CWD) of the file used to
execute the code.
os.mkdir(folder) os.mkdir("python") Create a directory(folder) with the
given name.
os.rename(oldname, os.rename( python , pspp ) Rename the directory or folder
new name)
os.remove( folder ) os.remove( pspp ) Remove (delete) the directory or
folder.
os.getuid( ) os.getuid( ) Return the current process s user id

os.environ os.environ Get the users environment

sys module
❖ Sys module provides information about constants, functions and methods.
❖ It provides access to some variables used or maintained by the interpreter.
import sys
Method example description
sys.argv Provides The list of command line
sys.argv
arguments passed to a Python script
sys.argv[0] Provides to access the file name
sys.argv[1] Provides to access the first input
sys.path sys.path It provides the search path for modules
sys.path.append() sys.path.append() Provide the access to specific path to
our program
sys.platform sys.platform Provides information about the
'win32' operating system platform
sys.exit sys.exit Exit from python
<built-in function
exit>

Steps to create the own module


Here we are going to create calc module: our module contains four functions they
are add(),sub(),mul(),div()
Program for calculator module Output.py
Module name : calc.py
import calc
def add(a,b):
print(a+b) calc.add(2,3)
def sub(a,b):
print(a-b) Output
def mul(a,b):
print(a*b)
def div(a,b):
print(a/b)

PACKAGES
● A package is a collection of Python modules.
● Module is a single Python file containing function definitions; a package is a directory
(folder) of Python modules containing an additional init_.pyfile, to differentiate a
package from a directory.
● Packages can be nested to any depth, provided that the corresponding directories
contain their own init .py file.
● init .py file is a directory indicates to the python interpreter that the directory should
be treated like a python package. init .py is used to initialize the python package.

● A package is a hierarchical file directory structure that defines a single python


application environment that consists of modules, sub packages, sub-sub packages and
so on.
● _init_.py file is necessary since Python will know that this directory is a python package
directory other than ordinary directory
Steps to create a package
Step 1: Create the Package Directory: Create a directory (folder) and give it your package's
name. Here the package name is calculator.

Step 2: write Modules for calculator directory add save the modules in calculator directory.
Here four modules have created for calculator directory.
Step 2: Add the init .py File in the calculator directory. A directory must contain a file named _init_.py
in order for Python to consider it as apackage.

Step 4:To test your package in your program and add the path of your package in your program by
using sys.path.append().Here the path is C:\python34
1 a)Program to count the no. of words

str=input("give the string")


words = str.split()
count=0
for w in words:
count=count+1
print(count)

Input : Welcome to College . College is in chennai city

Output: 9

1 b) Program to count the no. of occurrences of word (frequency of word in a text)

str=input("give the string")


words = str.split()
count = dict()
for w in words:
if w in count:
count[w] += 1
else:
count[w] = 1

print(count)

Input : Welcome to College . College is in chennai city

Output: {'Welcome': 1, 'to': 1, 'College': 2, '.': 1, 'is': 1, 'in': 1, 'chennai': 1, 'city': 1}

2a Copy a file
f1=open("1.txt","r")
f2=open("2.txt","w")
for i in f1:
f2.write(i)
f1.close()
f2.close()
Output
no output. internally the content in f1 will be copied to f2

2b Copy and display contents

f1=open("1.txt","r")
f2=open("2.txt","w+")
for i in f1:
f2.write(i)
f2.seek(0)
print(f2.read())
f1.close()
f2.close()
Output
Hello welcome to python programming
(content in f1 and f2)

3. Voter’s age validation

age = int(input('Enter age of a user: '))


if age >= 18:
print('User is eligible for voting: ', age)
else:
print('User is not eligible for voting: ', age)

Output 1
Enter age of a user: 25
User is eligible for voting: 25

Output 2
Enter age of a user: 13
User is not eligible for voting: 13

4 Marks range validation (0-100).

mark=int(input('Enter the mark:'))


if mark<0 or mark>100:
print('The mark is out of range, try again')
else:
print('The mark is in the range')

Output:

Enter the mark: 98


The mark is in the range
Enter the mark: 198
The mark is out of range, try again

You might also like