最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Go語言中的格式化輸出占位符的用法詳解

 更新時(shí)間:2024年10月31日 09:59:51   作者:越千年  
在 Go 語言中,格式化輸出是一個(gè)非常常用的功能,特別是在處理字符串、數(shù)字和其他數(shù)據(jù)類型時(shí),本文將詳細(xì)介紹 Go 語言中常用的格式化占位符及其用法,希望對大家有所幫助

在 Go 語言中,格式化輸出是一個(gè)非常常用的功能,特別是在處理字符串、數(shù)字和其他數(shù)據(jù)類型時(shí)。Go 提供了豐富的格式化選項(xiàng),通過占位符來控制輸出的格式。本文將詳細(xì)介紹 Go 語言中常用的格式化占位符及其用法。

基本格式化函數(shù)

Go 語言提供了幾個(gè)內(nèi)置的格式化函數(shù),這些函數(shù)主要位于 fmt 包和 log 包中:

fmt 包

fmt.Printf(format string, a ...interface{}):格式化輸出到標(biāo)準(zhǔn)輸出。

fmt.Sprintf(format string, a ...interface{}):格式化輸出到字符串。

fmt.Fprintf(w io.Writer, format string, a ...interface{}):格式化輸出到 io.Writer

log 包

log.Printf(format string, v ...interface{}):格式化輸出到日志。

常用的格式化占位符

字符串格式化

占位符描述示例
%s格式化字符串fmt.Printf("%s", "Hello")
%q格式化字符串,用雙引號(hào)包圍fmt.Printf("%q", "Hello")

數(shù)字格式化

整數(shù)

占位符描述示例
%d十進(jìn)制整數(shù)fmt.Printf("%d", 123)
%b二進(jìn)制整數(shù)fmt.Printf("%b", 123)
%o八進(jìn)制整數(shù)fmt.Printf("%o", 123)
%x十六進(jìn)制整數(shù)(小寫字母)fmt.Printf("%x", 123)
%X十六進(jìn)制整數(shù)(大寫字母)fmt.Printf("%X", 123)
%cASCII 碼對應(yīng)的字符fmt.Printf("%c", 65)
%UUnicode 碼點(diǎn)fmt.Printf("%U", 'A')

浮點(diǎn)數(shù)

占位符描述示例
%f浮點(diǎn)數(shù)fmt.Printf("%f", 123.456)
%e科學(xué)記數(shù)法(小寫字母 e)fmt.Printf("%e", 123.456)
%E科學(xué)記數(shù)法(大寫字母 E)fmt.Printf("%E", 123.456)
%g根據(jù)值的大小選擇 %e 或 %ffmt.Printf("%g", 123.456)
%G根據(jù)值的大小選擇 %E 或 %ffmt.Printf("%G", 123.456)

布爾值

占位符描述示例
%t布爾值fmt.Printf("%t", true)

其他類型

占位符描述示例
%p指針地址fmt.Printf("%p", &value)
%T類型名稱fmt.Printf("%T", value)

特殊格式化

占位符描述示例
%v格式化任何值,默認(rèn)格式fmt.Printf("%v", "Hello")
%+v格式化任何值,包含結(jié)構(gòu)體字段fmt.Printf("%+v", struct{ Name string }{"Alice"})
%#v格式化任何值,Go 語法格式fmt.Printf("%#v", "Hello")

自定義寬度和精度

占位符描述示例
%wd設(shè)置最小寬度,不足部分用空格填充fmt.Printf("%5d", 123)
%0wd設(shè)置最小寬度,不足部分用零填充fmt.Printf("%05d", 123)
%wf設(shè)置浮點(diǎn)數(shù)的小數(shù)位數(shù)fmt.Printf("%.2f", 123.456)

對齊方式

占位符描述示例
%-w左對齊fmt.Printf("%-5d", 123)
%+w右對齊(默認(rèn))fmt.Printf("%+5d", 123)

示例代碼

fmt 包示例

package main

import (
    "fmt"
)

func main() {
    // 字符串格式化
    fmt.Printf("String: %s\n", "Hello")
    fmt.Printf("Quoted String: %q\n", "Hello")

    // 數(shù)字格式化
    fmt.Printf("Decimal: %d\n", 123)
    fmt.Printf("Binary: %b\n", 123)
    fmt.Printf("Octal: %o\n", 123)
    fmt.Printf("Hexadecimal (lower): %x\n", 123)
    fmt.Printf("Hexadecimal (upper): %X\n", 123)
    fmt.Printf("Character: %c\n", 65)
    fmt.Printf("Unicode: %U\n", 'A')

    // 浮點(diǎn)數(shù)格式化
    fmt.Printf("Float: %f\n", 123.456)
    fmt.Printf("Scientific (lower): %e\n", 123.456)
    fmt.Printf("Scientific (upper): %E\n", 123.456)
    fmt.Printf("General (lower): %g\n", 123.456)
    fmt.Printf("General (upper): %G\n", 123.456)

    // 布爾值格式化
    fmt.Printf("Boolean: %t\n", true)

    // 指針地址格式化
    var value int = 123
    fmt.Printf("Pointer: %p\n", &value)

    // 類型名稱格式化
    fmt.Printf("Type: %T\n", value)

    // 特殊格式化
    fmt.Printf("Default Format: %v\n", "Hello")
    fmt.Printf("Struct Fields: %+v\n", struct{ Name string }{"Alice"})
    fmt.Printf("Go Syntax: %#v\n", "Hello")

    // 自定義寬度和精度
    fmt.Printf("Width: %5d\n", 123)
    fmt.Printf("Zero-Padded Width: %05d\n", 123)
    fmt.Printf("Precision: %.2f\n", 123.456)

    // 對齊方式
    fmt.Printf("Left-Aligned: %-5d\n", 123)
    fmt.Printf("Right-Aligned: %+5d\n", 123)
}

