ในบทความนี้ เราจะเรียนรู้เกี่ยวกับวิธีแก้ปัญหาและแนวทางในการแก้ปัญหาที่ระบุ
คำชี้แจงปัญหา
จากรายการที่วนซ้ำได้ เราจำเป็นต้องนับจำนวนบวกและลบทั้งหมดที่มีอยู่ใน iterable
เราจะหารือถึงสองแนวทาง –
- วิธีการบังคับแบบดุดัน
- การใช้ฟังก์ชันอินไลน์แลมบ์ดา
แนวทางที่ 1 - วิธีบังคับแบบดุร้าย
ตัวอย่าง
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 − การใช้แลมบ์ดาและฟังก์ชันตัวกรอง
ตัวอย่าง
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
บทสรุป
ในบทความนี้ เราได้เรียนรู้เกี่ยวกับวิธีการนับจำนวนบวกและลบในรายการ