โจทย์: กำหนดลิสต์ นับจำนวนเลขบวกและเลขลบ มี 2 วิธี
วิธี 1: Brute-force
list1 = [1, -9, 15, -16, 13]
pos_count, neg_count = 0, 0
for num in list1:
if num >= 0:
pos_count += 1
else:
neg_count += 1
print("Positive numbers:", pos_count)
print("Negative numbers:", neg_count)
ผลลัพธ์
Positive numbers: 3
Negative numbers: 2
วิธี 2: Lambda และ Filter
list1 = [1, -9, 15, -16, 13]
neg_count = len(list(filter(lambda x: (x < 0), list1)))
pos_count = len(list(filter(lambda x: (x >= 0), list1)))
print("Positive numbers:", pos_count)
print("Negative numbers:", neg_count)
ผลลัพธ์
Positive numbers: 3
Negative numbers: 2
สรุป
เรียนรู้ 2 วิธีนับเลขบวก/ลบในลิสต์: brute-force loop และ lambda+filter