Eu recomendo o argparse
que vem com o Python 2.7 e posterior.
O argparse
módulo reduz o código da placa da caldeira e torna seu código mais robusto, porque o módulo lida com todos os casos de uso padrão (incluindo subcomandos), gera a ajuda e o uso para você, verifica e higieniza a entrada do usuário - tudo o que você precisa se preocupar quando precisar estão usando sys.argv
abordagem. E é de graça (embutido).
Aqui está um pequeno exemplo:
import argparse
parser = argparse.ArgumentParser("simple_example")
parser.add_argument("counter", help="An integer will be increased by 1 and printed.", type=int)
args = parser.parse_args()
print(args.counter + 1)
e a saída para python prog.py -h
usage: simple_example [-h] counter
positional arguments:
counter counter will be increased by 1 and printed.
optional arguments:
-h, --help show this help message and exit
e python prog.py 1
como você esperaria:
2