HackerRank Exceptions problem solution in python | python problem solution
Table of Contents
Exceptions
Errors detected during execution are called exceptions.
Examples:
ZeroDivisionError
This error is raised when the second argument of a division or modulo operation is zero.
>>> a = '1'
>>> b = '0'
>>> print int(a) / int(b)
>>> ZeroDivisionError: integer division or modulo by zero
ValueError
This error is raised when a built-in operation or function receives an argument that has the right type but an inappropriate value.
>>> a = '1'
>>> b = '#'
>>> print int(a) / int(b)
>>> ValueError: invalid literal for int() with base 10: '#'
To learn more about different built-in exceptions click here.
Handling Exceptions
The statements try and except can be used to handle selected exceptions. A try statement may have more than one except clause to specify handlers for different exceptions.
#Code
try:
print 1/0
except ZeroDivisionError as e:
print "Error Code:",e
Output
Error Code: integer division or modulo by zero
Task
You are given two values and .
Perform integer division and print .
Input Format
The first line contains , the number of test cases.
The next lines each contain the space separated values of and .
Constraints
Output Format
Print the value of .
In the case of ZeroDivisionError or ValueError, print the error code.
Sample Input
3
1 0
2 $
3 1
Sample Output
Error Code: integer division or modulo by zero
Error Code: invalid literal for int() with base 10: '$'
3
Problem solution in Python 2 programming.
for t in xrange(int(input())):
try:
a,b = map(int,raw_input().split())
print a/b
except ZeroDivisionError as e:
print "Error Code: %s" % e
except ValueError as e:
print "Error Code: %s" % e
Problem solution in Python 3 programming.
# Enter your code here. Read input from STDIN. Print output to STDOUT
for i in range(int(input())):
try:
a,b=map(int,input().split())
print(a//b)
except Exception as e:
print("Error Code:",e)Problem solution in pypy programming.
# Enter your code here. Read input from STDIN. Print output to STDOUT
#from __future__ import division
for i in xrange(input()):
try:
a,b = map(int, raw_input().split())
print a/b
except Exception as e:
if isinstance(e, ZeroDivisionError):
stringy = str(e).split()
stringy.insert(2, "or")
stringy.insert(3, "modulo")
print 'Error Code:'," ".join(map(str, stringy))
else:
print 'Error Code:',e
Problem solution in pypy3 programming.
# Enter your code here. Read input from STDIN. Print output to STDOUT
# Enter your code here. Read input from STDIN. Print output to STDOUT
from sys import stdin,stdout
n = stdin.readline()
for i in range(0,int(n)):
line = stdin.readline().strip('nr')
a,b = line.split(" ")
try:
print(str(int(a)//int(b)))
except ZeroDivisionError as e:
print("Error Code: {}".format(e))
except ValueError as e:
print("Error Code: {}".format(e))