【Go言語】fmt.Printfによるフォーマット出力

【Go】 Printfの使い方

Go言語のfmt.Printfの使い方を説明します。
同じfmtパッケージのPrintlnとは異なりますのでご注意ください。

Printf関数は値を任意のフォーマットに変換してコンソールに出力することができます。

Printf関数では第一引数のダブルクォーテーション内に指定フォーマット、
第二引数以降にフォーマットしたい値及び、変数を指定します。

package main

import (
	"fmt"
)

func main() {
	i := 100
	fmt.Printf("number: %v\n", i)
}

こちらは、第一引数の文字列内の%vの部分を変数iの値に置き換えるという意味になります。

Printlnと異なり、Printfでは出力時に改行が行われませんので、より見やすい形式にするため慣習的にフォーマットの指定に続けて \(バックスラッシュ)とnを記述します。

(出力結果)

number: 100

様々なフォーマット

Printfで指定できるフォーマットの種類はかなりの数が用意されていますが、よく使われるものをピックアップします。

%v 値そのもの
%T 値の型
%d 整数値を10進数
%s 文字列値
%f 浮動小数点数形式
%t bool値
%p ポインタ

package main

import "fmt"

func main() {
	var num int = 100
	p := &num
	var text string = "Golang"
	var b bool = true
	fmt.Printf("変数numの値: %v\n", num)
	fmt.Printf("変数numの型: %T\n", num)
	fmt.Printf("変数numのポインタ: %p\n", p)
	fmt.Printf("num:%d, text:%s, b:%t\n", num, text, b)
}

 

(出力結果)

変数numの値: 100
変数numの型: int
変数numのポインタ: 0x1400009c018
num:100, text:Golang, b:true

Follow me!