ส่วนหนึ่งของการวิเคราะห์ข้อมูลจำเป็นต้องกรองค่าออกจากรายการที่ตรงตามเกณฑ์ที่กำหนด ในบทความนี้ เราจะมาดูวิธีการกรองเฉพาะค่าคู่จากรายการ
เราต้องผ่านแต่ละองค์ประกอบของรายการแล้วหารด้วย 2 เพื่อตรวจสอบส่วนที่เหลือ หากเศษเหลือเป็นศูนย์ เราจะถือว่ามันเป็นเลขคู่ หลังจากดึงเลขคู่เหล่านี้จากรายการ เราจะใส่เงื่อนไขเพื่อสร้างรายการใหม่ซึ่งไม่รวมเลขคู่นี้ รายการใหม่นั้นเป็นผลมาจากเงื่อนไขการกรองที่เราใช้
ใช้สำหรับวนซ้ำ
นี่เป็นวิธีที่ง่ายที่สุดในการอ่านองค์ประกอบของรายการและตรวจสอบการหารด้วย 2 โค้ดด้านล่างประกอบด้วย for loop ซึ่งอ่านองค์ประกอบและตรวจสอบการหารด้วย 2 จากนั้นจึงผนวกองค์ประกอบที่ถูกต้องเข้ากับรายการว่าง ซึ่งจะเป็น ผลลัพธ์ของเงื่อนไขการกรอง
ตัวอย่าง
list_A = [33, 35, 36, 39, 40, 42] res = [] for n in list_A: if n % 2 == 0: res.append(n) print(res)
ผลลัพธ์
การเรียกใช้โค้ดด้านบนทำให้เราได้ผลลัพธ์ดังต่อไปนี้:
[36, 40, 42]
การใช้งานขณะวนซ้ำ
เมื่อเรามีรายการความยาวที่ไม่รู้จัก เราสามารถใช้ while loop และฟังก์ชัน len() เพื่อให้ได้สิ่งเดียวกันกับที่อยู่ในโปรแกรมด้านบน
ตัวอย่าง
list_A = [33, 35, 36, 39, 40, 42] res = [] n = 0 while (n < len(list_A)): if list_A[n] % 2 == 0: res.append(list_A[n]) n += 1 print(res)
ผลลัพธ์
การเรียกใช้โค้ดด้านบนทำให้เราได้ผลลัพธ์ดังต่อไปนี้:
[36, 40, 42]
การใช้ filter()
เรายังสามารถใช้แลมบ์ดาและฟังก์ชันตัวกรองร่วมกันได้ รายการที่เลือกโดยฟังก์ชันแลมบ์ดาสามารถกรองออกจากรายการเดิมได้โดยใช้ฟังก์ชันตัวกรอง
ตัวอย่าง
list_A = [33, 35, 36, 39, 40, 42] res = [] x = lambda m: m % 2 == 0 res = list(filter(x, list_A)) print(res)
ผลลัพธ์
การเรียกใช้โค้ดด้านบนทำให้เราได้ผลลัพธ์ดังต่อไปนี้:
[36, 40, 42]