python Docopt中的位置参数



我正在编写一个简单的命令行联系人管理器。我希望能够使用以下命令添加新联系人。
manager.py add -n NAME -p PHONENUMBER
但是,每当我使用名字和姓氏添加联系人时,代码就会抛出错误。
如。manager.py add -n emeka onwuzulike +23464715326
这是我的代码
Usage: manager.py add -n NANE -p PHONENUMBER

你遇到的问题是,因为每个参数都是在空格字符上分割的,所以正在发送的是:

  • 添加
  • - n
  • emeka
  • onwuzulike
  • + 23464715326

你有一些选择,我能想到的最简单的是在名称中使用分隔符,而不是使用空格,使用下划线(_)等分隔符,然后在脚本中将_替换为空格。

或者尝试将名称封装在引号中,这取决于命令提示符,它有时会解析为单个参数。由于实际上没有给我们任何代码,我无法测试。

要实现这一点,您需要在name参数中添加一个字符串,如下所示
Manager.py add -n 'emeka onwuzulike' -p 08064715300

相关内容

  • 没有找到相关文章

最新更新