рдСрдиреНрдЯреЛрд▓реЙрдЬреА рдиреЗрдЯрд╡рд░реНрдХрд╡рд░ рдкрд╛рдпрдердирдордзреНрдпреЗ рд╕реНрдорд╛рд░реНрдЯ рдХрд░рд╛рд░ рдХрд╕рд╛ рд▓рд┐рд╣рд╛рдпрдЪрд╛. рднрд╛рдЧ реи: рд╕реНрдЯреЛрд░реЗрдЬ API

рдСрдиреНрдЯреЛрд▓реЙрдЬреА рдиреЗрдЯрд╡рд░реНрдХрд╡рд░ рдкрд╛рдпрдердирдордзреНрдпреЗ рд╕реНрдорд╛рд░реНрдЯ рдХрд░рд╛рд░ рдХрд╕рд╛ рд▓рд┐рд╣рд╛рдпрдЪрд╛. рднрд╛рдЧ реи: рд╕реНрдЯреЛрд░реЗрдЬ API

рдСрдиреНрдЯреЛрд▓реЙрдЬреА рдмреНрд▓реЙрдХрдЪреЗрди рдиреЗрдЯрд╡рд░реНрдХрд╡рд░ рдкрд╛рдпрдердирдордзреНрдпреЗ рд╕реНрдорд╛рд░реНрдЯ рдХреЙрдиреНрдЯреНрд░реЕрдХреНрдЯ рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рд╡рд░реАрд▓ рд╢реИрдХреНрд╖рдгрд┐рдХ рд▓реЗрдЦрд╛рдВрдЪреНрдпрд╛ рдорд╛рд▓рд┐рдХреЗрддреАрд▓ рд╣рд╛ рджреБрд╕рд░рд╛ рднрд╛рдЧ рдЖрд╣реЗ. рдорд╛рдЧреАрд▓ рд▓реЗрдЦрд╛рдд рдЖрдкрд▓реА рдУрд│рдЦ рдЭрд╛рд▓реА рдмреНрд▓реЙрдХрдЪреЗрди рдЖрдгрд┐ рдмреНрд▓реЙрдХ API рдСрдиреНрдЯреЛрд▓реЙрдЬреА рд╕реНрдорд╛рд░реНрдЯ рдХреЙрдиреНрдЯреНрд░реЕрдХреНрдЯ.

рдЖрдЬ рдЖрдкрдг рджреБрд╕рд░реЗ рдореЙрдбреНрдпреВрд▓ рдХрд╕реЗ рд╡рд╛рдкрд░рд╛рд╡реЗ рдпрд╛рд╡рд░ рдЪрд░реНрдЪрд╛ рдХрд░реВ. рд╕реНрдЯреЛрд░реЗрдЬ API. рд╕реНрдЯреЛрд░реЗрдЬ API рдордзреНрдпреЗ рдкрд╛рдЪ рд╕рдВрдмрдВрдзрд┐рдд API рдЖрд╣реЗрдд рдЬреЗ рдмреНрд▓реЙрдХрдЪреЗрдирд╡рд░реАрд▓ рд╕реНрдорд╛рд░реНрдЯ рдХреЙрдиреНрдЯреНрд░реЕрдХреНрдЯрдордзреНрдпреЗ рдЬреЛрдбрдгреЗ, рд╣рдЯрд╡рдгреЗ рдЖрдгрд┐ рдкрд░реНрд╕рд┐рд╕реНрдЯрдВрдЯ рд╕реНрдЯреЛрд░реЗрдЬрдордзреНрдпреЗ рдмрджрд▓ рдХрд░рдгреНрдпрд╛рд╕ рдЕрдиреБрдорддреА рджреЗрддрд╛рдд.

рдЦрд╛рд▓реА рдпрд╛ рдкрд╛рдЪ API рдЪреЗ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд╡рд░реНрдгрди рдЖрд╣реЗ:

рдСрдиреНрдЯреЛрд▓реЙрдЬреА рдиреЗрдЯрд╡рд░реНрдХрд╡рд░ рдкрд╛рдпрдердирдордзреНрдпреЗ рд╕реНрдорд╛рд░реНрдЯ рдХрд░рд╛рд░ рдХрд╕рд╛ рд▓рд┐рд╣рд╛рдпрдЪрд╛. рднрд╛рдЧ реи: рд╕реНрдЯреЛрд░реЗрдЬ API

рд╣реЗ рдкрд╛рдЪ API рдХрд╕реЗ рд╡рд╛рдкрд░рд╛рдпрдЪреЗ рддреЗ рдЬрд╡рд│реВрди рдкрд╛рд╣реВ.

