فعل version يطبع نص الإصدار ثم يخرج هنا. [1] [2]
الخلاصة السريعة
- فعل version يطبع نص الإصدار ثم يخرج هنا. [1] [2]
- على CPython 3.12.14، --version مع action="version" وversion="leaf"؛ محلل عادي. [1] [2]
- تحليل ["--version"] يطبع leaf على stdout ثم يثير SystemExit بالرمز 0، دون إعادة مساحة أسماء هنا. [1] [2]
- الفعل يرسل النص المنسق إلى stdout ثم يستدعي exit()؛ نلتقط الخروج لمتابعة المثال. [1] [2]
- تحكم مستقل بـ --version بتخزين عادي، والمدخل العاري نفسه: SystemExit بالرمز 2، stdout فارغ وstderr غير فارغ. نفحص هذا الضبط، لا كل قالب إصدار أو نص الرسالة. [1] [2]
الخروج
الضبط
على CPython 3.12.14، --version مع action="version" وversion="leaf"؛ محلل عادي. [1] [2]
عرض وخروج
تحليل ["--version"] يطبع leaf على stdout ثم يثير SystemExit بالرمز 0، دون إعادة مساحة أسماء هنا. [1] [2]
import argparse,contextlib,io own=argparse.ArgumentParser() own.add_argument("--version",action="version",version="leaf") out=io.StringIO();err=io.StringIO();returned=False try: with contextlib.redirect_stdout(out),contextlib.redirect_stderr(err): own.parse_args(["--version"]);returned=True except SystemExit as ex: print(ex.code,out.getvalue().strip(),not returned,err.getvalue()=="") [1] [2]
![تحكم مستقل؛ argparse; action:store; --version; input:[--version]; stdout:empty; SystemExit:2; stderr:nonempty](https://images.bahralolom.com/assets/local-2000-20261012/BA-1870/python-argparse-version-values.png)
قيمة مطلوبة
الفعل يرسل النص المنسق إلى stdout ثم يستدعي exit()؛ نلتقط الخروج لمتابعة المثال. [1] [2]
control=argparse.ArgumentParser() control.add_argument("--version") cout=io.StringIO();cerr=io.StringIO() try: with contextlib.redirect_stdout(cout),contextlib.redirect_stderr(cerr): control.parse_args(["--version"]) except SystemExit as ex: print(ex.code,bool(cerr.getvalue()),cout.getvalue()=="") [1] [2]
تحكم مستقل بـ --version بتخزين عادي، والمدخل العاري نفسه: SystemExit بالرمز 2، stdout فارغ وstderr غير فارغ. نفحص هذا الضبط، لا كل قالب إصدار أو نص الرسالة. [1] [2]
المراجع
للتوسع: لغات البرمجة.
أُعدّ هذا المقال بمساعدة الذكاء الاصطناعي، وخضع لمراجعة ذاتية بالأداة نفسها. لا يُنسب إلى مراجع بشري أو خبير مستقل. منهجية المحتوى.
![عرض وخروج؛ argparse; action:version; --version,version:leaf; input:[--version]; stdout:leaf; SystemExit:0; stderr:empty](https://images.bahralolom.com/assets/local-2000-20261012/BA-1870/python-argparse-version-main.png)