[python] PyYAML을 사용하여 YAML 파일에서 특정 데이터를 필터링하기

이번 포스트에서는 파이썬에서 YAML 파일을 처리하는 데 사용되는 PyYAML 라이브러리를 소개하고, YAML 파일에서 특정 데이터를 필터링하는 방법을 알아보겠습니다.

PyYAML이란?

PyYAML은 파이썬에서 YAML 파일을 읽고 쓰기 위해 사용되는 라이브러리입니다. YAML은 데이터를 사람이 읽기 쉬운 형식으로 표현하기 위한 마크업 언어로, 많은 프로그래밍 언어에서 지원하고 있습니다.

설치하기

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

pip install pyyaml

YAML 파일 읽기

다음 예제는 YAML 파일을 읽고 데이터를 출력하는 간단한 예제입니다.

import yaml

# YAML 파일 경로
filepath = 'example.yaml'

# YAML 파일 읽기
with open(filepath, 'r') as file:
    data = yaml.safe_load(file)

# 데이터 출력
print(data)

특정 데이터 필터링하기

YAML 파일에서 특정 데이터를 필터링하려면, 읽은 데이터에서 필요한 부분을 선택하여 처리해야 합니다. 예를 들어, 아래의 YAML 파일에서 특정 이름을 가진 사용자 정보를 필터링해보도록 하겠습니다.

users:
  - name: John
    age: 25
  - name: Jane
    age: 30
  - name: Bob
    age: 40

다음은 특정 이름을 가진 사용자만 필터링하여 출력하는 예제입니다.

import yaml

# YAML 파일 경로
filepath = 'example.yaml'

# YAML 파일 읽기
with open(filepath, 'r') as file:
    data = yaml.safe_load(file)

# 특정 데이터 필터링
filtered_data = [user for user in data['users'] if user['name'] == 'John']

# 필터링된 데이터 출력
print(filtered_data)

위의 코드에서는 데이터를 읽은 후에 리스트 컴프리헨션을 사용하여 필요한 데이터를 필터링하였습니다. 필터링된 데이터는 filtered_data 변수에 저장되고, 이를 출력하면 특정 이름을 가진 사용자의 정보만 출력됩니다.

결론

이번 글에서는 PyYAML을 사용하여 YAML 파일에서 특정 데이터를 필터링하는 방법에 대해 알아보았습니다. PyYAML은 파이썬에서 YAML 파일을 처리하는 강력하고 유용한 라이브러리입니다. YAML 파일을 사용하여 데이터를 다루는 경우에는 PyYAML을 적극적으로 활용할 수 있습니다.

더 자세한 내용은 PyYAML 공식 문서를 참고하시기 바랍니다.