قيود التعشيش للمجموعات المتبادلة الاستبعاد في Argparse: لغز محبط

2025-06-14

على الرغم من أن وحدة Argparse في بايثون توفر ميزات مفيدة للتعامل مع وسيطات سطر الأوامر، بما في ذلك المجموعات المتبادلة الاستبعاد، إلا أنها تحتوي على قيد محبط عندما يتعلق الأمر بالتعشيش. لنأخذ مثال برنامج يحتوي على العديد من إعدادات مهلة الوقت حيث يمكن للمستخدمين إما ضبط مهلة الوقت الفردية أو تعطيلها تمامًا. لا يدعم Argparse تعشيش خيار "عدم وجود مهلة وقت" ضمن مجموعة من خيارات مهلة الوقت الفردية، مما يجعل التكوين مرهقًا. على الرغم من أنه يمكنك تعشيش مجموعة متبادلة الاستبعاد داخل مجموعة عادية، إلا أن العكس غير مدعوم، وتشير الوثائق الرسمية صراحةً إلى هذا القيد. هذا يفرض على المطورين التحقق يدويًا مما إذا تم استخدام مفاتيح محددة، مما يضيف تعقيدًا.