पायथन फ़िल्टर ()

फ़िल्टर () विधि एक पुनरावृत्त के तत्वों से एक पुनरावृत्ति का निर्माण करती है जिसके लिए एक फ़ंक्शन सही होता है।

सरल शब्दों में, filter()विधि किसी फ़ंक्शन की सहायता से दिए गए पुनरावृत्ति को फ़िल्टर करती है जो पुनरावृत्त में प्रत्येक तत्व का परीक्षण करता है कि यह सही है या नहीं।

filter()विधि का सिंटैक्स है:

 फ़िल्टर (फ़ंक्शन, चलने योग्य)

फ़िल्टर () पैरामीटर

filter() विधि दो पैरामीटर लेता है:

  • फ़ंक्शन - फ़ंक्शन जो परीक्षण करता है यदि एक चलने योग्य वापसी के तत्व सही या गलत हैं
    यदि कोई नहीं है, तो फ़ंक्शन पहचान फ़ंक्शन में चूक करता है - जो किसी भी तत्व के झूठे होने पर वापस लौटता है
  • iterable - iterable जिसे फ़िल्टर किया जाना है, वह किसी भी पुनरावृत्तियों के सेट, सूचियाँ, ट्यूपल्स या कंटेनर हो सकता है

फ़िल्टर से वापसी मान ()

filter() विधि पुनरावृत्तियों में प्रत्येक तत्व के लिए फ़ंक्शन चेक पास करने वाले एक पुनरावृत्ति देता है।

filter() विधि इसके बराबर है:

 # जब फ़ंक्शन परिभाषित होता है (तत्व के लिए तत्व iterable में अगर फ़ंक्शन (तत्व)) # जब फ़ंक्शन कोई नहीं है (तत्व में तत्व के लिए तत्व अगर तत्व है)

उदाहरण 1: कैसे फिल्टर () चलने योग्य सूची के लिए काम करता है?

 # list of letters letters = ('a', 'b', 'd', 'e', 'i', 'j', 'o') # function that filters vowels def filterVowels(letter): vowels = ('a', 'e', 'i', 'o', 'u') if(letter in vowels): return True else: return False filteredVowels = filter(filterVowels, letters) print('The filtered vowels are:') for vowel in filteredVowels: print(vowel)

आउटपुट

 फ़िल्टर्ड स्वर हैं: aeio 

यहां, हमारे पास पत्रों की एक सूची है और इसमें केवल स्वरों को फ़िल्टर करने की आवश्यकता है।

हम पत्र सूची में प्रत्येक तत्व के माध्यम से लूप के लिए लूप का उपयोग कर सकते हैं और इसे किसी अन्य सूची में संग्रहीत कर सकते हैं, लेकिन पायथन में, यह प्रक्रिया filter()विधि का उपयोग करके आसान और तेज है ।

हमारे पास एक फ़ंक्शन है filterVowelsजो यह जांचता है कि एक पत्र एक स्वर है या नहीं। यह फ़ंक्शन filter()अक्षरों की सूची के साथ विधि पर पारित किया गया है ।

filter()विधि तब filterVowels()यह जाँचने के लिए प्रत्येक अक्षर को पास करती है कि यह सही है या नहीं। अंत में, यह उन लोगों के लिए एक पुनरावृत्त बनाता है जो सच्चे (स्वर) लौटाते हैं।

चूंकि पुनरावृत्तिकर्ता स्वयं मानों को संग्रहीत नहीं करता है, हम इसके माध्यम से लूप करते हैं और एक-एक करके स्वरों को प्रिंट करते हैं।

उदाहरण 2: फ़िल्टर फ़ंक्शन के बिना फ़िल्टर () विधि कैसे काम करती है?

 # random list randomList = (1, 'a', 0, False, True, '0') filteredList = filter(None, randomList) print('The filtered elements are:') for element in filteredList: print(element)

आउटपुट

 फ़िल्टर किए गए तत्व हैं: 1 एक सही 0 

यहां, हमारे पास यादृच्छिक सूची में संख्याओं, स्ट्रिंग और बूलियन की एक यादृच्छिक सूची है।

हम यादृच्छिक filter()पैरामीटर को पहले पैरामीटर (फ़िल्टर फ़ंक्शन) के साथ विधि के रूप में पास करते हैं।

फ़िल्टर फ़ंक्शन के रूप में कोई नहीं, फ़ंक्शन पहचान फ़ंक्शन में चूक करता है, और यादृच्छिक सूची में प्रत्येक तत्व की जांच की जाती है कि क्या यह सच है या नहीं।

जब हम अंतिम फ़िल्टरडलिस्ट के माध्यम से लूप करते हैं, तो हमें ऐसे तत्व मिलते हैं जो सत्य हैं: 1, a, True and '0'(एक स्ट्रिंग के रूप में '0' भी सत्य है)।

दिलचस्प लेख...