Write a Python Program to Count Positive and Negative Numbers in a List using For Loop, While Loop, and Functions with practical example.

Before you start, please refer List article to understand everything about Lists.

## Python Program to Count Positive and Negative Numbers in a List using For Loop

In this python program, we are using For Loop to iterate each and every element in a given List. Inside the loop we are using If statement to check and count Positive and Negative numbers.

# Python Program to Count Positive and Negative Numbers in a List NumList = [] Positive_count = 0 Negative_count = 0 Number = int(input("Please enter the Total Number of List Elements: ")) for i in range(1, Number + 1): value = int(input("Please enter the Value of %d Element : " %i)) NumList.append(value) for j in range(Number): if(NumList[j] >= 0): Positive_count = Positive_count + 1 else: Negative_count = Negative_count + 1 print("\nTotal Number of Positive Numbers in this List = ", Positive_count) print("Total Number of Negative Numbers in this List = ", Negative_count)

**OUTPUT**

**ANALYSIS**

User entered elements = [12, -22, 3, 5], Positive_count = 0, Negative_count = 0

**For Loop – First Iteration: **for 0 in range(0, 4)

The condition is True so, compiler will enter into the If Statement

if(NumList[0] >= 0) => if(12 >= 0) – Condition is True

Positive_count = Positive_count + 1 => 0 + 1 = 1

**Second Iteration:** for 1 in range(0, 4) – Condition is True

if(NumList[1] >= 0) => if(-22 >= 0) – Condition is False

Compiler will enter into the Else block.

Negative_count = Negative_count + 1 => 0 + 1 = 1

**Third Iteration:** for 2 in range(0, 4) – Condition is True

if(NumList[2] >= 0) => if(3 >= 0) – Condition is True

Positive_count = 1 + 1 => 2

**Fourth Iteration:** for 3 in range(0, 4) – Condition is True

if(5 >= 0) – Condition is True

Compiler will enter into the Else block.

Positive_count = 2 + 1 => 3

**Fifth Iteration:** for 4 in range(4) – Condition is False

So compiler will exit from For Loop

## Python Program to Count Positive and Negative Numbers in a List using While loop

This program for counting positive and negative numbers is same as above. We just replaced the For Loop with While loop.

# Python Program to Count Positive and Negative Numbers in a List NumList = [] Positive_count = 0 Negative_count = 0 j = 0 Number = int(input("Please enter the Total Number of List Elements: ")) for i in range(1, Number + 1): value = int(input("Please enter the Value of %d Element : " %i)) NumList.append(value) while(j < Number): if(NumList[j] >= 0): Positive_count = Positive_count + 1 else: Negative_count = Negative_count + 1 j = j + 1 print("\nTotal Number of Positive Numbers in this List = ", Positive_count) print("Total Number of Negative Numbers in this List = ", Negative_count)

**OUTPUT**

## Python Program to Count Positive and Negative items in a List using Functions

This program is same as first example. However, we separated the logic using Functions

# Python Program to Count Positive and Negative Numbers in a List def count_Positive(NumList): Positive_count = 0 for j in range(Number): if(NumList[j] >= 0): Positive_count = Positive_count + 1 return Positive_count def count_Negative(NumList): Negative_count = 0 for j in range(Number): if(NumList[j] % 2 != 0): Negative_count = Negative_count + 1 return Negative_count NumList = [] Number = int(input("Please enter the Total Number of List Elements: ")) for i in range(1, Number + 1): value = int(input("Please enter the Value of %d Element : " %i)) NumList.append(value) Positive_cnt = count_Positive(NumList) Negative_cnt = count_Negative(NumList) print("\nTotal Number of Positive Numbers in this List = ", Positive_cnt) print("Total Number of Negative Numbers in this List = ", Negative_cnt)

**OUTPUT**