소스 검색

added optional default parameter

Dimitri Korsch 5 년 전
부모
커밋
4d2caef83b
1개의 변경된 파일7개의 추가작업 그리고 4개의 파일을 삭제
  1. 7 4
      cvargparse/utils/enumerations.py

+ 7 - 4
cvargparse/utils/enumerations.py

@@ -42,7 +42,7 @@ class BaseChoiceType(Enum, metaclass=MetaBaseType):
 			raise ValueError("Unknown optimizer type: \"{}\"".format(key.__class__.__name__))
 
 	@classmethod
-	def as_arg(cls, name, short_name=None, help_text=None):
+	def as_arg(cls, name, short_name=None, default=None, help_text=None, **kwargs):
 
 		args = ["--{}".format(name)]
 
@@ -52,9 +52,12 @@ class BaseChoiceType(Enum, metaclass=MetaBaseType):
 		if help_text is None:
 			help_text = "choices for \"{}\"".format(name)
 
-		help_text += " (default: {})".format(cls.Default.name.lower())
+		default = default or cls.Default.name.lower()
+
+		help_text += " (default: {})".format(default)
 
 		return cvargparse.Arg(*args,
-			type=str, default=cls.Default.name.lower(),
+			type=str, default=default,
 			choices=cls.as_choices(),
-			help=help_text)
+			help=help_text,
+			**kwargs)