English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

دروس أساسية في Python

تحكم في العمليات في Python

الوظائف في Python

أنواع البيانات في Python

عمليات ملفات في Python

أوبجكتس وأصناف في Python

تواريخ ومواعيد في Python

معرفة متقدمة في Python

دليل Python

استخدام method filter() في Python ومثال

وظائف محلية بيتون

method filter() يبني معامل من عناصر objecitables، الدالة ستعود بـ true.

ببساطة، method filter() يستخدم دالة لدفع iterable، والذي يتحقق من كل عنصر في iterable إذا كان صحيحًا.

نصب filter() method

filter(function, iterable)

معامل filter()

method filter() تأخذ إثنين من المعامل:

  • function-

  • -دالة لتجربة عنصر iterable عائداً بـ true أو false، إذا كانت None، فإن الدالة الافتراضية تكون Identity function-إذا كان أي عنصر عائداً بـ false، فإنه يعود بـ false

  • iterable-الiterable الذي سيتم تصفية، يمكن أن يكونsets،قوائم،تuplesأو أي قالب لمعامل

نتيجة filter()

method filter() يعود بمعامل، المعامل يكون معامل لكل عنصر في iterable ويتم التحقق منه من قبل الدالة.

method filter() تساوي:

# عند وجود دالة
(الجزء للجزء في المربعات إذا دالة(الجزء))
# عند عدم وجود دالة
(الجزء للجزء في المربعات في المربعات إذا الجزء)

مثال 1: كيف يعالج filter() قائمة مرتبة?

# قائمة مرتبة حسب الحروف
alphabets = ['a', 'b', 'd', 'e', 'i', 'j', 'o']
# دالة لتنظيف الفواصل
تعريف filterVowels(alphabet):
    vowels = ['a', 'e', 'i', 'o', 'u']
    إذا كان (alphabet في vowels):
        إرجاع True
    أو:
        إرجاع False
filteredVowels = filter(filterVowels, alphabets)
اطبع('الفواصل الم过滤ه هي:')
للفواصل في filteredVowels:
    print(vowel)

عند تشغيل هذا البرنامج، يتم الطباعة كالتالي:

العناصر العاطفية المميزة هي:
a
e
i
o

في هذا المكان، قمنا بإنشاء قائمة بأحرف الأبجدية، ويكفي أن نفلتر الحروف العاطفية منها.

يمكننا استخدام دائرة التكرار لمرورالأبجديةللمكونات في القائمة، وتبدأ في حفظها في قائمة أخرى، ولكن في بيتون، يمكن استخدام طريقة filter() لجعل هذا العمل أسهل وأسرع.

لدينا وظيفة filterVowels لتحقق مما إذا كانت الحرف صوتًا.

ثم تقوم طريقة filter() بمرور كل حرف على وظيفة filterVowels() لتحقق مما إذا كان يعود كـtrue. بعد ذلك، تقوم بإنشاء م迭代ر يعود كـtrue (حروف عاطفية).

بما أن الم迭代ر نفسه لا يحفظ القيم، نمر عليه ونطبع الحروف العاطفية واحدة تلو الأخرى.

مثال 2: كيف يعمل طريقة filter() بدون وظيفة filter؟

# قائمة عشوائية
randomList = [1, 'a', 0, False, True, '0']
filteredList = filter(None, randomList)
print('العناصر المميزة بعد الفلترة هي:')
لـ for element in filteredList:
    print(element)

عند تشغيل هذا البرنامج، يتم الطباعة كالتالي:

العناصر المميزة بعد الفلترة هي:
1
a
صحيح
0

في هذا المكان،randomListوهي قائمة عشوائية تتكون من أرقام، نصوص وحقائق.

سنقومrandomListالذي يتم تمريره كـ أول معامل لـ filter() (وظيفة مرشح) هوطرق None.

عندما نضبط filterFunction على None، تكون القيمة الافتراضية هي IdentityFunction، ويتم التحققفي randomListهل كل عنصر صحيح.

عندما نمر على النهايةعندما نستخدم filterList،نحن نحصل على العناصر التالية كـtrue: (1, a, True و '0' كـ نص، لذا '0' أيضًا كـtrue).

وظائف محلية بيتون