تقنية

resolve في argparse: هل يُحذف الفعل القديم كله؟

اسم باقٍ؛ argparse; conflict_handler:"resolve"; old:["-t","--tag"],dest:"old"; new:["--tag"],dest:"new"; input:["-t","bud","--tag","leaf"]; old.option_strings:["-t"]; old:"bud"; new:"leaf"
بقاء.

resolve يُبقي الفعل القديم إذا بقي اسم هنا. [1] [2]

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

لا؛ استبدال اسم واحد قد يُبقي اسمًا آخر هنا. [1] [2]

  • resolve يُبقي الفعل القديم إذا بقي اسم هنا. [1] [2]
  • على CPython 3.12.14، بمحلل conflict_handler="resolve"، نعرّف -t و--tag بوجهة old، ثم --tag بوجهة new؛ تخزين عادي. [1] [2]
  • يبقى القديم بأسماء ["-t"]؛ تحليل ["-t","bud","--tag","leaf"] يعطي {"old":"bud","new":"leaf"}، في مساحة جديدة. [1] [2]
  • الحل يحذف الاسم المتعارض من القديم؛ لا يزيل فعله إلا بعد استبدال جميع أسمائه. [1] [2]
  • تحكم مستقل: القديم له --tag فقط، ثم الجديد بالاسم نفسه؛ أسماء القديم []، وتحليل ["--tag","leaf"] يعطي {"new":"leaf"}. [1] [2]

اسم يبقى

resolve يُبقي الفعل القديم إذا بقي اسم هنا. [1] [2]

التعارض

على CPython 3.12.14، بمحلل conflict_handler="resolve"، نعرّف -t و--tag بوجهة old، ثم --tag بوجهة new؛ تخزين عادي. [1] [2]

القصير الباقي

يبقى القديم بأسماء ["-t"]؛ تحليل ["-t","bud","--tag","leaf"] يعطي {"old":"bud","new":"leaf"}، في مساحة جديدة. [1] [2]

import argparse own=argparse.ArgumentParser(conflict_handler="resolve") old=own.add_argument("-t","--tag",dest="old") own.add_argument("--tag",dest="new") ns=own.parse_args(["-t","bud","--tag","leaf"]) print(old.option_strings,vars(ns)) [1] [2]

تحكم مستقل؛ argparse; conflict_handler:"resolve"; old:["--tag"],dest:"old"; new:["--tag"],dest:"new"; input:["--tag","leaf"]; old.option_strings:[]; new:"leaf"
إزالة.

كل الأسماء

الحل يحذف الاسم المتعارض من القديم؛ لا يزيل فعله إلا بعد استبدال جميع أسمائه. [1] [2]

control=argparse.ArgumentParser(conflict_handler="resolve") cold=control.add_argument("--tag",dest="old") control.add_argument("--tag",dest="new") cns=control.parse_args(["--tag","leaf"]) print(cold.option_strings,vars(cns)) [1] [2]

تحكم مستقل: القديم له --tag فقط، ثم الجديد بالاسم نفسه؛ أسماء القديم []، وتحليل ["--tag","leaf"] يعطي {"new":"leaf"}. [1] [2]

المراجع

  1. Python argparse
  2. CPython argparse

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

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