如何在python中装箱docopt,其中我的参数需要是带空格的字符串。我试着在它周围加上单引号和双引号,但不起作用。
到目前为止,这是我的docopt字符串。
"""
Parser
Usage: parser.py <trey_file> <als_cmd>
"""
parser.py myfile.py"这是一个橙色"#不工作
Docopt不将参数字符串解析为参数向量。请尝试以下操作。
"""
Parser
Usage: parser.py <trey_file> <als_cmd>
"""
print docopt(__doc__)
print docopt(__doc__, 'myfile.py "This is an Orange"')
print docopt(__doc__, ['myfile.py', 'This is an Orange'])
使用python parser.py myfile.py "This is an Orange"
从shell运行脚本。第一种情况应该按预期工作,因为shell会按预期将参数拆分为sys.argv
。第二种情况无法解决您的问题,因为docopt希望其输入已经标记化。第三种情况将如预期的那样起作用。
顺便说一句,try.docopt.org似乎犯了同样的错误,将字符串而不是向量传递给docopt()
。