บางครั้งเรามาถึงสถานการณ์ที่เรามีสองรายการและเราต้องการตรวจสอบว่าแต่ละรายการจากรายการขนาดเล็กมีอยู่ในรายการที่ใหญ่กว่าหรือไม่ ในกรณีเช่นนี้ เราจะใช้ฟังก์ชัน filter() ตามที่อธิบายด้านล่าง
ไวยากรณ์
Filter(function_name, sequence name)
ที่นี่ Function_name เป็นชื่อของฟังก์ชันที่มีเกณฑ์การกรอง ชื่อลำดับคือลำดับที่มีองค์ประกอบที่ต้องกรอง อาจเป็นเซ็ต รายการ ทูเพิล หรือตัววนซ้ำอื่นๆ
ตัวอย่าง
ในตัวอย่างด้านล่าง เราจะใช้รายชื่อเดือนที่ใหญ่กว่า แล้วกรองเดือนที่ไม่มี 30 วันออก เพื่อที่เราจะสร้างรายการที่มีขนาดเล็กลงซึ่งประกอบด้วยเดือนที่มี 31 วัน จากนั้นจึงใช้ฟังก์ชันตัวกรอง
# list of Months months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul','Aug'] # function that filters some Months def filterMonths(months): MonthsWith31 = ['Apr', 'Jun','Aug','Oct'] if(months in MonthsWith31): return True else: return False non30months = filter(filterMonths, months) print('The filtered Months :') for month in non30months: print(month)
ผลลัพธ์
การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -
The filtered Months : Apr Jun Aug