In [ ]:
# exceptions
# errors
# costliest errors
In [1]:
# example1
num1 = int(raw_input("please enter a number1:"))
num2 = int(raw_input("please enter a number2:"))
result = num1/num2
print result
In [2]:
num1 = int(raw_input("please enter a number1:"))
num2 = int(raw_input("please enter a number2:"))
result = num1/num2
print result
In [3]:
num1 = int(raw_input("please enter a number1:"))
num2 = int(raw_input("please enter a number2:"))
result = num1/num2
print result
In [4]:
import exceptions as e
In [5]:
print dir(e)
In [6]:
# how to handle exceptions in python
# try..except..else..finally
# try: mandatory statements/computation
# except: how to take care of exceptions.
# else: if try is True,we have no exception, please go the else block.
# usecase 1:
try:
num1 = int(raw_input("please enter a number1:"))
num2 = int(raw_input("please enter a number2:"))
result = num1/num2
except:
print "please use numbers.Make sure your denominator is non-zero."
else:
print result
In [7]:
# usecase 2:
try:
num1 = int(raw_input("please enter a number1:"))
num2 = int(raw_input("please enter a number2:"))
result = num1/num2
except:
print "please use numbers.Make sure your denominator is non-zero."
else:
print result
In [8]:
# usecase 3:
try:
num1 = int(raw_input("please enter a number1:"))
num2 = int(raw_input("please enter a number2:"))
result = num1/num2
except:
print "please use numbers.Make sure your denominator is non-zero."
else:
print result
In [12]:
# defining your exceptions
try:
num1 = int(raw_input("please enter a number1:"))
num2 = int(raw_input("please enter a number2:"))
result = num1/num2
except (ValueError,ZeroDivisionError):
print "please use numbers.Make sure your denominator is non-zero."
else:
print result
In [14]:
# granular run on the exceptions
try:
num1 = int(raw_input("please enter a number1:"))
num2 = int(raw_input("please enter a number2:"))
result = num1/num2
except ValueError:
print "please use numbers."
except ZeroDivisionError:
print "Make sure your denominator is non-zero."
else:
print result
In [4]:
# finally:
# we haven't handled a exception in our code.
# case 1: i give all valid values -> try..else..finally.
# case 2: i give invalid values, but handled by exceptions -> try..except..finally.
# case 3: i give invalid values, not handled by exceptions -> try..finally..bombed out with exception.
# finally: to close all the resources
# file.close,db.close,socket.close
# any cleanup .
In [3]:
try:
num1 = int(raw_input("please enter a number1:"))
num2 = int(raw_input("please enter a number2:"))
result = num1/num2
except ValueError:
print "please use numbers."
else:
print result
finally:
print "All is well :)"
In [5]:
# raise
pint "hello world"
In [6]:
raise SyntaxError,"invalid syntax"
In [8]:
# we are not able to raise the santosh
# santosh is not part of exception class.
raise santosh
In [9]:
# customized exceptions
class santosh(Exception):
pass
In [10]:
raise santosh,"I am back!!"
In [ ]: