Ответ 1
Да, это принятый путь. Из http://docs.python.org/dev/library/argparse.html#action:
>>> parser.add_argument('--version', action='version', version='%(prog)s 2.0')
Конечно, вы должны встраивать номер версии в свой пакет стандартным образом: Стандартный способ встраивания версии в пакет python?
Если вы следуете этому методу, у вас есть переменная __version__
:
from _version import __version__
parser.add_argument('--version', action='version',
version='%(prog)s {version}'.format(version=__version__))
Например, метод, продемонстрированный в https://pypi.python.org/pypi/commando/0.3.2a:
parser.add_argument('-v', '--version', action='version', version='%(prog)s ' + __version__)