Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

จำนวนองค์ประกอบที่ตรงกับเงื่อนไขเฉพาะใน Python


ในบทความนี้เราจะมาดูวิธีดึงองค์ประกอบที่เลือกจากรายการ Python เราจึงต้องออกแบบเงื่อนไขบางอย่างและควรเลือกเฉพาะองค์ประกอบที่ตรงตามเงื่อนไขนั้นและพิมพ์จำนวนออกมา

ปัญญาและผลรวม

ในวิธีนี้เราใช้เงื่อนไขในการเลือกองค์ประกอบและใช้บางส่วนเพื่อรับการนับ ใช้ 1 หากมีองค์ประกอบอยู่ มิฉะนั้น 0 จะใช้สำหรับผลลัพธ์ของเงื่อนไข

ตัวอย่าง

Alist = ['Mon', 'Wed', 'Mon', 'Tue', 'Thu']
# Given list
print("Given list:\n", Alist)
cnt = sum(1 for i in Alist if i in('Mon','Wed'))
print("Number of times the condition is satisfied in the list:\n",cnt)

ผลลัพธ์

การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -

Given list:
['Mon', 'Wed', 'Mon', 'Tue', 'Thu']
Number of times the condition is satisfied in the list:
3

พร้อมแผนที่และแลมบ์ดา

ที่นี่ยังใช้ในสภาพ แต่ยังใช้แลมบ์ดาและฟังก์ชันแผนที่ สุดท้ายเราใช้ฟังก์ชัน sum เพื่อนับ

ตัวอย่าง

Alist = ['Mon', 'Wed', 'Mon', 'Tue', 'Thu']
# Given list
print("Given list:\n", Alist)
cnt=sum(map(lambda i: i in('Mon','Wed'), Alist))
print("Number of times the condition is satisfied in the list:\n",cnt)

ผลลัพธ์

การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -

Given list:
['Mon', 'Wed', 'Mon', 'Tue', 'Thu']
Number of times the condition is satisfied in the list:
3

พร้อมลด

ฟังก์ชันลดใช้ฟังก์ชันเฉพาะกับองค์ประกอบทั้งหมดในรายการที่ให้ไว้เป็นอาร์กิวเมนต์ เราใช้มันร่วมกับ a ในเงื่อนไข ในที่สุดก็สร้างการนับองค์ประกอบที่ตรงกับเงื่อนไข

ตัวอย่าง

from functools import reduce
Alist = ['Mon', 'Wed', 'Mon', 'Tue', 'Thu']
# Given list
print("Given list:\n", Alist)
cnt = reduce(lambda count, i: count + (i in('Mon','Wed')), Alist, 0)
print("Number of times the condition is satisfied in the list:\n",cnt)

ผลลัพธ์

การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -

Given list:
['Mon', 'Wed', 'Mon', 'Tue', 'Thu']
Number of times the condition is satisfied in the list:
3