golang 的fmt 包實(shí)現(xiàn)了格式化I/O函數(shù),類似于C的 printf 和 scanf先蒋。
# 定義示例類型和變量
type Human struct {
Name string
}
var people = Human{Name:"zhangsan"}
普通占位符
占位符 說明 舉例 輸出
%v 相應(yīng)值的默認(rèn)格式税朴。 Printf("%v", people) {zhangsan},
%+v 打印結(jié)構(gòu)體時(shí)宰译,會添加字段名 Printf("%+v", people) {Name:zhangsan}
%#v 相應(yīng)值的Go語法表示 Printf("#v", people) main.Human{Name:"zhangsan"}
%T 相應(yīng)值的類型的Go語法表示 Printf("%T", people) main.Human
%% 字面上的百分號不皆,并非值的占位符 Printf("%%") %
布爾占位符
占位符 說明 舉例 輸出
%t true 或 false进苍。 Printf("%t", true) true
整數(shù)占位符
占位符 說明 舉例 輸出
%b 二進(jìn)制表示 Printf("%b", 5) 101
%c 相應(yīng)Unicode碼點(diǎn)所表示的字符 Printf("%c", 0x4E2D) 中
%d 十進(jìn)制表示 Printf("%d", 0x12) 18
%o 八進(jìn)制表示 Printf("%d", 10) 12
%q 單引號圍繞的字符字面值加缘,由Go語法安全地轉(zhuǎn)義 Printf("%q", 0x4E2D) '中'
%x 十六進(jìn)制表示,字母形式為小寫 a-f Printf("%x", 13) d
%X 十六進(jìn)制表示觉啊,字母形式為大寫 A-F Printf("%x", 13) D
%U Unicode格式:U+1234拣宏,等同于 "U+%04X" Printf("%U", 0x4E2D) U+4E2D
浮點(diǎn)數(shù)和復(fù)數(shù)的組成部分(實(shí)部和虛部)
占位符 說明 舉例 輸出
%b 無小數(shù)部分的,指數(shù)為二的冪的科學(xué)計(jì)數(shù)法杠人,
與 strconv.FormatFloat 的 'b' 轉(zhuǎn)換格式一致勋乾。例如 -123456p-78
%e 科學(xué)計(jì)數(shù)法,例如 -1234.456e+78 Printf("%e", 10.2) 1.020000e+01
%E 科學(xué)計(jì)數(shù)法搜吧,例如 -1234.456E+78 Printf("%e", 10.2) 1.020000E+01
%f 有小數(shù)點(diǎn)而無指數(shù)市俊,例如 123.456 Printf("%f", 10.2) 10.200000
%g 根據(jù)情況選擇 %e 或 %f 以產(chǎn)生更緊湊的(無末尾的0)輸出 Printf("%g", 10.20) 10.2
%G 根據(jù)情況選擇 %E 或 %f 以產(chǎn)生更緊湊的(無末尾的0)輸出 Printf("%G", 10.20+2i) (10.2+2i)
字符串與字節(jié)切片
占位符 說明 舉例 輸出
%s 輸出字符串表示(string類型或[]byte) Printf("%s", []byte("Go語言")) Go語言
%q 雙引號圍繞的字符串,由Go語法安全地轉(zhuǎn)義 Printf("%q", "Go語言") "Go語言"
%x 十六進(jìn)制滤奈,小寫字母摆昧,每字節(jié)兩個(gè)字符 Printf("%x", "golang") 676f6c616e67
%X 十六進(jìn)制,大寫字母蜒程,每字節(jié)兩個(gè)字符 Printf("%X", "golang") 676F6C616E67
指針
占位符 說明 舉例 輸出
%p 十六進(jìn)制表示绅你,前綴 0x Printf("%p", &people) 0x4f57f0
其它標(biāo)記
占位符 說明 舉例 輸出
+ 總打印數(shù)值的正負(fù)號;對于%q(%+q)保證只輸出ASCII編碼的字符昭躺。
Printf("%+q", "中文") "\u4e2d\u6587"
- 在右側(cè)而非左側(cè)填充空格(左對齊該區(qū)域)
# 備用格式:為八進(jìn)制添加前導(dǎo) 0(%#o) Printf("%#U", '中') U+4E2D
為十六進(jìn)制添加前導(dǎo) 0x(%#x)或 0X(%#X)忌锯,為 %p(%#p)去掉前導(dǎo) 0x;
如果可能的話领炫,%q(%#q)會打印原始 (即反引號圍繞的)字符串偶垮;
如果是可打印字符,%U(%#U)會寫出該字符的
Unicode 編碼形式(如字符 x 會被打印成 U+0078 'x')。
' ' (空格)為數(shù)值中省略的正負(fù)號留出空白(% d)似舵;
以十六進(jìn)制(% x, % X)打印字符串或切片時(shí)脚猾,在字節(jié)之間用空格隔開
0 填充前導(dǎo)的0而非空格;對于數(shù)字砚哗,這會將填充移到正負(fù)號之后
golang fmt格式“占位符”
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
- 文/潘曉璐 我一進(jìn)店門铣缠,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人昆禽,你說我怎么就攤上這事∮ィ” “怎么了醉鳖?”我有些...
- 文/不壞的土叔 我叫張陵,是天一觀的道長哮内。 經(jīng)常有香客問我盗棵,道長,這世上最難降的妖魔是什么北发? 我笑而不...
- 正文 為了忘掉前任纹因,我火速辦了婚禮,結(jié)果婚禮上琳拨,老公的妹妹穿的比我還像新娘瞭恰。我一直安慰自己,他們只是感情好狱庇,可當(dāng)我...
- 文/花漫 我一把揭開白布惊畏。 她就那樣靜靜地躺著,像睡著了一般密任。 火紅的嫁衣襯著肌膚如雪颜启。 梳的紋絲不亂的頭發(fā)上,一...
- 文/蒼蘭香墨 我猛地睜開眼暮的,長吁一口氣:“原來是場噩夢啊……” “哼笙以!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起冻辩,我...
- 序言:老撾萬榮一對情侶失蹤猖腕,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后恨闪,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體倘感,經(jīng)...
- 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
- 正文 我和宋清朗相戀三年咙咽,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了老玛。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
- 正文 年R本政府宣布,位于F島的核電站愚战,受9級特大地震影響娇唯,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜寂玲,卻給世界環(huán)境...
- 文/蒙蒙 一塔插、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧拓哟,春花似錦想许、人聲如沸。這莊子的主人今日做“春日...
- 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至逢倍,卻和暖如春捧颅,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背较雕。 一陣腳步聲響...
- 正文 我出身青樓扣典,卻偏偏與公主長得像妆毕,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子贮尖,可洞房花燭夜當(dāng)晚...