본문 바로가기
Python

다중 리스트 원소 포함 여부 파악하기

by Queen2 2022. 9. 27.
728x90
반응형

 

오늘 코딩을 하다가 재밌는 의문점과 해결법을 찾아서 정리해두려 한다.

 

일반적으로 리스트에 특정 원소가 있는지 여부는 

value in List

이런식으로 쉽게 할 수 있지만

 

List[List]의 구조는 어떻게 해야 할까?

 

 


해결법1. Any 사용하기

x = [[0,0,0],[2,0,0]]
if any(2 in i for i in x):
    print(True)

 

첫번째는 any를 사용하는 방식이다.

any 안에는 List comprehension을 통해서 리스트 속의 리스트를 하나씩 꺼내주고, 하나라도 2가 있으면

True를 반환하도록 했다. 간단하지만 알아두면 유용하다.

 

 

 

해결법2. 원소의 개수 사용하기

x = [[0,0,0],[2,0,0]]
if len([i for i in x if x==2]) != 0:
	print(True)

 

이 방법은 List comprehension을 사용하지만, 조건식을 붙여서 찾는 value값을 포함한 원소만 추출해서

리스트 원소의 개수가 0보다 크면 True를 반환하도록 했다.

 

 

(더 좋은 방법을 찾으면 댓글 부탁드립니다)

728x90
반응형

댓글