메뉴 여닫기
개인 메뉴 토글
로그인하지 않음
만약 지금 편집한다면 당신의 IP 주소가 공개될 수 있습니다.

Json 이용 키-값 추가 수정 삭제 방법

데브카페
Devcafe (토론 | 기여)님의 2025년 5월 20일 (화) 05:43 판 (새 문서: *JSON 파일을 이용해 키-값을 추가, 수정, 삭제 할 수 있는 Python 프로그램 --- {{메모 |제목=* JSON 파일을 불러오기 / 저장하기 * 키 추가 (`add`) * 키 수정 (`update`) * 키 삭제 (`delete`) * 키 목록 보기 (`show`) --- *예제 JSON 파일 (`config.json`) <source lang=python> { "username": "admin", "timeout": 30 } </source> }} --- ## 🐍 Python 프로그램 코드 ```python import json import os CONFIG_FILE = 'config.json' d...)
(차이) ← 이전 판 | 최신판 (차이) | 다음 판 → (차이)
  • JSON 파일을 이용해 키-값을 추가, 수정, 삭제 할 수 있는 Python 프로그램

---


assignment {{{1}}}

---

    1. 🐍 Python 프로그램 코드

```python import json import os

CONFIG_FILE = 'config.json'

def load_config():

   if not os.path.exists(CONFIG_FILE):
       return {}
   with open(CONFIG_FILE, 'r') as f:
       return json.load(f)

def save_config(config):

   with open(CONFIG_FILE, 'w') as f:
       json.dump(config, f, indent=4)
       print("✅ 설정 저장 완료.")

def show_config(config):

   if not config:
       print("📭 설정이 비어 있습니다.")
   else:
       print("📋 현재 설정:")
       for key, value in config.items():
           print(f"  {key}: {value}")

def add_or_update(config, key, value):

   if key in config:
       print(f"✏️ '{key}' 값을 '{value}'로 수정합니다.")
   else:
       print(f"➕ '{key}' 값을 '{value}'로 추가합니다.")
   config[key] = value
   save_config(config)

def delete_key(config, key):

   if key in config:
       del config[key]
       print(f"🗑️ '{key}' 삭제 완료.")
       save_config(config)
   else:
       print(f"❌ '{key}'는 설정에 존재하지 않습니다.")

def main():

   config = load_config()
   while True:
       print("\n메뉴: [add] 추가, [update] 수정, [delete] 삭제, [show] 보기, [exit] 종료")
       cmd = input("명령 입력: ").strip().lower()
       if cmd == 'add' or cmd == 'update':
           key = input("키 입력: ").strip()
           value = input("값 입력: ").strip()
           try:
               # 숫자형 입력도 자동 변환
               value = json.loads(value)
           except:
               pass
           add_or_update(config, key, value)
       elif cmd == 'delete':
           key = input("삭제할 키 입력: ").strip()
           delete_key(config, key)
       elif cmd == 'show':
           show_config(config)
       elif cmd == 'exit':
           print("👋 프로그램 종료.")
           break
       else:
           print("❓ 알 수 없는 명령입니다.")

if __name__ == '__main__':

   main()

```

---

    1. 💡 사용 예시

``` 명령 입력: add 키 입력: language 값 입력: python ➕ 'language' 값을 'python'로 추가합니다. ✅ 설정 저장 완료.

명령 입력: update 키 입력: timeout 값 입력: 60 ✏️ 'timeout' 값을 '60'로 수정합니다. ✅ 설정 저장 완료.

명령 입력: delete 삭제할 키 입력: username 🗑️ 'username' 삭제 완료. ```

---

필요하다면 이 코드를 GUI 또는 웹버전으로 확장해드릴 수도 있어요!

Comments