緣起
打印字符串是編程中經(jīng)常需要處理的任務(wù), 看路飛學(xué)院的視頻了解到Python的"格式化輸出"功能.
它可以高效地打印多個字符串, 并且進行美化.
定義
"字符串的格式化輸出"就是預(yù)先制定一個模版, 在這個模版中先空出后續(xù)需要輸入的內(nèi)容, 最后, 再將內(nèi)容填充到這些空出的位置.
那么, 如何讓計算機知道哪些位置是需要填寫內(nèi)容的呢?
那么, 就需要約定一些特殊的符號, 標記這些位置.
這些特殊符號被稱為"占位符" (很形象, 占住位置. 就像大學(xué)圖書館經(jīng)??吹降? 桌子上放本書, 宣示這個座位已經(jīng)有人占了)
看一個簡單的例子:
print('這款 %s 的售價是 %d 元' % ('iPhone', 4600))
輸出結(jié)果是
這款 iPhone 的售價是 4600 元
其中, %s 和 %d 是占位符 (%s表示后續(xù)要填入的是 String / 字符串, %d 表示后續(xù)要填入的是 digit / 整數(shù)),
而后面的 ('iPhone', 4600) 則會會在打印時分別填入 %s 和 %d 所處的位置
格式化輸出的 3 種方式
1. 最經(jīng)典
也就是之前那個例子
print('這款 %s 的售價是 %d 元, 我愛 %s.' % ('Mac', 13000, 'Mac'))
輸出結(jié)果是:
這款 Mac 的售價是 13000 元, 我愛 Mac.
常用的占位符:
| 占位符 | 指代 |
|---|---|
| %s | string / 字符串 |
| %d | digit / 整數(shù) |
| %f | float / 浮點數(shù) |
| %.2f | float / 浮點數(shù), 保留 2 位小數(shù) |
| %r | raw / 原生的數(shù)據(jù) (調(diào)試用) |
2. 字典
my_dic = {
'name': 'Mac',
'price': 13000
}
print('這款 %(name)s 的售價是 %(price)d 元, 我愛 %(name)s.' % my_dic)
輸出:
這款 Mac 的售價是 13000 元, 我愛 Mac.
3. format 函數(shù)
print('這款 {0} 的售價是 {1} 元, 我愛 {0}.'.format('Mac', 13000))
輸出結(jié)果是:
print('這款 {0} 的售價是 {1} 元, 我愛 {0}.'.format('Mac', 13000))
注意:
-
{}里面的序號和format()里面的內(nèi)容順序是對應(yīng)的, 而且{}里面的序號是從 0 開始的 -
{}里面也可以不寫數(shù)字, 那么{}的數(shù)量和format()里面的內(nèi)容數(shù)量要一致:
print('這款 {} 的售價是 {} 元, 我愛 {}.'.format('Mac', 13000, 'Mac'))
輸出為:
這款 Mac 的售價是 13000 元, 我愛 Mac.
參考文章
- 跟老齊學(xué)Python
- 路飛學(xué)院 Python 視頻課程
文章歷史
- 2017/06/28 (第一次發(fā)布)
如果我的文章對你有用, 希望給些改進的建議, 或者打個"喜歡"
^_^