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