automatized arguments with pickle

This commit is contained in:
leno3003 2022-03-28 18:30:15 +02:00
parent 9f30b24459
commit afd87df67a

View file

@ -228,11 +228,13 @@ class InteractBase(object):
if "WARNING " in s: if "WARNING " in s:
return "\n" return "\n"
if s in self.default_answers: res = dict(filter(lambda item: s in item[0], self.default_answers.items()))
return self.default_value[s] if res in self.default_answers:
return res[1]
return input(s) return input(s)
def input_number(self, s, default_value, valid_list=None, show_default_value=True, add_info=None, help_message=None): def input_number(self, s, default_value, valid_list=None, show_default_value=True, add_info=None, help_message=None):
s_base = s
if show_default_value and default_value is not None: if show_default_value and default_value is not None:
s = f"[{default_value}] {s}" s = f"[{default_value}] {s}"
@ -253,7 +255,7 @@ class InteractBase(object):
while True: while True:
try: try:
inp = self.input(s, str(default_value)) inp = self.input(s_base, str(default_value))
if len(inp) == 0: if len(inp) == 0:
result = default_value result = default_value
break break
@ -278,6 +280,7 @@ class InteractBase(object):
def input_int(self, s, default_value, valid_range=None, valid_list=None, add_info=None, show_default_value=True, help_message=None): def input_int(self, s, default_value, valid_range=None, valid_list=None, add_info=None, show_default_value=True, help_message=None):
if show_default_value: if show_default_value:
if len(s) != 0: if len(s) != 0:
s_base = s
s = f"[{default_value}] {s}" s = f"[{default_value}] {s}"
else: else:
s = f"[{default_value}]" s = f"[{default_value}]"
@ -305,7 +308,7 @@ class InteractBase(object):
while True: while True:
try: try:
inp = self.input(s, str(default_value)) inp = self.input(s_base, str(default_value))
if len(inp) == 0: if len(inp) == 0:
raise ValueError("") raise ValueError("")
@ -329,6 +332,7 @@ class InteractBase(object):
return result return result
def input_bool(self, s, default_value, help_message=None): def input_bool(self, s, default_value, help_message=None):
s_base = s
s = f"[{yn_str[default_value]}] {s} ( y/n" s = f"[{yn_str[default_value]}] {s} ( y/n"
if help_message is not None: if help_message is not None:
@ -337,7 +341,7 @@ class InteractBase(object):
while True: while True:
try: try:
inp = self.input(s, str(default_value)) inp = self.input(s_base, str(default_value))
if len(inp) == 0: if len(inp) == 0:
raise ValueError("") raise ValueError("")
@ -351,6 +355,7 @@ class InteractBase(object):
return default_value return default_value
def input_str(self, s, default_value, valid_list=None, show_default_value=True, help_message=None): def input_str(self, s, default_value, valid_list=None, show_default_value=True, help_message=None):
s_base = s
if show_default_value and default_value is not None: if show_default_value and default_value is not None:
s = f"[{default_value}] {s}" s = f"[{default_value}] {s}"
@ -374,7 +379,7 @@ class InteractBase(object):
print("Stringa costruita: |", s, "|") print("Stringa costruita: |", s, "|")
while True: while True:
try: try:
inp = self.input(s, default_value) inp = self.input(s_base, default_value)
if len(inp) == 0: if len(inp) == 0:
if default_value is None: if default_value is None: