python에서 list filter 하기

Python에서 'bin'으로 끝나는 항목 제외하여 리스트 필터링하기

Python을 사용하여 데이터 리스트에서 특정 조건을 만족하지 않는 항목들만 필터링하는 것은 일반적인 작업입니다. 이 예시에서는, products 리스트에서 img_src 속성이 'bin'으로 끝나는 항목들을 제외하는 방법을 다룹니다.

예시 코드

# 예시 products 리스트
products = [
    {'name': 'Product 1', 'img_src': 'image1.jpg'},
    {'name': 'Product 2', 'img_src': 'image2.bin'},
    {'name': 'Product 3', 'img_src': 'image3.png'},
    # ... 여기에 추가 상품들이 있을 수 있습니다.
]

# 'bin'으로 끝나지 않는 img_src를 가진 상품들만 필터링
filtered_products = [product for product in products if not product['img_src'].endswith('bin')]

# 필터링된 상품들 출력
for product in filtered_products:
    print(product)

위의 코드는 products 리스트 안에 있는 각 상품에 대해 img_src 속성이 'bin'으로 끝나지 않는 경우에만 해당 상품을 새로운 리스트 filtered_products에 포함합니다. 결과적으로, filtered_products 리스트에는 'bin'으로 끝나는 img_src를 가진 상품이 포함되지 않습니다.

필터링 과정 설명

  • 리스트 컴프리헨션 사용: 이 방법은 코드를 간결하고 이해하기 쉽게 만듭니다.
  • endswith 메서드 활용: 이 메서드는 주어진 문자열이 특정 문자 또는 문자열로 끝나는지 확인합니다.
  • 조건부 로직 적용: if not product['img_src'].endswith('bin') 조건은 'bin'으로 끝나지 않는 요소만 새 리스트에 포함시키는 데 사용됩니다.

이 예시는 데이터를 필터링하고 처리하는 데 있어 Python이 얼마나 강력하고 유연한지 보여줍니다. 위와 같은 접근 방법은 다양한 데이터 처리 상황에 적용될 수 있습니다.