2013-12-20 52 views
0

我想我知道如何處理這個,如果它是一個字典,但它現在變得有點難以分開哈希物體,因爲太多了javascript如何查找數值對象的屬性?

該終端轉儲應該證明我有問題:

% python 
Python 2.7.4 (default, Jul 3 2013, 17:42:47) 
[GCC 4.2.1 Compatible Clang 3.4 (trunk 185360)] on linux2 
Type "help", "copyright", "credits" or "license" for more information. 
>>> import argparse 
>>> parser = argparse.ArgumentParser() 
>>> parser.add_argument('--256', '-256', action='store_true') 
_StoreTrueAction(option_strings=['--256', '-256'], dest='256', nargs=0, const=True, default=False, type=None, choices=None, 
help=None, metavar=None) 
>>> args = parser.parse_args() 
>>> dir(args) 
['256', '__class__', '__contains__', '__delattr__', '__dict__', '__doc__', '__eq__', '__format__', '__getattribute__', '__h 
ash__', '__init__', '__module__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof_ 
_', '__str__', '__subclasshook__', '__weakref__', '_get_args', '_get_kwargs'] 
>>> args.256 
    File "<stdin>", line 1 
    args.256 
     ^
SyntaxError: invalid syntax 

基本上,​​爲我工作很大的權利,直到我要開始指定標誌-256是觸發程序的256色的終端支持(即,是否它發出的256個色ANSI碼或8個色ANSI碼)

回答

4

使用getattr()

getattr(args, '256') 

但您可能希望通過設置dest目的地來避免這個問題:

parser.add_argument('--256', '-256', action='store_true', dest='ff') 
+1

是不是'dest',將不得不改變,不'metavar'? – delnan

+2

+++超出咖啡因錯誤+++從開始重做+++ –

+1

所以@MartijnPieters畢竟是人類。 –