Вот код: https://github.com/zSucrilhos/programming/blob/master/Python/psw-generator-ASCII-1.9.5-CLI-t7.py
И на Repl.it: https://repl.it/@ErickCesar/PushyFabulousTask
Это генератор паролей, который я делаю для развлечения и в основном для изучения Python.Он работает нормально, как и ожидалось, я установил следующие аргументы:
-np, --repeat = Generate more than one psw at a time (default=1)
-pl, --length = Password length (default=25 chars)
-pt, --type = Password's type; Can be one of the following:
1 - UPPERCASE ONLY
2 - lowercase only
3 - 1234567890 only
4 - !@#$%¨&* only
5 - Mixed 12ab!@
Проблема в аргументе по умолчанию «help» (-h, --help).При попытке запустить программу отображается большое сообщение об ошибке:
C:\Users\Pentium IV 641\Desktop\programming\programming\Python>python psw-generator-ASCII-1.9.5-CLI-t7.py -h
Traceback (most recent call last):
File "psw-generator-ASCII-1.9.5-CLI-t7.py", line 118, in <module>
arguments = parser.parse_args()
File "C:\Users\Pentium IV 641\AppData\Local\Programs\Python\Python36-32\lib\argparse.py", line 1730, in parse_args
args, argv = self.parse_known_args(args, namespace)
File "C:\Users\Pentium IV 641\AppData\Local\Programs\Python\Python36-32\lib\argparse.py", line 1762, in parse_known_args
namespace, args = self._parse_known_args(args, namespace)
File "C:\Users\Pentium IV 641\AppData\Local\Programs\Python\Python36-32\lib\argparse.py", line 1968, in _parse_known_args
start_index = consume_optional(start_index)
File "C:\Users\Pentium IV 641\AppData\Local\Programs\Python\Python36-32\lib\argparse.py", line 1908, in consume_optional
take_action(action, args, option_string)
File "C:\Users\Pentium IV 641\AppData\Local\Programs\Python\Python36-32\lib\argparse.py", line 1836, in take_action
action(self, namespace, argument_values, option_string)
File "C:\Users\Pentium IV 641\AppData\Local\Programs\Python\Python36-32\lib\argparse.py", line 1020, in __call__
parser.print_help()
File "C:\Users\Pentium IV 641\AppData\Local\Programs\Python\Python36-32\lib\argparse.py", line 2362, in print_help
self._print_message(self.format_help(), file)
File "C:\Users\Pentium IV 641\AppData\Local\Programs\Python\Python36-32\lib\argparse.py", line 2346, in format_help
return formatter.format_help()
File "C:\Users\Pentium IV 641\AppData\Local\Programs\Python\Python36-32\lib\argparse.py", line 282, in format_help
help = self._root_section.format_help()
File "C:\Users\Pentium IV 641\AppData\Local\Programs\Python\Python36-32\lib\argparse.py", line 213, in format_help
item_help = join([func(*args) for func, args in self.items])
File "C:\Users\Pentium IV 641\AppData\Local\Programs\Python\Python36-32\lib\argparse.py", line 213, in <listcomp>
item_help = join([func(*args) for func, args in self.items])
File "C:\Users\Pentium IV 641\AppData\Local\Programs\Python\Python36-32\lib\argparse.py", line 213, in format_help
item_help = join([func(*args) for func, args in self.items])
File "C:\Users\Pentium IV 641\AppData\Local\Programs\Python\Python36-32\lib\argparse.py", line 213, in <listcomp>
item_help = join([func(*args) for func, args in self.items])
File "C:\Users\Pentium IV 641\AppData\Local\Programs\Python\Python36-32\lib\argparse.py", line 519, in _format_action
help_text = self._expand_help(action)
File "C:\Users\Pentium IV 641\AppData\Local\Programs\Python\Python36-32\lib\argparse.py", line 606, in _expand_help
return self._get_help_string(action) % params
ValueError: unsupported format character '?' (0xa8) at index 154
Попытка добавить аргумент -h
и --help
самостоятельно, но это не помогло.Ошибка будет отображаться одинаково.
Пробовал и в Linux (Arch), и в Windows 10, то же самое.
Я не знаю точно, что попробовать дальше, потому что я не знаюпонял ошибку, чтобы решить ее самостоятельно.Поэтому я прошу о помощи.
Я также пошел в библиотечный файл (argparse.py), чтобы посмотреть, смогу ли я лучше понять, что происходит (ничего не редактировал), но не смог(начинающий здесь).Заранее спасибо.