2016-02-03 18 views
1

我正在使用一個使用parse_args的簡單腳本,但如果變量名稱爲args(如文檔和多個示例中所示),分配不起作用。python args變量不能與parser.parse_args一起使用

(Pdb) parser.parse_args() 
Namespace(partition_frequency='daily', start_date='2016-02-03', table_name='test_table') 

(Pdb) x=parser.parse_args() 
(Pdb) x 
Namespace(partition_frequency='daily', start_date='2016-02-03', table_name='test_table') 

(Pdb) args=parser.parse_args() 
(Pdb) args 
     **>> No output** 
(Pdb) arg=parser.parse_args() 
(Pdb) arg 
Namespace(partition_frequency='daily', start_date='2016-02-03', table_name='test_table') 

任何線索?

+0

檢查分析前後的'args',但不分配給'args'。也許解析器使用它 – furas

+3

'args'是一個pdb命令。看到這個問題:http://stackoverflow.com/questions/29342420/two-different-values-for-same-variable-args – alexanderlukanin13

回答

5

的問題是,您在pdb運行這些命令。

事實證明,argsa pdb command!所以它不被解釋爲一個變量,而是作爲一個命令pdb。

1

你使用什麼Python版本? 我剛剛用Python 2.7檢查了這個簡單的例子,它的工作原理是 。

test.py:

import argparse 

parser = argparse.ArgumentParser() 
parser.add_argument('--foo', help='foo of the %(prog)s program') 
args = parser.parse_args() 

print args 

而且它給了我下面的輸出:

>test.py --foo qqq 
Namespace(foo='qq') 
相關問題