이 기사에서는 아래 주어진 문제 설명에 대한 솔루션에 대해 알아볼 것입니다.
문제 설명 − 반복 가능한 목록이 주어지며 그 안의 양수와 음수를 계산하여 표시해야 합니다.
접근 방식 1 - 반복 구문(for)을 사용한 무차별 대입 접근
여기에서 for 루프를 사용하여 목록의 각 요소를 반복하고 num>=0인지 확인하여 양수를 필터링해야 합니다. 조건이 true로 평가되면 pos_count를 늘리고, 그렇지 않으면 neg_count를 늘립니다.
예시
list1 = [1,-2,-4,6,7,-23,45,-0] pos_count, neg_count = 0, 0 # enhanced for loop for num in list1: # check for being positive if num >= 0: pos_count += 1 else: neg_count += 1 print("Positive numbers in the list: ", pos_count) print("Negative numbers in the list: ", neg_count)
출력
Positive numbers in the list: 5 Negative numbers in the list: 3
접근법 2 - 반복 구문을 사용한 무차별 대입 접근(while)
여기에서 for 루프를 사용하여 목록의 각 요소를 반복하고 num>=0인지 확인하여 양수를 필터링해야 합니다. 조건이 true로 평가되면 pos_count를 늘리고, 그렇지 않으면 neg_count를 늘립니다.
예시
list1 = [1,-2,-4,6,7,-23,45,-0] pos_count, neg_count = 0, 0 num = 0 # while loop while(num < len(list1)): # check if list1[num] >= 0: pos_count += 1 else: neg_count += 1 # increment num num += 1 print("Positive numbers in the list: ", pos_count) print("Negative numbers in the list: ", neg_count)
출력
Positive numbers in the list: 5 Negative numbers in the list: 3
접근법 3 - Python 람다 표현식 사용
여기에서 양수와 음수를 직접 구별할 수 있는 필터 및 람다 식을 사용합니다.
예시
list1 = [1,-2,-4,6,7,-23,45,-0] neg_count = len(list(filter(lambda x: (x < 0), list1))) pos_count = len(list(filter(lambda x: (x >= 0), list1))) print("Positive numbers in the list: ", pos_count) print("Negative numbers in the list: ", neg_count)
출력
Positive numbers in the list: 5 Negative numbers in the list: 3
모든 변수는 로컬 범위에서 선언되며 해당 참조는 위 그림과 같습니다.
결론
이 기사에서는 목록에서 양수와 음수를 계산하는 방법을 배웠습니다.