ในฐานะส่วนหนึ่งของการวิเคราะห์ข้อมูล ต้องการกรองค่าออกจากลิสต์ที่ตรงตามเกณฑ์บางอย่าง ในบทความนี้ เราจะดูวิธีกรองเฉพาะค่าคู่จากลิสต์
เราต้องผ่านแต่ละองค์ประกอบของลิสต์และหารด้วย 2 เพื่อตรวจสอบเศษ ถ้าเศษเป็นศูนย์ เราจะถือว่าเป็นจำนวนคู่ หลังจากดึงจำนวนคู่เหล่านี้จากลิสต์ เราจะตั้งเงื่อนไขเพื่อสร้างลิสต์ใหม่ที่ไม่รวมจำนวนคู่นี้ ลิสต์ใหม่นี้คือผลลัพธ์ของเงื่อนไขการกรองที่เราใช้
ใช้ For Loop
นี่คือวิธีที่ง่ายที่สุดในการอ่านองค์ประกอบของลิสต์และตรวจสอบการหารด้วย 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
เมื่อเรามีลิสต์ที่ความยาวไม่ทราบ เราสามารถใช้ 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()
เราสามารถใช้การผสมผสานของ lambda และ filter function ได้ องค์ประกอบที่ถูกเลือกโดย lambda function สามารถกรองออกจากลิสต์ต้นฉบับได้โดยการใช้ filter function
ตัวอย่าง
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]