0. рдЪрд▓рд╛ рдирд╡реАрди рдХрд░рд╛рд░ рддрдпрд╛рд░ рдХрд░реВрдпрд╛ рд╕реНрдорд╛рд░реНрдЯрдПрдХреНрд╕

1. рд╕реНрдЯреЛрд░реЗрдЬ API рдХрд╕реЗ рд╡рд╛рдкрд░рд╛рд╡реЗ

GetContext рдЖрдгрд┐ GetReadOnlyContext

GetContext ╨╕ GetReadOnlyContext рд╕рдзреНрдпрд╛рдЪрд╛ рд╕реНрдорд╛рд░реНрдЯ рдХрд░рд╛рд░ рдЬреНрдпрд╛ рд╕рдВрджрд░реНрднрд╛рдд рдЕрдВрдорд▓рд╛рдд рдЖрдгрд▓рд╛ рдЬрд╛рддреЛ рддреЛ рд╕рдВрджрд░реНрдн рдорд┐рд│рд╡рд╛. рд░рд┐рдЯрд░реНрди рд╡реНрд╣реЕрд▓реНрдпреВ рд╣реЗ рд╕рдзреНрдпрд╛рдЪреНрдпрд╛ рд╕реНрдорд╛рд░реНрдЯ рдХреЙрдиреНрдЯреНрд░реЕрдХреНрдЯ рд╣реЕрд╢рдЪреЗ рд╡реНрдпрд╕реНрдд рдЖрд╣реЗ. рдирд╛рд╡рд╛рдкреНрд░рдорд╛рдгреЗрдЪ, GetReadOnlyContext рдХреЗрд╡рд│-рд╡рд╛рдЪрдиреАрдп рд╕рдВрджрд░реНрдн рдШреЗрддреЗ. рдЦрд╛рд▓реАрд▓ рдЙрджрд╛рд╣рд░рдгрд╛рдордзреНрдпреЗ, рдкрд░рддрд╛рд╡рд╛ рдореВрд▓реНрдп рд╣реЗ рд╡рд░рдЪреНрдпрд╛ рдЙрдЬрд╡реНрдпрд╛ рдХреЛрдкрд░реНрдпрд╛рдд рдкреНрд░рджрд░реНрд╢рд┐рдд рдХреЗрд▓реЗрд▓реНрдпрд╛ рдХреЙрдиреНрдЯреНрд░реЕрдХреНрдЯ рд╣реЕрд╢рдЪреЗ рд╡реНрдпрд╕реНрдд рдЖрд╣реЗ.

рдСрдиреНрдЯреЛрд▓реЙрдЬреА рдиреЗрдЯрд╡рд░реНрдХрд╡рд░ рдкрд╛рдпрдердирдордзреНрдпреЗ рд╕реНрдорд╛рд░реНрдЯ рдХрд░рд╛рд░ рдХрд╕рд╛ рд▓рд┐рд╣рд╛рдпрдЪрд╛. рднрд╛рдЧ реи: рд╕реНрдЯреЛрд░реЗрдЬ API

рдареЗрд╡рд╛

рдХрд╛рд░реНрдп рдареЗрд╡рд╛ рдмреНрд▓реЙрдХрдЪреЗрдирд╡рд░ рдбрд┐рдХреНрд╢рдирд░реАрдЪреНрдпрд╛ рд╕реНрд╡рд░реВрдкрд╛рдд рдбреЗрдЯрд╛ рд╕рд╛рдард╡рдгреНрдпрд╛рд╕рд╛рдареА рдЬрдмрд╛рдмрджрд╛рд░ рдЖрд╣реЗ. рджрд╛рдЦрд╡рд┐рд▓реНрдпрд╛ рдкреНрд░рдорд╛рдгреЗ, рдареЗрд╡рд╛ рддреАрди рдкреЕрд░рд╛рдореАрдЯрд░реНрд╕ рдШреЗрддреЗ. GetContext рд╕рдзреНрдпрд╛ рдЪрд╛рд▓реВ рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рд╕реНрдорд╛рд░реНрдЯ рдХреЙрдиреНрдЯреНрд░реЕрдХреНрдЯрдЪрд╛ рд╕рдВрджрд░реНрдн рдШреЗрддреЗ, рдХреА рдбреЗрдЯрд╛ рд╕реЗрд╡реНрд╣ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЖрд╡рд╢реНрдпрдХ рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рдХреАрдЪреЗ рдореВрд▓реНрдп рдЖрд╣реЗ рдЖрдгрд┐ рдореВрд▓реНрдп рд╣реЗ рд╕реЗрд╡реНрд╣ рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рдбреЗрдЯрд╛рдЪреЗ рдореВрд▓реНрдп рдЖрд╣реЗ. рд▓рдХреНрд╖рд╛рдд рдареЗрд╡рд╛ рдХреА рдЬрд░ рдХрд┐рдЪреЗ рдореВрд▓реНрдп рдЖрдзреАрдкрд╛рд╕реВрдирдЪ рд╕реНрдЯреЛрдЕрд░рдордзреНрдпреЗ рдЕрд╕реЗрд▓, рддрд░ рдлрдВрдХреНрд╢рди рддреНрдпрд╛рдЪреЗ рд╕рдВрдмрдВрдзрд┐рдд рдореВрд▓реНрдп рдЕрджреНрдпрддрдирд┐рдд рдХрд░реЗрд▓.

