다른 명령
- JSON 파일을 이용해 키-값을 추가, 수정, 삭제 할 수 있는 Python 프로그램
---
assignment {{{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()
```
---
- 💡 사용 예시
``` 명령 입력: add 키 입력: language 값 입력: python ➕ 'language' 값을 'python'로 추가합니다. ✅ 설정 저장 완료.
명령 입력: update 키 입력: timeout 값 입력: 60 ✏️ 'timeout' 값을 '60'로 수정합니다. ✅ 설정 저장 완료.
명령 입력: delete 삭제할 키 입력: username 🗑️ 'username' 삭제 완료. ```
---
필요하다면 이 코드를 GUI 또는 웹버전으로 확장해드릴 수도 있어요!