كيفية استخدام دالة any() للتحقق من الشروط في القوائم في Python
تمت الكتابة بواسطة: عبد الحكيم
تارخ آخر تحديث: 20 سبتمبر 2024محتوى المقال
- ما هي دالة any() في Python؟
- كيفية استخدام any() مع القوائم
- استخدام any() مع تعبيرات lambda
- التحقق من وجود عناصر نصية في القائمة
- التحقق من القيم الفارغة أو غير الصالحة في القوائم
- استخدام any() مع القوائم المتداخلة
- مقارنة any() مع all()
- التطبيقات العملية لدالة any()
- الخلاصة
عند التعامل مع القوائم أو هياكل البيانات الأخرى في لغة البرمجة Python، قد تحتاج إلى التحقق مما إذا كانت أي من العناصر تحقق شرطًا معينًا. دالة any()
هي أداة قوية في Python تتيح لك التحقق من وجود عناصر تفي بالشروط المطلوبة في القوائم أو هياكل البيانات القابلة للتكرار.
ما هي دالة any()
في Python؟
دالة any()
تُستخدم للتحقق مما إذا كانت أي من العناصر في القائمة أو الهيكل القابل للتكرار تُحقق شرطًا معينًا. تُعيد any()
True
إذا كان هناك عنصر واحد على الأقل يُحقق الشرط، وتُعيد False
إذا لم يحقق أي عنصر الشرط.
بعبارة أخرى، إذا كان هناك عنصر واحد فقط يُقيّم إلى True
، فإن دالة any()
ستُعيد True
، وإلا ستُعيد False
.
كيفية استخدام any()
مع القوائم
لاستخدام any()
مع القوائم، كل ما عليك فعله هو تمرير القائمة كمعامل للدالة. إذا كان أي عنصر في القائمة يُقيّم إلى True
، سيتم إرجاع True
.
مثال 1: التحقق من وجود أي عدد موجب في القائمة
numbers = [-1, -2, -3, 4, -5]
result = any(num > 0 for num in numbers)
print('هل هناك عدد موجب؟', result) # الناتج: هل هناك عدد موجب؟ True
في هذا المثال، دالة any()
تُعيد True
لأن العدد 4 هو عدد موجب، وبالتالي يُحقق الشرط.
استخدام any()
مع تعبيرات lambda
يمكنك أيضًا استخدام lambda
مع any()
لكتابة الشروط بطريقة أكثر اختصارًا.
مثال 2: التحقق من وجود عناصر أكبر من 5 باستخدام lambda
numbers = [1, 2, 3, 4, 6, 8]
result = any(lambda x: x > 5, numbers)
print('هل هناك عنصر أكبر من 5؟', result) # الناتج: هل هناك عنصر أكبر من 5؟ True
في هذا المثال، تم استخدام lambda
للتحقق مما إذا كان هناك أي عدد أكبر من 5 في القائمة.
التحقق من وجود عناصر نصية في القائمة
دالة any()
ليست مقتصرة فقط على القيم العددية. يمكنك استخدامها مع أي نوع من البيانات، بما في ذلك السلاسل النصية (strings). لنلقِ نظرة على كيفية استخدامها مع النصوص.
مثال 3: التحقق من وجود أسماء تبدأ بحرف "أ"
names = ['سارة', 'أحمد', 'كريم']
result = any(name.startswith('أ') for name in names)
print('هل يوجد اسم يبدأ بحرف "أ"؟', result) # الناتج: هل يوجد اسم يبدأ بحرف "أ"؟ True
في هذا المثال، نتحقق مما إذا كان هناك أي اسم في القائمة يبدأ بحرف "أ". دالة any()
تُعيد True
لأن "أحمد" يحقق الشرط.
التحقق من القيم الفارغة أو غير الصالحة في القوائم
يمكن استخدام any()
للتحقق من القيم الفارغة أو غير الصالحة (مثل None
أو القيم الفارغة) في القوائم. دعونا نرى مثالًا على ذلك.
مثال 4: التحقق من وجود قيم None
أو قيم فارغة في القائمة
values = ['', 0, None, 'Python']
result = any(val is None or val == '' for val in values)
print('هل توجد قيم فارغة أو None؟', result) # الناتج: هل توجد قيم فارغة أو None؟ True
في هذا المثال، دالة any()
تُعيد True
لأن القائمة تحتوي على قيمة None
وسلسلة نصية فارغة.
استخدام any()
مع القوائم المتداخلة
يمكنك استخدام any()
مع القوائم المتداخلة للتحقق مما إذا كان أي عنصر في القوائم الداخلية يُحقق شرطًا معينًا.
مثال 5: التحقق من وجود عنصر أكبر من 10 في قوائم متداخلة
nested_lists = [[1, 2], [3, 4], [11, 5]]
result = any(num > 10 for sublist in nested_lists for num in sublist)
print('هل يوجد عنصر أكبر من 10؟', result) # الناتج: هل يوجد عنصر أكبر من 10؟ True
في هذا المثال، نتحقق مما إذا كان هناك أي عنصر أكبر من 10 في القوائم المتداخلة باستخدام any()
.
مقارنة any()
مع all()
بينما تُستخدم دالة any()
للتحقق مما إذا كان أي عنصر يحقق الشرط، فإن دالة all()
تُستخدم للتحقق مما إذا كانت جميع العناصر تحقق الشرط. دعونا نقارن بينهما.
مثال 6: مقارنة بين any()
و all()
numbers = [1, 2, 3, 4, 5]
# التحقق مما إذا كان أي عدد أكبر من 3
any_result = any(num > 3 for num in numbers)
# التحقق مما إذا كانت جميع الأرقام أكبر من 3
all_result = all(num > 3 for num in numbers)
print('هل يوجد أي عدد أكبر من 3؟', any_result) # الناتج: True
print('هل جميع الأعداد أكبر من 3؟', all_result) # الناتج: False
في هذا المثال، نتحقق مما إذا كان هناك أي عدد أكبر من 3 باستخدام any()
، ثم نتحقق مما إذا كانت جميع الأرقام أكبر من 3 باستخدام all()
.
التطبيقات العملية لدالة any()
تُستخدم any()
في العديد من التطبيقات اليومية، مثل:
- التحقق من وجود قيم صالحة في نموذج (form) أو بيانات المستخدم.
- التحقق من القيم الفارغة أو الأخطاء في البيانات.
- تصفية البيانات بناءً على شرط معين.
الخلاصة
تُعد دالة any()
في Python أداة قوية ومرنة للتحقق من وجود عناصر تُحقق شرطًا معينًا داخل القوائم أو الهياكل القابلة للتكرار. سواء كنت تتعامل مع القيم العددية، النصوص، أو حتى القوائم المتداخلة، فإن any()
توفر لك طريقة سهلة للتحقق من الشروط داخل بياناتك. كما أن استخدامها مع تعبيرات lambda
يُسهل كتابة الشروط بشكل مختصر وفعال.
طور مهاراتك: مقالات يجب قراءتها في البرمجة
- فهم دالة للتحقق من جميع الشروط في القوائم في Python
- تقسيم الأعداد الصحيحة والحصول على النتيجة والباقي باستخدام دالة في Python
- تحويل الكائنات إلى تمثيل نصي باستخدام دالة repr() في Python
- استخدام دالة reversed() لعكس ترتيب العناصر في Python
- فهم دالة format() لتنسيق النصوص والأرقام في Python
- استخدام دالة chr() لتحويل الأرقام إلى حروف في Python
- تحويل الحروف إلى أرقام باستخدام دالة ord() في Python
- التعامل مع استثناءات البرمجة باستخدام دالة raise في Python
- كيفية استخدام دالة eval() لتنفيذ النصوص البرمجية في Python
- فهم دالة exec() لتنفيذ التعليمات البرمجية النصية في Python