تقنية

prefix_chars في argparse: متى تُقرأ --tag قيمةً موضعية؟

بادئة مختلفة؛ argparse; prefix_chars:"+"; item,nargs:"+"; input:["--tag","bud"]; item:["--tag","bud"]; extra:[]
زائد.

مع البادئة +، تُقرأ --tag ضمن item هنا. [1] [2]

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

حين لا تكون الشرطة بادئة مختارة في مثالنا. [1] [2]

  • مع البادئة +، تُقرأ --tag ضمن item هنا. [1] [2]
  • على CPython 3.12.14، prefix_chars="+"؛ item موضعي مع nargs="+"؛ بلا خيارات معرّفة من المستخدم. [1] [2]
  • parse_known_args(["--tag","bud"]) يعطي item=["--tag","bud"] وextra=[]؛ قُرئ النص ضمن الموضعيات. [1] [2]
  • الشرطة ليست ضمن البادئات المختارة؛ لذلك لا يصنّف هذا النص خيارًا هنا. [1] [2]
  • تحكم مستقل ببادئة "-" الافتراضية والموضعي والمدخل نفسيهما: item=["bud"] وextra=["--tag"]؛ مساحات جديدة والمدخلات ثابتة. [1] [2]

تصنيف النص

مع البادئة +، تُقرأ --tag ضمن item هنا. [1] [2]

الضبط

على CPython 3.12.14، prefix_chars="+"؛ item موضعي مع nargs="+"؛ بلا خيارات معرّفة من المستخدم. [1] [2]

بادئة زائد

parse_known_args(["--tag","bud"]) يعطي item=["--tag","bud"] وextra=[]؛ قُرئ النص ضمن الموضعيات. [1] [2]

import argparse own=argparse.ArgumentParser(prefix_chars="+") own.add_argument("item",nargs="+") ns,extra=own.parse_known_args(["--tag","bud"]) print(ns.item,extra) [1] [2]

تحكم مستقل؛ argparse; prefix_chars:"-"; item,nargs:"+"; input:["--tag","bud"]; item:["bud"]; extra:["--tag"]
شرطة.

بادئة الشرطة

الشرطة ليست ضمن البادئات المختارة؛ لذلك لا يصنّف هذا النص خيارًا هنا. [1] [2]

control=argparse.ArgumentParser() control.add_argument("item",nargs="+") cns,cextra=control.parse_known_args(["--tag","bud"]) print(cns.item,cextra) [1] [2]

تحكم مستقل ببادئة "-" الافتراضية والموضعي والمدخل نفسيهما: item=["bud"] وextra=["--tag"]؛ مساحات جديدة والمدخلات ثابتة. [1] [2]

المراجع

  1. Python argparse
  2. CPython argparse

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

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