2009-11-18 43 views
47

我怎麼能採取的Python的optparse值實例

opt, args = parser.parse_args() 

的選擇結果,並將其放置在一個字典? Python調用選擇「值實例」,我無法找到任何方法將值實例轉換爲列表或字典。一個無法複製的項目選擇這種方式,

for i in opt: 
myDict[i] = opt[i] 

相反,它是一個笨拙的,

myDict[parm1] = opt.parm1 
myDict[parm2] = opt.parm2 

這意味着我每次增加一個選項的時候,我一定要和更新此代碼;應該有辦法讓這個照顧自己。

回答

83
options, args = parser.parse_args() 
option_dict = vars(options) 

(Source is this python-ideas post.)

+6

尼斯。我浪費了5個小時。 – mgag 2009-11-18 03:46:38

+0

很酷,很高興它適合你。 – bcat 2009-11-18 03:56:20

+14

我不知道如何,經過12年以上的Python,我不知道'vars()'。你一直都在學習新的東西。 – 2012-03-14 13:58:23