Ejemplo n.º 1
0
from enum import Enum
from open_hash import OpenHash

Menu=Enum('Menu',['추가','삭제','검색','덤프','종료'])

def select_menu() -> Menu:
    s=[f'({m.value}){m.name}'for m in Menu]
    while True:
        print(*s, sep=' ', end='')#s포인터 모두 출력
        n=int(input(': '))
        if 1<=n<=len(Menu):
            return Menu(n)
        else:
            print('다시 입력하세요')

hash=OpenHash(13)

while True:
    menu=select_menu()

    if menu==Menu.추가:
        key=int(input('추가할 키를 입력하세요: '))
        val=input('추가할 값을 입력하세요: ')
        if not hash.add(key,val):
            print('추가를 실패했습니다.')

    elif menu==Menu.삭제:
        key=int(input('삭제할 키를 입력하세요: '))
        if not hash.remove(key):
            print('삭제를 실패했습니다')
Ejemplo n.º 2
0
from enum import Enum
from open_hash import OpenHash

Menu = Enum('Menu', ['추가', '삭제', '검색', '덤프', '종료'])

def select_menu() -> Menu:
    # 메뉴 선택
    s = [f'({m.value}){m.name}' for m in Menu]
    while True:
        print(*s, sep = ' ', end='')
        n = int(input(': '))
        if 1 <= n <= len(Menu):
            return Menu(n)

hash = OpenHash(13) # 크기가 13인 해시 테이블 생성 

while True:
    menu = select_menu()

    if menu == Menu.추가:
        key = int(input('추가할 키 입력: '))
        val = input('추가할 값 입력: ')
        if not hash.add(key, val):
            print('추가를 실패')

    elif menu == Menu.삭제:
        key = int(input('삭제할 키 입력: '))
        if not hash.remove(key):
            print('삭제 실패')