تقنية

prog في argparse: هل يغير sys.argv؟

اسم للعرض؛ argparse; prog:"bud"; format_usage(); bud:present
اسم.

prog يحدد اسم العرض هنا دون تغيير sys.argv. [1] [2]

الخلاصة السريعة

لا؛ المحتوى وهوية القائمة لم يتغيرا في المثال. [1] [2]

  • prog يحدد اسم العرض هنا دون تغيير sys.argv. [1] [2]
  • على CPython 3.12.14 باستدعاء ملف، ننشئ محللًا عاديًا بـprog="bud"، دون تعريف وسيطات مستخدم؛ نحفظ محتوى sys.argv ومرجعها مسبقًا. [1] [2]
  • النص العائد من format_usage() يتضمن bud. [1] [2]
  • الاسم يُخزن في المحلل ويُمرر للمنسّق؛ لا نحلل مدخلات هنا. [1] [2]
  • تحكم مستقل بـprog="leaf" يعطي leaf في النص؛ بعد الاستدعاءين، محتوى sys.argv وهوية قائمتها محفوظان. لا نفحص طرق التشغيل الأخرى أو حساب الاسم الافتراضي. [1] [2]

اسم العرض

prog يحدد اسم العرض هنا دون تغيير sys.argv. [1] [2]

الضبط

على CPython 3.12.14 باستدعاء ملف، ننشئ محللًا عاديًا بـprog="bud"، دون تعريف وسيطات مستخدم؛ نحفظ محتوى sys.argv ومرجعها مسبقًا. [1] [2]

النص العائد

النص العائد من format_usage() يتضمن bud. [1] [2]

import argparse,sys before=list(sys.argv) argv_ref=sys.argv own=argparse.ArgumentParser(prog="bud") text=own.format_usage() print("bud" in text) [1] [2]

تحكم مستقل؛ argparse; prog:"leaf"; format_usage(); leaf:present; sys.argv:same-content,same-object
قائمة.

القائمة الأصلية

الاسم يُخزن في المحلل ويُمرر للمنسّق؛ لا نحلل مدخلات هنا. [1] [2]

control=argparse.ArgumentParser(prog="leaf") ctext=control.format_usage() print("leaf" in ctext) print(sys.argv==before,sys.argv is argv_ref) [1] [2]

تحكم مستقل بـprog="leaf" يعطي leaf في النص؛ بعد الاستدعاءين، محتوى sys.argv وهوية قائمتها محفوظان. لا نفحص طرق التشغيل الأخرى أو حساب الاسم الافتراضي. [1] [2]

المراجع

  1. Python argparse
  2. CPython argparse

للتوسع: لغات البرمجة.

أُعدّ هذا المقال بمساعدة الذكاء الاصطناعي، وخضع لمراجعة ذاتية بالأداة نفسها. لا يُنسب إلى مراجع بشري أو خبير مستقل. منهجية المحتوى.