python中flag=1什么意思_001_flag包详解

go语言提供的flag包可以解析命令行的参数,而且使用起来非常的方便。 先看一个小例子:test.go

package main

import (

"flag"

"fmt"

)

var bFlag = flag.Bool("b", false, "If show message")

func main() {

//第一个参数,为参数名称,第二个参数为默认值,第三个参数是说明

name := flag.String("name", "Watson", "Input your name.")

age := flag.Int("age", 0, "Input your age.")

flag.Parse()

if !*bFlag {

fmt.Println("Mr. Watson, Come Here, I Want You!")

} else {

fmt.Println("Hello, ", *name, " age:", *age)

}

}

运行结果: Mr. Watson, Come Here, I Want You!

添加执行参数:-b=true -name=arun -age=28

运行结果: Hello,  arun    age: 28

几点注意事项:

1,通过flag.String(), flag.Bool, flag.Int(),flag.IntVar()等方式来定义命令行中需要使用的flag。

2,在定义完flag后,通过调用flag.Parse()来进行对命令行参数的解析。

3,命令行参数的格式可以是:

-flag xxx (使用空格,一个 - 符号)

--flag xxx (使用空格,两个 - 符号)

-flag=xxx (使用等号,一个 - 符号)

--flag=xxx (使用等号,两个 - 符号)

其中,布尔类型的参数比较特殊,为了防止解析时的二义性,应该使用等号的方式指定。

4,命令行后面直接跟-help 、--help 或者是输入错误的参数就会把帮助文档显示出来,以上面的程序为例。

Usage of /private/var/folders/wy/v0w9vkf52836x21w_jz2wzlh0000gn/T/___test:

-age int

Input your age.

-bIf show message

-name string

Input your name. (default "Watson")

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值