참고) tinydb document: https://buildmedia.readthedocs.org/media/pdf/tinydb/latest/tinydb.pdf
# json 테스트 입력 파일 { "_default":{ "1": {"type": "tag", "name": "A0", "scopeKind": "struct1"}, "2": {"type": "tag", "name": "A0", "scopeKind": "struct2"}, "3": {"type": "tag", "name": "A0", "scopeKind": "struct3"}, "4": {"type": "tag", "name": "A1", "scopeKind": "struct4"}, "5": {"type": "tag", "name": "A1", "scopeKind": "struct5"} } }
Example #1
from tinydb import TinyDB, Query import pprint pp = pprint.PrettyPrinter(indent=4) db = TinyDB('./test_json_1.dic') filter = Query() # 항목 제거 db.remove(filter.scopeKind == 'struct4') # 항목 업데이트 db.update({'scopeKind': 'struct7'}, filter.name == 'A1') # 항목 삽입 db.insert({ 'name': 'user', 'permissions': [{'type': 'read'}]}) # 출력 확인 pp.pprint(db.all())
# json 테스트 출력 파일 [ {'name': 'A0', 'scopeKind': 'struct1', 'type': 'tag'}, {'name': 'A0', 'scopeKind': 'struct2', 'type': 'tag'}, {'name': 'A0', 'scopeKind': 'struct3', 'type': 'tag'}, {'name': 'A1', 'scopeKind': 'struct7', 'type': 'tag'}, {'name': 'user', 'permissions': [{'type': 'read'}]}]
Example #2
from tinydb import TinyDB, Query import pprint pp = pprint.PrettyPrinter(indent=4) db = TinyDB('./test_json_2.dic') filter = Query() # 항목 제거 db.remove(filter.word == "you've") # 항목 업데이트 db.update({'tag': 'NNP'}, filter.word == '예') # 항목 삽입 db.insert({'word': 'zzz', 'tag':'NNG'}) # 출력 확인 data = db.all() pp.pprint(data)
# json 테스트 입력 파일 { "_default":{ "1": {"word":"예","tag":"NNG"}, "2": {"word":"한","tag":"MM"}, "3": {"word":"다음","tag":"NNG"}, "4": {"word":"돈","tag":"NNG"}, "5": {"word":"사","tag":"NNG"}, "6": {"word":"아","tag":"NNG"}, "7": {"word":"you've","tag":"NNG"} } }