我在Solaris服务器上安装了python2.7,并且正在使用来检索命令行选项。Python 2.7:不能在Solaris上使用带有argparse的子分析器
在我开始使用子分析器之前,脚本失败给这个错误:
AttributeError: 'ArgumentParser' object has no attribute 'add_subpasers'
下面是脚本的短副本:
def main():
parser = argparse.ArgumentParser(prog="myProg")
subparsers = parser.add_subpasers (title="actions", description="list of available actions", help="additional help")
parser.add_argument("-v", "--verbose", \
action="store_const", \
dest="VERBOSE", \
default=False, \
const=True, \
help="runs in verbose mode")
parser.add_argument("-V", "--version", \
action="version", \
version="myProg 0.1", \
help="prints the version number")
parser.add_argument("-z", \
type = file, \
required = True, \
dest = "CONF_FILE", \
help = "defines the configuration file")
parser.add_argument("-f", \
type = file, \
required = True, \
dest = "ENV_FILE", \
help = "defines the env definition file")
parser.add_argument("-e", \
dest = "target_env", \
default = None, \
help = "limits actions to a specific service. (Optional)")
parser_launch = subparsers.add_parser ("launch", help = "launches the environment")
parser_create = subparsers.add_parser ("create", help = "creates the environment")
parser_create.add_argument ("-p", type = int, help = "passes the necessary parameters for creation")
pymss_namespace = parser.parse_args()
任何想法,为什么?非常感谢你。
您可以删除反斜线的续行 - 他们unneded。 –
他们不需要,因为你在括号内(或括号或大括号),你只需要他们之外的那些。 – agf