[파이썬] 리스트 같은 원소값 가져오기

반응형
    반응형

    파이썬 리스트 같은 원소값 가져오기

    파이썬에서 두 개 이상의 리스트에서 공통된 원소값만 추출하는 방법입니다.

    별 게 아닌데 막상 하면 막막할만해서 정리겸 포스팅합니다.

    for문 이용

    가장 쉬운 방법은 for문을 이용하는 방법입니다. 직관적으로 코딩을 만들기 좋습니다.

    list1 = [1, 2, 3, 4, 5]
    
    list2 = [4, 5, 6, 7, 8]
    
    common_list = []
    
    #for문 이용
    
    for i in list1:
        for j in list2:
            if i == j:
                common_list.append(j)
    
    # in을 활용
    for i in list1:
        if i in list2:
            common_list.append(i)

    i를 고정하고 j와 맞춰보고 일치한다면 i를 common_list에 넣습니다.

    리스트 comprehension 이용

    위의 for문의 방식을 리스트 comprehension을 이용하면 좀 더 간편합니다.

    common_elements = [value for value in list1 if value in list2]

    set 이용

    파이썬에는 set이라는 데이터 타입이 있는데 수학의 집합 개념을 그대로 쓰고 있습니다. set,intersection을 이용해 중복된 값만 가져옵니다.

    set1 = set(list1)
    set2 = set(list2)
    common_list = list(set1.intersection(set2))

     

    함께보면 좋은글

    [Python] Comprehension

    리스트에서 특정 문자 있는 경우 제거하기

    [Python] 리스트 모든 원소 하나의 문자열로 변환하기

     

    댓글

    Designed by JB FACTORY

    ....