Maneira correta de obter argumentos permitidos do ArgumentParser

Pergunta, questão: Qual é a maneira pretendida / oficial de acessar possíveis argumentos de um existenteargparse.ArgumentParser objeto?

Exemplo: Vamos assumir o seguinte contexto:

import argparse
parser = argparse.ArgumentParser()
parser.add_argument('--foo', '-f', type=str)

Aqui eu gostaria de obter a seguinte lista de argumentos permitidos:

['-h', '--foo', '--help', '-f']

Encontrei a seguinte solução alternativa que faz o truque para mim

parser._option_string_actions.keys()

Mas não estou feliz com isso, pois envolve acessar um_membro que não está oficialmente documentado. Qual é a alternativa correta para esta tarefa?

questionAnswers(4)

yourAnswerToTheQuestion