تقنية

RawTextHelpFormatter في argparse: هل يحتفظ بسطرَي مساعدة الخيار؟

مساعدة الخيار؛ argparse; RawTextHelpFormatter; --tag,help:bud\nleaf; format_help(); newline+spaces:True; bud leaf:False
خيار.

RawText يحتفظ بفاصل السطر في مساعدة الخيار. [1] [2]

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

نعم؛ مساعدة الخيار تُعرض في سطرين في المثال. [1] [2]

  • RawText يحتفظ بفاصل السطر في مساعدة الخيار. [1] [2]
  • على CPython 3.12.14، محلل عادي مع formatter_class=argparse.RawTextHelpFormatter؛ نضيف --tag بمساعدة "bud\nleaf"، دون وصف للمحلل أو خاتمة. [1] [2]
  • نص format_help() يطابق نمط bud ثم فاصل سطر ومسافة واحدة أو أكثر ثم leaf؛ لا يتضمن "bud leaf". [1] [2]
  • RawText يفصل نص مساعدة الخيار عند نهايات الأسطر هنا؛ RawDescription يرث تنسيق مساعدة الخيارات المعتاد. [1] [2]
  • تحكم مستقل بـRawDescriptionHelpFormatter والخيار والمساعدة نفسيهما: النص يتضمن "bud leaf" دون النمط ذي السطرين. الاستدعاءان يعيدان النص دون طباعته؛ لا ندعي عدد مسافات ثابتًا أو حفظ كل الأسطر الفارغة. [1] [2]

مساعدة الخيار

RawText يحتفظ بفاصل السطر في مساعدة الخيار. [1] [2]

الضبط

على CPython 3.12.14، محلل عادي مع formatter_class=argparse.RawTextHelpFormatter؛ نضيف --tag بمساعدة "bud\nleaf"، دون وصف للمحلل أو خاتمة. [1] [2]

نمط سطرين

نص format_help() يطابق نمط bud ثم فاصل سطر ومسافة واحدة أو أكثر ثم leaf؛ لا يتضمن "bud leaf". [1] [2]

import argparse,re msg="bud\nleaf" pattern=r"bud\n +leaf" own=argparse.ArgumentParser(formatter_class=argparse.RawTextHelpFormatter) own.add_argument("--tag",help=msg) text=own.format_help() print(bool(re.search(pattern,text)),"bud leaf" in text) [1] [2]

تحكم مستقل؛ argparse; RawDescriptionHelpFormatter; --tag,help:bud\nleaf; format_help(); newline+spaces:False; bud leaf:True
تحكم.

تحكم بالمنسق الآخر

RawText يفصل نص مساعدة الخيار عند نهايات الأسطر هنا؛ RawDescription يرث تنسيق مساعدة الخيارات المعتاد. [1] [2]

control=argparse.ArgumentParser(formatter_class=argparse.RawDescriptionHelpFormatter) control.add_argument("--tag",help=msg) ctext=control.format_help() print(bool(re.search(pattern,ctext)),"bud leaf" in ctext) [1] [2]

تحكم مستقل بـRawDescriptionHelpFormatter والخيار والمساعدة نفسيهما: النص يتضمن "bud leaf" دون النمط ذي السطرين. الاستدعاءان يعيدان النص دون طباعته؛ لا ندعي عدد مسافات ثابتًا أو حفظ كل الأسطر الفارغة. [1] [2]

المراجع

  1. Python argparse
  2. CPython argparse

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

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