Go解析命令列傳入引數

2021-08-15 11:23:44 字數 1173 閱讀 5351

go的flag包用來解析命令列引數。 

引數的表示方法為:

-flag

-flag=x

-flag x // x不能是bool值

主要的api如下:

// 獲取名字為name的引數值,預設值為value,用法為usage

// 注意返回值是乙個指標

// 類似的方法還有 int(),bool()等。

func string(name string, value string, usage string) *string

// 這種方式p作為返回值,可以傳入變數的位址

// 類似的方法還有 intvar(),boolvar()等。

func stringvar(p *string, name string, value string, usage string)

// usage用來列印用法

var usage = func()

// 解析引數,應在設定完引數變數後呼叫

func parse()

package main

import (

"flag"

"fmt"

)func main()

執行go build 檔名之後會生成exe檔案,然後執行go-commandline.exe -married=false -age=23 -name=bobo,輸出如下:

package main

usage of go-commandline.exe:

-address string

where is your address? (default "guangzhou")

-age int

how old are you? (default 22)

-married

are you married?

-name string

what your name?

輸出的引數married的值是: false

輸出的引數age的值是: 23

輸出的引數name的值是: bobo

輸出的引數address的值是: guangzhou

python傳入命令列引數

1.pycharm要想快速調出命令列引數設定面板,快捷鍵為alt shift f10,之後按下0即可 a sys.argv 1 b sys.argv 2 在引數變數中輸入5和6,等同於 a 5 b 6 3.究其原因,是由於python語言本身的限制,導致變數沒有固定的型別,ide不能自動識別引數型別...

Go解析命令列引數 flag包

在寫命令列程式 工具 server 時,對命令列引數進行解析,是一種常見的需求。各種語言一般都會提供相應的方法或庫,以方便開發者使用。在go標準庫中提供了乙個包 flag,方便進行命令列解析。也就是說,go的flag包用來解析命令列引數。命令列flag的語法有如下三種形式 flag 只支援bool型...

go語言之命令列引數解析

第一種 第二種 第三種 第四種 正常的開發中上面的三種都不常用,flag包的機制是最哦常用的 type option struct func p option output func dealwithosargs option flag.parse 輸出沒有標識的字段 fmt.printf othe...