이 기사에서는 Python 목록에서 일부 선택된 요소를 가져오는 방법을 볼 것입니다. 그래서 우리는 어떤 조건을 디자인해야 하고 그 조건을 만족하는 요소들만 선택하고 그 개수를 출력해야 합니다.
위트와 합
이 접근 방식에서는 조건을 사용하여 요소를 선택하고 일부를 사용하여 개수를 얻습니다. 요소가 있는 경우 1이 사용되며 조건의 결과에 0이 사용됩니다.
예시
Alist = ['Mon', 'Wed', 'Mon', 'Tue', 'Thu'] # Given list print("Given list:\n", Alist) cnt = sum(1 for i in Alist if i in('Mon','Wed')) print("Number of times the condition is satisfied in the list:\n",cnt)
출력
위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -
Given list: ['Mon', 'Wed', 'Mon', 'Tue', 'Thu'] Number of times the condition is satisfied in the list: 3
지도 및 람다 사용
여기서도 조건에 사용되지만 람다 및 맵 기능도 사용합니다. 마지막으로 sum 함수를 적용하여 개수를 얻습니다.
예시
Alist = ['Mon', 'Wed', 'Mon', 'Tue', 'Thu'] # Given list print("Given list:\n", Alist) cnt=sum(map(lambda i: i in('Mon','Wed'), Alist)) print("Number of times the condition is satisfied in the list:\n",cnt)
출력
위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -
Given list: ['Mon', 'Wed', 'Mon', 'Tue', 'Thu'] Number of times the condition is satisfied in the list: 3
감소 사용
reduce 함수는 인수로 제공된 목록의 모든 요소에 특정 함수를 적용합니다. 최종적으로 조건과 일치하는 요소의 개수를 생성하는 조건과 함께 사용합니다.
예시
from functools import reduce Alist = ['Mon', 'Wed', 'Mon', 'Tue', 'Thu'] # Given list print("Given list:\n", Alist) cnt = reduce(lambda count, i: count + (i in('Mon','Wed')), Alist, 0) print("Number of times the condition is satisfied in the list:\n",cnt)
출력
위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -
Given list: ['Mon', 'Wed', 'Mon', 'Tue', 'Thu'] Number of times the condition is satisfied in the list: 3