我尝试使用argparse来了解它是如何解析给定列表的:
parser = argparse.ArgumentParser()
parser.add_argument('--ls', nargs='*', type=str, default = [])
Out[92]: _StoreAction(option_strings=['--ls'], dest='ls', nargs='*', const=None, default=[], type=<type 'str'>, choices=None, help=None, metavar=None)
args = parser.parse_args("--ls 'tomato' 'jug' 'andes'".split())
args
Out[94]: Namespace(ls=["'tomato'", "'jug'", "'andes'"])
args.ls
Out[96]: ["'tomato'", "'jug'", "'ande'"]
args.ls[0]
Out[97]: "'tomato'"
eval(args.ls[0])
Out[98]: 'tomato'
问题1:上述方法可行,但有没有更好的方法来访问列表中的值?在
然后我试着用dictionary来解析给定的字典:
^{pr2}$但那没用。 问题2:以上这些在字典中是如何工作的?在
问题3:现在我想要
python my.py --ls tomato jug andes --dict {'name':'man', 'address': 'kac', 'tags':'don'}
待解析
我该怎么做?在
我指的是http://parezcoydigo.wordpress.com/2012/08/04/from-argparse-to-dictionary-in-python-2-7/
…并且发现在字典下分配所有东西都很有用。有人能简化这项任务以便解析参数中的多个数据类型吗?在
我经常认为“越简单越好”,这是一种非常简单的做事方法,我认为没有更好的方法。但是,还有其他方法。在
我建议您使用json解析字符串:
虽然python不像python,但它不像python。它对引号(值仅被双引号包围)和(没有的尾随逗号)很挑剔。但至少它是安全的代码注入!当然,你应该用引号括住参数
您可能还有另一种解决方案,可以将dict作为参数,即去掉括号:
^{pr2}$问题3:现在我想要
待解析
关于
FromJSON()
,可以对其进行改进,使其类似于:您可以使用如下:
高温
相关问题 更多 >
编程相关推荐