# Python程序可计算列表中的正数和负数

2021年4月1日15:27:10 发表评论 951 次浏览

``````Input: list1 = [2, -7, 5, -64, -14]
Output: pos = 2, neg = 3

Input: list2 = [-12, 14, 95, 3]
Output: pos = 3, neg = 1``````

``````# Python program to count positive and negative numbers in a List

# list of numbers
list1 = [ 10 , - 21 , 4 , - 45 , 66 , - 93 , 1 ]

pos_count, neg_count = 0 , 0

# iterating each number in list
for num in list1:

# checking condition
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:  4
Negative numbers in the list:  3``````

``````# Python program to count positive and negative numbers in a List

# list of numbers
list1 = [ - 10 , - 21 , - 4 , - 45 , - 66 , 93 , 11 ]

pos_count, neg_count = 0 , 0
num = 0

# using while loop
while (num < len (list1)):

# checking condition
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:  2
Negative numbers in the list:  5``````

Example＃3：使用Python Lambda表达式

``````# Python program to count positive
# and negative numbers in a List

# list of numbers
list1 = [ 10 , - 21 , - 4 , 45 , 66 , 93 , - 11 ]

neg_count = len ( list ( filter ( lambda x: (x < 0 ), list1)))

# we can also do len(list1) - neg_count
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:  4
Negative numbers in the list:  3``````

Example＃4：使用清单理解

``````# Python program to count positive
# and negative numbers in a List

# list of numbers
list1 = [ - 10 , - 21 , - 4 , - 45 , - 66 , - 93 , 11 ]

only_pos = [num for num in list1 if num > = 1 ]
pos_count = len (only_pos)

print ( "Positive numbers in the list: " , pos_count)
print ( "Negative numbers in the list: " , len (list1) - pos_count)``````

``````Positive numbers in the list:  1
Negative numbers in the list:  6``````