فهم وظائف any() و all() في بايثون
توفر Python دالتين مدمجتين، any()
وall()
، وهما مفيدتان للغاية عند العمل مع أنواع البيانات القابلة للتكرار مثل القوائم أو الثنائيات أو المجموعات أو القواميس. تساعدك هذه الدالات في تحديد ما إذا كانت أي أو كل العناصر في عنصر قابل للتكرار تلبي شرطًا معينًا. ستساعدك هذه المقالة على فهم كيفية عمل هذه الدالات وقواعدها وأمثلة عملية لتوضيح استخدامها.
ما هي الدالة any()
؟
تتحقق الدالة any()
مما إذا كان هناك عنصر واحد على الأقل في عنصر قابل للتكرار هو True
. إذا كان أي عنصر في العنصر القابل للتكرار هو True
، فإن الدالة تعيد True
؛ وإلا فإنها تعيد False
. إذا كان العنصر القابل للتكرار فارغًا، فإن الدالة any()
تعيد False
.
بناء جملة any()
بناء الجملة لـ any()
بسيط:
any(iterable)
هنا، يمكن أن يكون iterable
قائمة، أو مجموعة، أو قاموس، أو أي عنصر قابل للتكرار في Python.
مثال على استخدام any()
دعونا نلقي نظرة على بعض الأمثلة لفهم كيفية عمل any()
:
# Example 1: Using any() with a list
numbers = [0, 1, 2, 3]
result = any(numbers)
print(result) # Output: True
# Example 2: Using any() with a list of all False values
numbers = [0, 0, 0]
result = any(numbers)
print(result) # Output: False
# Example 3: Using any() with an empty list
numbers = []
result = any(numbers)
print(result) # Output: False
في المثال الأول، تعيد الدالة any()
القيمة True
لأن هناك قيمة واحدة على الأقل غير صفرية (حقيقية) في القائمة. في المثال الثاني، تكون جميع العناصر 0
(falsy)، لذا تعيد الدالة False
. في المثال الثالث، تكون القائمة فارغة، لذا تعيد الدالة False
.
ما هي الدالة all()
؟
تتحقق الدالة all()
مما إذا كانت جميع العناصر في عنصر قابل للتكرار True
. إذا كانت جميع العناصر True
، تعيد الدالة True
. إذا كان أي عنصر False
أو إذا كان العنصر القابل للتكرار فارغًا، تعيد الدالة False
.
بناء جملة all()
بناء الجملة لـ all()
مشابه لـ any()
:
all(iterable)
هنا، يمكن أن يكون iterable
أي كائن قابل للتكرار في Python مثل القائمة أو المجموعة أو القاموس.
مثال على استخدام all()
دعونا نلقي نظرة على بعض الأمثلة لفهم كيفية عمل all()
:
# Example 1: Using all() with a list
numbers = [1, 2, 3, 4]
result = all(numbers)
print(result) # Output: True
# Example 2: Using all() with a list that contains a zero
numbers = [1, 2, 0, 4]
result = all(numbers)
print(result) # Output: False
# Example 3: Using all() with an empty list
numbers = []
result = all(numbers)
print(result) # Output: True
في المثال الأول، تعيد الدالة all()
القيمة True
لأن جميع العناصر في القائمة ليست صفرًا (صحيحة). وفي المثال الثاني، تعيد الدالة False
لأن هناك عنصرًا 0
(خاطئ). وفي المثال الثالث، تكون القائمة فارغة، وتعيد الدالة all()
القيمة True
افتراضيًا.
الجمع بين any()
وall()
للشروط المعقدة
يمكنك استخدام كل من any()
وall()
معًا لإجراء فحوصات منطقية أكثر تعقيدًا. على سبيل المثال، يمكنك التحقق مما إذا كان أي عنصر في القائمة True
وما إذا كانت جميع العناصر تلبي شرطًا آخر.
# Example: Using any() and all() together
numbers = [1, 2, 3, 4, 5]
# Check if there is any even number and all are positive
result = any(num % 2 == 0 for num in numbers) and all(num > 0 for num in numbers)
print(result) # Output: True
في هذا المثال، نتحقق مما إذا كان هناك أي رقم زوجي في القائمة وما إذا كانت جميع الأرقام موجبة. النتيجة المجمعة هي True
لأن كلا الشرطين مُرضيان.
خاتمة
تعد الدالتان any()
وall()
في بايثون أدوات قوية لتقييم الشروط عبر كائن قابل للتكرار. إن فهم كيفية استخدام هذه الدالات سيجعل الكود الخاص بك أكثر قابلية للقراءة وكفاءة عند التعامل مع عمليات التحقق الشرطية. ابدأ في استخدامها في مشاريع بايثون الخاصة بك لتحسين مهاراتك في البرمجة!