рдСрдиреНрдЯреЛрд▓реЙрдЬреА рдиреЗрдЯрд╡рд░реНрдХрд╡рд░ рдкрд╛рдпрдердирдордзреНрдпреЗ рд╕реНрдорд╛рд░реНрдЯ рдХрд░рд╛рд░ рдХрд╕рд╛ рд▓рд┐рд╣рд╛рдпрдЪрд╛. рднрд╛рдЧ реи: рд╕реНрдЯреЛрд░реЗрдЬ APIhashrate-and-shares.ru/images/obzorontology/python/functionput.png

рдорд┐рд│рд╡рд╛

рдХрд╛рд░реНрдп рдорд┐рд│рд╡рд╛ рдХреА рдореВрд▓реНрдпрд╛рджреНрд╡рд╛рд░реЗ рд╡рд░реНрддрдорд╛рди рдмреНрд▓реЙрдХрдЪреЗрдирдордзреАрд▓ рдбреЗрдЯрд╛ рд╡рд╛рдЪрдгреНрдпрд╛рд╕рд╛рдареА рдЬрдмрд╛рдмрджрд╛рд░ рдЖрд╣реЗ. рдЦрд╛рд▓реАрд▓ рдЙрджрд╛рд╣рд░рдгрд╛рдордзреНрдпреЗ, рддреБрдореНрд╣реА рдлрдВрдХреНрд╢рди рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЙрдЬрд╡реАрдХрдбреАрд▓ рдкрд░реНрдпрд╛рдп рдкреЕрдиреЗрд▓рдордзреНрдпреЗ рдХреА рдореВрд▓реНрдп рднрд░реВ рд╢рдХрддрд╛ рдЖрдгрд┐ рдмреНрд▓реЙрдХрдЪреЗрдирдордзреАрд▓ рдХреА рдореВрд▓реНрдпрд╛рд╢реА рд╕рдВрдмрдВрдзрд┐рдд рдбреЗрдЯрд╛ рд╡рд╛рдЪреВ рд╢рдХрддрд╛.

рдСрдиреНрдЯреЛрд▓реЙрдЬреА рдиреЗрдЯрд╡рд░реНрдХрд╡рд░ рдкрд╛рдпрдердирдордзреНрдпреЗ рд╕реНрдорд╛рд░реНрдЯ рдХрд░рд╛рд░ рдХрд╕рд╛ рд▓рд┐рд╣рд╛рдпрдЪрд╛. рднрд╛рдЧ реи: рд╕реНрдЯреЛрд░реЗрдЬ API

рд╣рдЯрд╡рд╛

рдХрд╛рд░реНрдп рд╣рдЯрд╡рд╛ рдХреА рдореВрд▓реНрдпрд╛рджреНрд╡рд╛рд░реЗ рдмреНрд▓реЙрдХрдЪреЗрдирдордзреАрд▓ рдбреЗрдЯрд╛ рд╣рдЯрд╡рд┐рдгреНрдпрд╛рд╕рд╛рдареА рдЬрдмрд╛рдмрджрд╛рд░ рдЖрд╣реЗ. рдЦрд╛рд▓реАрд▓ рдЙрджрд╛рд╣рд░рдгрд╛рдордзреНрдпреЗ, рддреБрдореНрд╣реА рдЙрдЬрд╡реАрдХрдбреАрд▓ рдкрд░реНрдпрд╛рдп рдкреЕрдиреЗрд▓рдордзреАрд▓ рдлрдВрдХреНрд╢рдирд╕рд╛рдареА рдХреА рдореВрд▓реНрдп рднрд░реВ рд╢рдХрддрд╛ рдЖрдгрд┐ рдмреНрд▓реЙрдХрдЪреЗрдирдордзреАрд▓ рдХреА рдореВрд▓реНрдпрд╛рд╢реА рд╕рдВрдмрдВрдзрд┐рдд рдбреЗрдЯрд╛ рд╣рдЯрд╡реВ рд╢рдХрддрд╛.

