يُقبل اسم type المسجل هنا. [1] [2]
الخلاصة السريعة
نعم، بعد تسجيل الاسم هنا. [1] [2]
- يُقبل اسم type المسجل هنا. [1] [2]
- على CPython 3.12.14، نسجل bud تحت type كمحول int قبل تعريف --n؛ محلل عادي. [1] [2]
- type="bud" يحول النص 4 في ["--n","4"] إلى عدد صحيح 4؛ تبقى خاصية الفعل bud، ويحل المحلل الاسم إلى int. [1] [2]
- register يخزن المحول في السجل؛ يبحث add_argument عن الاسم ويتحقق من قابليته للاستدعاء. [1] [2]
- تحكم مستقل بلا تسجيل: تعريف --n مع type="bud" يثير ValueError قبل التحليل، دون stdout أو stderr. لا نعمم على أنواع مخصصة أو إعادة التسجيل. [1] [2]
اسم المحول
الضبط
على CPython 3.12.14، نسجل bud تحت type كمحول int قبل تعريف --n؛ محلل عادي. [1] [2]
تسجيل وتحويل
type="bud" يحول النص 4 في ["--n","4"] إلى عدد صحيح 4؛ تبقى خاصية الفعل bud، ويحل المحلل الاسم إلى int. [1] [2]
import argparse own=argparse.ArgumentParser() own.register("type","bud",int) own.add_argument("--n",type="bud") ns=own.parse_args(["--n","4"]) print(ns.n,type(ns.n).__name__) [1] [2]

اسم غير مسجل
register يخزن المحول في السجل؛ يبحث add_argument عن الاسم ويتحقق من قابليته للاستدعاء. [1] [2]
control=argparse.ArgumentParser() try: control.add_argument("--n",type="bud") except ValueError: print("ValueError") [1] [2]
تحكم مستقل بلا تسجيل: تعريف --n مع type="bud" يثير ValueError قبل التحليل، دون stdout أو stderr. لا نعمم على أنواع مخصصة أو إعادة التسجيل. [1] [2]
المراجع
للتوسع: لغات البرمجة.
أُعدّ هذا المقال بمساعدة الذكاء الاصطناعي، وخضع لمراجعة ذاتية بالأداة نفسها. لا يُنسب إلى مراجع بشري أو خبير مستقل. منهجية المحتوى.
![اسم مسجل؛ argparse; register:type,bud,int; --n,type:bud; input:[--n,4]; n:4,type:int](https://images.bahralolom.com/assets/local-2000-20261012/BA-1877/python-argparse-registertype-main.png)