المجموعة العادية لا تفرض التنافي هنا. [1] [2]
الخلاصة السريعة
لا؛ نقبل الخيارين المقدمين معًا في مثالنا. [1] [2]
- المجموعة العادية لا تفرض التنافي هنا. [1] [2]
- على CPython 3.12.14، ننشئ مجموعة عادية بـadd_argument_group("bud")؛ --left و--right بفعل store_true وافتراضيهما المعتاد. [1] [2]
- تحليل ["--left","--right"] يعطي {"left":True,"right":True}؛ كلا الخيارين مقدّم. [1] [2]
- المجموعة العادية هنا تجمع الأفعال للعرض؛ طريقة المجموعة المتنافية تسجل قيدًا مستقلًا. [1] [2]
- تحكم مستقل بخيارين مماثلين داخل مجموعة متنافية غير مطلوبة: نستعمل add_mutually_exclusive_group()؛ المدخل نفسه يثير SystemExit بالرمز 2؛ نلتقط الخروج لمتابعة المثال، دون تخصيصه. [1] [2]
مجموعة عادية
الضبط
على CPython 3.12.14، ننشئ مجموعة عادية بـadd_argument_group("bud")؛ --left و--right بفعل store_true وافتراضيهما المعتاد. [1] [2]
خياران مقدمان
تحليل ["--left","--right"] يعطي {"left":True,"right":True}؛ كلا الخيارين مقدّم. [1] [2]
import argparse,contextlib,io own=argparse.ArgumentParser() g=own.add_argument_group("bud") g.add_argument("--left",action="store_true") g.add_argument("--right",action="store_true") ns=own.parse_args(["--left","--right"]) print(vars(ns)) [1] [2]
![تحكم مستقل؛ argparse; add_mutually_exclusive_group(); --left,--right:store_true; input:["--left","--right"]; SystemExit:2](https://images.bahralolom.com/assets/local-2000-20261012/BA-1845/python-argparse-groups-values.png)
مجموعة متنافية
المجموعة العادية هنا تجمع الأفعال للعرض؛ طريقة المجموعة المتنافية تسجل قيدًا مستقلًا. [1] [2]
control=argparse.ArgumentParser() cg=control.add_mutually_exclusive_group() cg.add_argument("--left",action="store_true") cg.add_argument("--right",action="store_true") try: with contextlib.redirect_stderr(io.StringIO()): control.parse_args(["--left","--right"]) except SystemExit as ex: print(type(ex).__name__,ex.code) [1] [2]
تحكم مستقل بخيارين مماثلين داخل مجموعة متنافية غير مطلوبة: نستعمل add_mutually_exclusive_group()؛ المدخل نفسه يثير SystemExit بالرمز 2؛ نلتقط الخروج لمتابعة المثال، دون تخصيصه. [1] [2]
المراجع
للتوسع: لغات البرمجة.
أُعدّ هذا المقال بمساعدة الذكاء الاصطناعي، وخضع لمراجعة ذاتية بالأداة نفسها. لا يُنسب إلى مراجع بشري أو خبير مستقل. منهجية المحتوى.
![مجموعة عادية؛ argparse; add_argument_group("bud"); --left,--right:store_true; input:["--left","--right"]; left:True; right:True](https://images.bahralolom.com/assets/local-2000-20261012/BA-1845/python-argparse-groups-main.png)