إنشاء حلقة For بدون متغير مكرر
في بايثون، تتكرر حلقات for عادةً عبر سلسلة من العناصر باستخدام متغير مكرر، مثل كما في المثال أدناه:
for i in range(some_number): # do something
ومع ذلك، قد تكون هناك سيناريوهات تحتاج فيها ببساطة إلى تنفيذ إجراء عدة مرات دون الحاجة إلى متغير مكرر.
الحلول المحتملة
على الرغم من أنه ليس من الممكن التخلص تمامًا من متغير المكرر، إلا أن هناك بدائل يمكنها تحقيق نتيجة مماثلة:
1. دالة Lambda مع xrange():
يمكنك استخدام دالة lambda مع الدالة xrange()، وتمرير دالة مجهولة كوسيطة إلى loop() :
def loop(f, n): for i in xrange(n): f() loop(lambda:, 5)
2. استخدام _ المتغير :
يسمح لك بايثون باستخدام المتغير الخاص _ لتجاهل القيمة المخصصة بواسطة الحلقة. لاحظ أن _ هو مجرد متغير آخر وليس عنصرًا نائبًا للمكرر:
for _ in range(n): do_something()
بينما يتم استخدام _ غالبًا كمعرف للعناصر النائبة، إلا أنه لا يوصى باستخدامه في هذا السياق لأنه من المحتمل أن يعين آخر قيمة إرجاع لجلسة Python التفاعلية إلى _.
3. تجاهل المكرر بشكل صريح:
يمكنك تجاهل متغير المكرر بشكل صريح باستخدام بناء الجملة التالي:
for i in range(n): pass # No action taken
ومع ذلك، فإن هذا الحل غير فعال لأنه يحتل مكانًا إضافيًا في النطاق.
الاستنتاج
بينما هو كذلك ليس من الممكن بشكل مباشر إنشاء حلقة for بدون متغير مكرر في Python، توفر البدائل المذكورة أعلاه طرقًا لتحقيق تأثير مماثل عند الضرورة.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3