Go 言語では、フォーマットされた出力操作を実行するために % をよく使用します。% の使用法は非常に柔軟です。Golang での % の使用法と関連知識を紹介します。
%最も基本的な使用方法は、変数を指定された形式に置き換えるために使用することです。たとえば、次のコードは i を %d に置き換えます。%d は、出力変数 i が 10 進整数であることを示します。
i := 100 fmt.Printf("i = %d\n", i) //输出 i = 100
% 記号の後にいくつかのフラグを追加して、出力形式を変更することもできます。たとえば、%f は浮動小数点数を表し、%.2f は小数点以下 2 桁の浮動小数点数を表し、%s は文字列を表します。
pi := 3.1415926 fmt.Printf("pi = %.2f\n", pi) //输出 pi = 3.14 str := "hello go" fmt.Printf("str = %s\n", str) //输出 str = hello go
% の後のフラグは、変換ルールを変更して、出力の幅と精度を制御できます。
たとえば、d を使用して出力幅を 10 文字に設定できます (スペースによるパディングが不十分です)。
i := 100 fmt.Printf("|%10d|\n", i) //输出 | 100|
また、幅が足りない出力を 0 で埋めたい場合は、0d を使用できます。
i := 100 fmt.Printf("|%010d|\n", i) //输出 |0000000100|
golang では、% を使用して日付と時刻の書式設定を行うこともできます。例:
t := time.Now() //获取当前时间 fmt.Printf("%04d-%02d-%02d %02d:%02d:%02d\n", t.Year(), t.Month(), t.Day(), t.Hour(), t.Minute(), t.Second()) //输出:2022-04-05 11:42:34
時刻形式の一般的な形式の説明は次のとおりです:
Go 言語では、書式設定された出力をカスタマイズすることもできます。 fmt パッケージはフォーマット幅や精度調整の機能を提供しますが、フォーマットされた出力動作をカスタマイズすることはできません。フォーマットされた出力をカスタマイズする必要がある場合は、text/template または html/template を使用できます。
type Person struct { Name string Age int } func (p *Person) String() string { return fmt.Sprintf("%s is %d years old.", p.Name, p.Age) } func main() { p := &Person{"Jack", 23} fmt.Printf("%s\n", p) //输出 Jack is 23 years old. }
上記のコードは、Person 構造タイプを定義し、それに対して String() メソッドを実装し、指定された書式設定された出力を返します。
使用率 (%) に関しては、上記はいくつかの一般的なアプリケーション シナリオと手法ですが、日々の開発で検討および適用する必要がある、より高度で柔軟な操作もいくつかあります。
以上がgolang の使用率と関連知識の紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。