Skip to content

nikhilkumarsingh/hackerrank-sdk

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PyPI license

hackerrank-sdk

An Unofficial Python Client that supports interaction with HackerRank API.

This SDK provides integration with HackerRank API for compiling and running code in several languages. It can be accessed via a simple API key based authorization process.Get your api-key from here.

The code is Python 2, but Python 3 compatible.

Installation

Fast install:

pip install hackerrank-sdk

For a manual install get this package:

wget https://github.com/nikhilkumarsingh/hackerrank-sdk/archive/master.zip
unzip master.zip
rm master.zip
cd hackerrank-sdk-master

Install the package:

python setup.py install    

Examples

from hackerrank.HackerRankAPI import HackerRankAPI

API_KEY = ''  #your API-KEY here

compiler = HackerRankAPI(api_key = API_KEY)

print compiler.supportedlanguages()     #prints a list of supported languages


source = '''print "hello"'''    #give your source code here

'''
Alternatively,you can copy existing files to source this way:
with open(file_name,'r') as f:
     source = f.read()
'''     

result = compiler.run({'source': source,
                       'lang':'python'     
                       })
                       
                       
print(result.output,result.time,result.memory,result.message)    #get different variables associated with the result

Testcases are passed as a list of strings.

Here is another example which shows how to give testcases to the compiler:

from hackerrank.HackerRankAPI import HackerRankAPI

API_KEY = ''  # Your API-KEY here

compiler = HackerRankAPI(api_key = API_KEY)

source ='''
N, M = map(int,raw_input().split()) 
for i in xrange(1,N,2): 
    print (".|."*i).center(M,'-')
    
print "WELCOME".center(M,'-')
for i in xrange(N-2,-1,-2): 
    print (".|."*i).center(M,'-') 
'''

result = compiler.run({'source': source,
                       'lang':'python',
                       'testcases':["9 27"]
                       })
                       
print(result.output[0])

Here is the output:

output

Releases

No releases published

Packages

No packages published

Languages