рдСрдиреНрдЯреЛрд▓реЙрдЬреА рдиреЗрдЯрд╡рд░реНрдХрд╡рд░ рдкрд╛рдпрдердирдордзреНрдпреЗ рд╕реНрдорд╛рд░реНрдЯ рдХрд░рд╛рд░ рдХрд╕рд╛ рд▓рд┐рд╣рд╛рдпрдЪрд╛. рднрд╛рдЧ реи: рд╕реНрдЯреЛрд░реЗрдЬ API

2. рд╕реНрдЯреЛрд░реЗрдЬ API рдХреЛрдб рдЙрджрд╛рд╣рд░рдг

рдЦрд╛рд▓реАрд▓ рдХреЛрдб рдкрд╛рдЪ API рдЪреНрдпрд╛ рд╡рд╛рдкрд░рд╛рдЪреЗ рддрдкрд╢реАрд▓рд╡рд╛рд░ рдЙрджрд╛рд╣рд░рдг рджреЗрддреЛ: GetContext, Get, Put, Delete рдЖрдгрд┐ GetReadOnlyContext. рдордзреНрдпреЗ API рдбреЗрдЯрд╛ рдЪрд╛рд▓рд╡рдгреНрдпрд╛рдЪрд╛ рдкреНрд░рдпрддреНрди рдХрд░реВ рд╢рдХрддрд╛ рд╕реНрдорд╛рд░реНрдЯрдПрдХреНрд╕.

from ontology.interop.System.Storage import GetContext, Get, Put, Delete, GetReadOnlyContext
from ontology.interop.System.Runtime import Notify

def Main(operation,args):
    if operation == 'get_sc':
        return get_sc()
    if operation == 'get_read_only_sc':
        return get_read_only_sc()
    if operation == 'get_data':
        key=args[0]
        return get_data(key)
    if operation == 'save_data':
        key=args[0]
        value=args[1]
        return save_data(key, value)
    if operation == 'delete_data':
        key=args[0]
        return delete_data(key)
    return False

def get_sc():
    return GetContext()
    
def get_read_only_sc():
    return GetReadOnlyContext()

def get_data(key):
    sc=GetContext() 
    data=Get(sc,key)
    return data
    
def save_data(key, value):
    sc=GetContext() 
    Put(sc,key,value)
    
def delete_data(key):
    sc=GetContext() 
    Delete(sc,key)

рдирдВрддрд░рдЪрд╛ рд╢рдмреНрдж

рдмреНрд▓реЙрдХрдЪреЗрди рд╕реНрдЯреЛрд░реЗрдЬ рд╣рд╛ рд╕рдВрдкреВрд░реНрдг рдмреНрд▓реЙрдХрдЪреЗрди рд╕рд┐рд╕реНрдЯрдордЪрд╛ рдЧрд╛рднрд╛ рдЖрд╣реЗ. рдСрдиреНрдЯреЛрд▓реЙрдЬреА рд╕реНрдЯреЛрд░реЗрдЬ API рд╡рд╛рдкрд░рдгреНрдпрд╛рд╕ рд╕реЛрдкреЗ рдЖрдгрд┐ рд╡рд┐рдХрд╕рдХ-рдЕрдиреБрдХреВрд▓ рдЖрд╣реЗ.