log 包示例

package main

import (
    "log"
)

func main() {
    log.Printf("Log Message: %s", "Hello")
}

以上就是Go語言中的格式化輸出占位符的用法詳解的詳細(xì)內(nèi)容,更多關(guān)于Go格式化輸出占位符的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 一文詳解Golang內(nèi)存管理之??臻g管理

    一文詳解Golang內(nèi)存管理之棧空間管理

    這篇文章主要介紹了Golang內(nèi)存管理的??臻g管理,文章通過代碼示例介紹的非常詳細(xì),對我們學(xué)習(xí)Golang內(nèi)存管理有一定的幫助,需要的朋友跟著小編一起來學(xué)習(xí)吧
    2023-06-06
  • Go語言實(shí)現(xiàn)Snowflake雪花算法

    Go語言實(shí)現(xiàn)Snowflake雪花算法

    雪花算法產(chǎn)生的背景當(dāng)然是twitter高并發(fā)環(huán)境下對唯一ID生成的需求,得益于twitter內(nèi)部牛的技術(shù),雪花算法能夠流傳于至今并且被廣泛使用,本文就詳細(xì)的介紹一下,感興趣的可以了解一下
    2021-06-06
  • Go語言范圍Range的實(shí)現(xiàn)示例

    Go語言范圍Range的實(shí)現(xiàn)示例

    range是Go語言中一個(gè)非常有用的功能,它可以幫助我們更方便地遍歷各種類型的序列,通過本文的介紹,相信你已經(jīng)對range有了一定的了解,感興趣的可以了解一下
    2025-10-10
  • go語言生成隨機(jī)數(shù)和隨機(jī)字符串的實(shí)現(xiàn)方法

    go語言生成隨機(jī)數(shù)和隨機(jī)字符串的實(shí)現(xiàn)方法

    隨機(jī)數(shù)在很多時(shí)候都可以用到,尤其是登錄時(shí),本文就詳細(xì)的介紹一下go語言生成隨機(jī)數(shù)和隨機(jī)字符串的實(shí)現(xiàn)方法,具有一定的參考價(jià)值,感興趣的可以了解一下
    2021-12-12
  • Go語言類型轉(zhuǎn)換工具庫cast的實(shí)現(xiàn)

    Go語言類型轉(zhuǎn)換工具庫cast的實(shí)現(xiàn)

    本文介紹了Go語言中的類型轉(zhuǎn)換工具庫cast,cast庫提供了一種簡單安全的方式來在各種類型間轉(zhuǎn)換,如ToIntSliceE、ToStringSliceE等,同時(shí)支持時(shí)間類型和時(shí)長類型的轉(zhuǎn)換,并能處理轉(zhuǎn)換失敗的情況,感興趣的可以了解一下
    2025-11-11
  • Go語言實(shí)現(xiàn)接口的示例代碼

    Go語言實(shí)現(xiàn)接口的示例代碼

    本文主要介紹了Go語言實(shí)現(xiàn)接口的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2026-03-03
  • 瞅一眼就能學(xué)會(huì)的GO并發(fā)編程使用教程

    瞅一眼就能學(xué)會(huì)的GO并發(fā)編程使用教程

    隨著互聯(lián)網(wǎng)的普及,互聯(lián)網(wǎng)用戶人數(shù)原來越多,這對系統(tǒng)的性能帶來了巨大的挑戰(zhàn)。這個(gè)時(shí)候就需要并發(fā)編程了,本文為大家整理了詳細(xì)的GO并發(fā)編程使用教程,讓你看完就能學(xué)會(huì)
    2023-02-02
  • Golang中互斥鎖和讀寫互斥鎖原理及示例代碼

    Golang中互斥鎖和讀寫互斥鎖原理及示例代碼

    在Golang中,互斥鎖是一種基本的同步原語,用于實(shí)現(xiàn)對共享資源的互斥訪問,讀寫互斥鎖是一種特殊類型的互斥鎖,它允許多個(gè)協(xié)程同時(shí)讀取某個(gè)共享資源,本文將通過過示例代碼詳細(xì)介紹Golang中互斥鎖和讀寫互斥鎖,需要的朋友可以參考下
    2023-05-05
  • go處理線程之間的交互示例代碼

    go處理線程之間的交互示例代碼

    Go語言以goroutine為核心實(shí)現(xiàn)并發(fā)編程,其中線程間交互主要通過Channels、WaitGroup、Mutex和Select實(shí)現(xiàn),Channels提供goroutine間的數(shù)據(jù)傳遞,本文給大家介紹go處理線程之間的交互示例代碼,感興趣的朋友一起看看吧
    2024-10-10
  • Go語言中的字符串拼接方法詳情

    Go語言中的字符串拼接方法詳情

    本文介紹Go語言中的string類型、strings包和bytes.Buffer類型,介紹幾種字符串拼接方法的相關(guān)資料,需要的朋友可以參考一下,希望對你有所幫助
    2021-10-10

最新評論

清徐县| 遂川县| 阳西县| 五河县| 长泰县| 青阳县| 灌南县| 开鲁县| 来安县| 运城市| 西宁市| 郴州市| 胶南市| 万全县| 嵩明县| 鹤山市| 松江区| 永清县| 黄平县| 凯里市| 济宁市| 白城市| 禄丰县| 启东市| 清镇市| 句容市| 沾化县| 碌曲县| 包头市| 平南县| 沽源县| 云和县| 钟山县| 开平市| 中方县| 繁峙县| 南昌县| 珠海市| 汝南县| 汉中市| 临夏市|