[python] PyYAML과 JSON 간의 변환 작업

PyYAML은 Python에서 YAML 형식의 데이터를 파싱하고 직렬화하기 위한 모듈입니다. 반면에 JSON은 JavaScript Object Notation의 약자로, 데이터를 경량화하고 구조화하는 데 사용되는 텍스트 기반 형식입니다. 때로는 YAML을 JSON으로 변환하거나, JSON을 YAML로 변환해야 하는 상황이 발생할 수 있습니다.

이번 포스트에서는 Python에서 PyYAML을 사용하여 YAML과 JSON을 서로 변환하는 방법에 대해 알아보겠습니다.

PyYAML 설치하기

먼저 PyYAML을 설치해야 합니다. pip을 사용하여 다음 명령어를 실행하여 PyYAML을 설치할 수 있습니다:

pip install pyyaml

YAML을 JSON으로 변환하기

Python에서 YAML을 JSON으로 변환하려면, pyyaml 모듈을 사용하고 YAML 파일을 읽은 다음 yaml.safe_load() 함수를 통해 YAML 데이터를 파싱해야 합니다. 그런 다음 json 모듈의 dumps() 함수를 사용하여 JSON으로 직렬화할 수 있습니다. 다음은 예제 코드입니다:

import yaml
import json

# YAML 파일의 경로
yaml_file = "/path/to/file.yaml"

# YAML 파일 읽기
with open(yaml_file, 'r') as f:
    yaml_data = yaml.safe_load(f)

# YAML을 JSON으로 변환
json_data = json.dumps(yaml_data)

# JSON 데이터 출력
print(json_data)

JSON을 YAML로 변환하기

반대로, Python에서 JSON을 YAML로 변환하려면, json 모듈을 사용하여 JSON 데이터를 읽은 다음 yaml.dump() 함수를 사용하여 YAML로 직렬화해야 합니다. 다음은 예제 코드입니다:

import json
import yaml

# JSON 데이터
json_data = '{"name": "John", "age": 30, "city": "New York"}'

# JSON 읽기
data = json.loads(json_data)

# JSON을 YAML로 변환
yaml_data = yaml.dump(data)

# YAML 데이터 출력
print(yaml_data)

결론

이번 포스트에서는 Python에서 PyYAML을 사용하여 YAML과 JSON 간의 변환 작업을 수행하는 방법을 살펴보았습니다. 이를 통해 YAML과 JSON 형식의 데이터를 상호 변환할 수 있으며, 이는 데이터 처리나 파일 형식 변환에 유용합니다.