рджреБрд╕рд░реАрдХрдбреЗ, рд╕реНрдЯреЛрд░реЗрдЬ рд╣реЗ рд╣реЕрдХрд░ рд╣рд▓реНрд▓реНрдпрд╛рдВрдЪреЗ рдХреЗрдВрджреНрд░рдмрд┐рдВрджреВ рдЖрд╣реЗ, рдЬрд╕реЗ рдХреА рдЖрдореНрд╣реА рдорд╛рдЧреАрд▓ рд▓реЗрдЦрд╛рдВрдкреИрдХреА рдПрдХрд╛ рд▓реЗрдЦрд╛рдд рдЙрд▓реНрд▓реЗрдЦ рдХреЗрд▓реЗрд▓рд╛ рд╕реБрд░рдХреНрд╖рд╛ рдзреЛрдХреНрдпрд╛рдд- рд╕реНрдЯреЛрд░реЗрдЬ рдЗрдВрдЬреЗрдХреНрд╢рди рд╣рд▓реНрд▓рд╛рд╕реНрдЯреЛрд░реЗрдЬрд╢реА рд╕рдВрдмрдВрдзрд┐рдд рдХреЛрдб рд▓рд┐рд╣рд┐рддрд╛рдирд╛ рд╡рд┐рдХрд╕рдХрд╛рдВрдирд╛ рд╕реБрд░рдХреНрд╖рд┐рддрддреЗрдХрдбреЗ рд╡рд┐рд╢реЗрд╖ рд▓рдХреНрд╖ рджреЗрдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ. рдЖрдкрдг рдЖрдордЪреНрдпрд╛рд╡рд░ рд╕рдВрдкреВрд░реНрдг рдорд╛рд░реНрдЧрджрд░реНрд╢рдХ рд╢реЛрдзреВ рд╢рдХрддрд╛ GitHub рдпреЗрдереЗ.

рдкреБрдвреАрд▓ рд▓реЗрдЦрд╛рдд рдЖрдкрдг рдХрд╕реЗ рд╡рд╛рдкрд░рд╛рд╡реЗ рдпрд╛рдмрджреНрджрд▓ рдЪрд░реНрдЪрд╛ рдХрд░реВ рд░рдирдЯрд╛рдЗрдо API.

рд▓реЗрдЦрд╛рдЪрд╛ рдЕрдиреБрд╡рд╛рдж рд╣реЕрд╢рд░реЗрдЯ рдЖрдгрд┐ рд╢реЗрдЕрд░реНрд╕рдЪреНрдпрд╛ рд╕рдВрдкрд╛рджрдХрд╛рдВрдиреА рд╡рд┐рд╢реЗрд╖рддрдГ рдСрдиреНрдЯреЛрд▓реЙрдЬреА рд░рд╢рд┐рдпрд╛рд╕рд╛рдареА рдХреЗрд▓рд╛ рдЖрд╣реЗ. рд░рдбрдгреЗ

рддреБрдореНрд╣реА рдбреЗрд╡реНрд╣рд▓рдкрд░ рдЖрд╣рд╛рдд рдХрд╛? рдпреЗрдереЗ рдЖрдордЪреНрдпрд╛ рдЯреЗрдХ рд╕рдореБрджрд╛рдпрд╛рдд рд╕рд╛рдореАрд▓ рд╡реНрд╣рд╛ рд╡рд┐рдЪрд┐рддреНрд░. рддрд╕реЗрдЪ, рдПрдХ рдХрдЯрд╛рдХреНрд╖ рд╡рд┐рдХрд╕рдХ рдХреЗрдВрджреНрд░ рдСрдиреНрдЯреЛрд▓реЙрдЬреА, рддреБрдореНрд╣рд╛рд▓рд╛ рддреЗрдереЗ рдЖрдгрдЦреА рд╕рд╛рдзрдиреЗ, рдХрд╛рдЧрджрдкрддреНрд░реЗ рдЖрдгрд┐ рдмрд░реЗрдЪ рдХрд╛рд╣реА рдорд┐рд│реВ рд╢рдХрддреЗ.

рд╡рд┐рдХрд╕рдХрд╛рдВрд╕рд╛рдареА рдХрд╛рд░реНрдпреЗ рдЙрдШрдбрд╛. рдХрд╛рд░реНрдп рдкреВрд░реНрдг рдХрд░рд╛ рдЖрдгрд┐ рдмрдХреНрд╖реАрд╕ рдорд┐рд│рд╡рд╛.

рдЕрд░реНрдЬ рдХрд░рд╛ рд╡рд┐рджреНрдпрд╛рд░реНрдереНрдпрд╛рдВрд╕рд╛рдареА рдСрдиреНрдЯреЛрд▓реЙрдЬреА рдЯреЕрд▓реЗрдВрдЯ рдкреНрд░реЛрдЧреНрд░рд╛рдорд╕рд╛рдареА

Ontology

рдСрдиреНрдЯреЛрд▓реЙрдЬреА рд╡реЗрдмрд╕рд╛рдЗрдЯ - GitHub - рд╡рд┐рдЪрд┐рддреНрд░ - рдЯреЗрд▓рд┐рдЧреНрд░рд╛рдо рдЗрдВрдЧреНрд░рдЬреА - Twitter - рдкрдВрдЪрдХрд░реНрдо

рд╕реНрддреНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