我們在生活中經常會碰到類似'尊敬的 *** 使用者你好!你 xx 月的話費是 xx,剩餘餘額為 xx' 之類的話,而 ***裡面的內容都是也是根據變數而變化的,所以需要一種簡便的格式化字串的方式。那麼如何將輸出的字串格式化呢,請往下面看:
學過c語言的應該知道在c語言中字串的格式化方式,而在 python 中所採用的格式化方式和 c 語言是一致的,都是用 % 實現,如:
print( 'hello, %s' % 'world')
輸出結果:
hello, world
上面用到的 % 運算子就是用來格式化字串的。在字串內部, %s表示用字串替換, %d 表示用整數替換。有幾個 %? 佔位符,後面就跟幾個變數或者值,順序要對應好。如果只有乙個 %? ,那麼括號可以省略。常見的佔位符有 %d 整數、%f 浮點數、%s 字串、%x 十六進製制整數。其中,格式化整數和浮點數還可以指定是否補 0 和整數與小數的位數:
print('%2d-%02d' % (3, 1))
print('%.2f' % 3.1415926)
執行結果:
3-01
3.14
如果在使用的時候不太確定應該用什麼,那麼就用%s ,%s 永遠起作用,它會把任何資料型別轉換為字串:
print( 'age: %s. final: %s' % (25, true))
執行結果:
age: 25. final: true
有些時候,可能會遇到字串裡面的 % 是乙個普通字元的情況,這個時候就需要轉義,用 %% 來表示乙個 % :
print( 'final rate: %d %%' % 3)
執行結果:
final rate: 3 %
提個建議:在格式化字串的時候,可以用 python 的互動式命令列來進行測試,既簡單又方便快捷。 字串格式化
sprintf snprintf snprintf std stringstream std strstream boost lexical cast boost format cstring format 1 sprintf 使用 sprintf 不安全,輕則破壞資料的準確性,重則程式崩潰。請看下...
格式化字串
通常在使用字串的時候,會對字串進行格式化,然後輸出或呼叫 一般我們使用替換標記對字串進行格式化 string str1 string.format add is 1,2,3 而且在c 中的替換標記可以以任意順序和次數出現在格式化字串中,但替換值是按順序排的,而且替換標記不能超出索引範圍 string...
字串格式化
例如 string s hello map.put target world string res format s,map 有什麼用呢?比如在some.properties中配置模板字串,但是如果用 這種方式,在配置了spring讀取properties注入變數的時候,這個變數就找不到會報錯。這個...