[python] PyYAML을 이용하여 YAML 파일 내에 특정 항목 이동하기

YAML은 인간이 쉽게 읽고 쓸 수 있는 데이터 직렬화 형식입니다. PyYAML은 Python에서 YAML 파일을 파싱하고 생성하기 위한 모듈이며, YAML 파일을 쉽게 조작할 수 있는 기능을 제공합니다.

이 글에서는 PyYAML을 사용하여 YAML 파일 내에서 특정 항목을 이동하는 방법을 알아보겠습니다. 예를 들어, YAML 파일 내에 있는 key1이라는 키를 가진 항목을 key2가 있는 위치로 이동시켜보겠습니다.

먼저, pyyaml을 설치해야 합니다. 아래의 명령어를 사용하여 설치할 수 있습니다:

pip install pyyaml

다음은 Python 코드로 YAML 파일을 읽고 특정 항목을 이동시키는 예제입니다.

import yaml

def move_item(input_file, output_file, key_to_move, new_parent_key):
    with open(input_file, 'r') as file:
        data = yaml.safe_load(file)
    
    item_to_move = data[key_to_move]
    
    # 기존 위치에서 제거
    del data[key_to_move]
    
    # 새로운 위치에 추가
    parent = data
    for key in new_parent_key.split('.'):
        parent = parent[key]
    parent[key_to_move] = item_to_move
    
    with open(output_file, 'w') as file:
        yaml.dump(data, file)

# 예제 YAML 파일
input_file = 'sample.yaml'
output_file = 'output.yaml'
key_to_move = 'key1'
new_parent_key = 'nested.key2'

move_item(input_file, output_file, key_to_move, new_parent_key)

위의 코드를 실행하면 sample.yaml 파일에서 key1nested.key2 위치로 이동된 output.yaml 파일이 생성됩니다. 이렇게 YAML 파일 내의 특정 항목을 이동시키는 작업을 수행할 수 있습니다.

이 코드는 pyyaml 모듈을 통해 YAML 파일을 파싱하고 생성하는 방법과, Python의 딕셔너리를 이용하여 YAML 파일 내의 항목을 조작하는 방법을 보여줍니다.

더 자세한 내용은 PyYAML 공식 문서를 참조하십시오.