gpt4 book ai didi

go - 如何将值列表放入 Golang 中的标志中?

转载 作者:IT老高 更新时间:2023-10-28 12:59:14 24 4
gpt4 key购买 nike

Golang 与以下 python 命令的等价物是什么?

import argparse
parser = argparse.ArgumentParser(description="something")
parser.add_argument("-getList1",nargs='*',help="get 0 or more values")
parser.add_argument("-getList2",nargs='?',help="get 1 or more values")

我已经看到 flag 包允许在 Golang 中解析参数。但它似乎只支持 String、Int 或 Bool。如何以这种格式将值列表放入标志中:

go run myCode.go -getList1 value1 value2 

最佳答案

您可以定义自己的flag.Value并使用flag.Var()进行绑定(bind)。

示例是here .

然后您可以传递多个标志,如下所示:

go run your_file.go --list1 value1 --list1 value2

UPD:包括代码片段以防万一。

package main

import "flag"

type arrayFlags []string

func (i *arrayFlags) String() string {
return "my string representation"
}

func (i *arrayFlags) Set(value string) error {
*i = append(*i, value)
return nil
}

var myFlags arrayFlags

func main() {
flag.Var(&myFlags, "list1", "Some description for this param.")
flag.Parse()
}

关于go - 如何将值列表放入 Golang 中的标志中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28322997/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com