2015-08-18 2 views
0

Я пытаюсь разобрать аргументы командной строки в очень простым способом:Не удалось получить значение аргумента командной строки с помощью argparse

$ python main.py --path /home/me/123 

или

$ python main.py --path=/home/me/123 

И потом:

import argparse 

parser = argparse.ArgumentParser() 
parser.add_argument('--path') 
args = parser.parse_args() 

И args возвращает бездельников:

(Pdb) args 
(Pdb) args.path 

Как получить доступ к значению --path?

+0

Это работает для меня. просто попробуйте 'print args.path'. –

+0

@Jayesh, спасибо. –

+0

Также смотрите http://stackoverflow.com/questions/7427101/dead-simple-argparse-example-wanted-1-argument-3-results. – wenzul

ответ

0

Вы можете распечатать args.path, и он покажет ваш аргумент в строке. Для получения более подробной информации вы можете проверить на ссылку ниже для более подробной информации о argparse

Вы также можете использовать sys разобрать свои аргументы командной строки, такие как

>>> import sys 
>>> path = sys.argv[1] # sys.argv always start at 1 
>>> print path 

Проверьте ниже ссылки для более подробной информации.

Надеется, что это помогает.

+1

Для тривиальных входных параметров это нормально, но я бы не предложил его для более сложных вещей. – wenzul

0

Он отлично работает для меня ...

>>> args 
Namespace(path='/home/me/123') 

Таким образом, вы можете получить доступ к нему через args.path

Смежные вопросы