python Django命令参数解析返回数组
我编写了一个简单的Django命令:python Django命令参数解析返回数组,django,python-3.x,Django,Python 3.x,我编写了一个简单的Django命令: def add_arguments(self, parser): parser.add_argument('--type', nargs='+', type=str) parser.add_argument('--overwrite', nargs='?', type=bool, default=False) parser.add_argument('--unsubscribe', nargs='?',
def add_arguments(self, parser):
parser.add_argument('--type', nargs='+', type=str)
parser.add_argument('--overwrite', nargs='?', type=bool, default=False)
parser.add_argument('--unsubscribe', nargs='?',
type=bool, default=False)
def handle(self, *args, **options):
print(options['type'])
如果我运行
myCommand--type=all
我会看到我的类型打印为['all']
。为什么它会以数组的形式出现?我只想要字符串值all
是因为你的nargs,你告诉它给你一个列表
在这里阅读更多
我们在哪里可以看到
“+”。与“*”一样,所有存在的命令行参数都被收集到一个列表中。此外,如果没有至少一个命令行参数,将生成一条错误消息
因此,您可能需要解析单个值的“?”。这是因为您的nargs,您告诉它给您一个列表 在这里阅读更多 我们在哪里可以看到 “+”。与“*”一样,所有存在的命令行参数都被收集到一个列表中。此外,如果没有至少一个命令行参数,将生成一条错误消息 所以您可能需要解析单个值的“?”