Sponsor

HackerRank Exceptions problem solution in python | python problem solution



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('\n\r')
    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))

Post a Comment

0 Comments