三種寫法:
花括號內省略欄位名,傳遞位置引數。
# 省略欄位名傳遞位置引數
print('我叫{},今年{}歲。'.format('小明', 18))
"""我叫小明,今年18歲。
"""# 花括號個數可以少於位置引數的個數
print('我愛吃{}和{}。'.format('香蕉', '蘋果', '大鴨梨'))
"""我愛吃香蕉和蘋果。
"""# 花括號個數多於位置引數的個數則會報錯
# print('我還吃{}和{}。'.format('西紅柿'))
"""indexerror: tuple index out of range
"""
以數字形式的欄位名傳遞位置引數
# 通過數字形式的簡單欄位名傳遞位置引數
print('身高,家住。'.format(1.8, '銅鑼灣'))
"""身高1.8,家住銅鑼灣
"""# 數字形式的簡單欄位名可以重複使用。
print('我愛。\n她今年。\n也愛我。'.format('阿香', 17))
"""我愛阿香。
她今年17。
阿香也愛我。
"""# 體會把所有位置引數整體當成元組來取值
print('阿香愛吃、和。'.format(
'榴蓮', '臭豆腐', '皮蛋', '鯡魚罐頭', '螺獅粉'))
"""阿香愛吃臭豆腐、鯡魚罐頭和榴蓮。
"""# 嘗試一下越界錯誤
# print(''.format('錯誤用法'))
"""indexerror: tuple index out of range
"""
# 使用變數名形式的簡單欄位名傳遞關鍵字引數
print('我大哥是,今年歲。'.format(name='阿飛', age=20))
"""我大哥是阿飛,今年20歲。
"""# 關鍵字引數的順序可以隨意調換
print('我大哥是,今年歲。'.format(age=20, name='阿飛'))
"""我大哥是阿飛,今年20歲。
"""
# 混合使用數字形式和變數名形式的欄位名
# 可以同時傳遞位置引數和關鍵字引數
print('這是乙個關於、和的故事。'.format(
'小明', '阿飛', girl='阿香'))
"""這是乙個關於小明、阿飛和阿香的故事。
"""# 但是關鍵字引數必須位於位置引數之後
# print('這是乙個關於、和的故事。'.format(
# '小明', girl='阿香' , '阿飛'))
"""syntaxerror: positional argument follows keyword argument
"""# 數字也可以省略
print('這是乙個關於{}、{}和的故事。'.format(
'小明', '阿飛', girl='阿香'))
'''這是乙個關於小明、阿飛和阿香的故事。
'''# 但是省略欄位名不能和數字形式的欄位名同時出現
# print('這是乙個關於{}、和的故事。'.format(
# '小明', '阿飛', girl='阿香'))
"""valueerror: cannot switch from automatic field numbering to manual field specification
"""
str.format()
方法還可以使用*元組
和**字典
的形式傳參,兩者可以混合使用。
位置引數、關鍵字引數、*元組
和**字典
也可以同時使用,但是要注意,位置引數要在關鍵字引數前面,*元組
要在**字典
前面。
# 使用元組傳參
infos = '鋼鐵俠', 66, '小辣椒'
print('我是{},身價{}億。'.format(*infos))
"""我是鋼鐵俠,身家66億。
"""print('我是,身價億。'.format(*infos))
"""我是小辣椒,身家66億。
"""# 使用字典傳參
venom =
print('我是,我怕。'.format(**venom))
"""我是毒液,我怕火。
"""# 同時使用元組和字典傳參
hulk = '綠巨人', '拳頭'
captain =
print('我是{}, 我怕。'.format(*hulk, **captain))
print('我是, 我怕。'.format(*hulk, **captain))
"""我是綠巨人, 我怕盾。
我是美國隊長, 我怕拳頭。
"""# 同時使用位置引數、元組、關鍵字引數、字典傳參
# 注意:
# 位置引數要在關鍵字引數前面
# *元組要在**字典前面
tup = '鷹眼',
dic =
text = '我是,我怕。我是,我用。'
text = text.format(
*tup, '黑寡婦', weakness='男人', **dic)
print(text)
"""我是黑寡婦,我怕男人。我是鷹眼,我用箭。
"""
Python format函式詳解
python從2.6開始支援format,新的更加容易讀懂的字串格式化方法,從原來的 模式變成新的可讀性更強的 花括號宣告 用於渲染前的引數引用宣告,花括號裡可以用數字代表引用引數的序號,或者 變數名直接引用。從format引數引入的變數名 冒號 字元位數宣告 空白自動填補符 的宣告 千分位的宣告 ...
python format格式輸出
內容摘自 相對基本格式化輸出採用 的方法,format 功能更強大,該函式把字串當成乙個模板,通過傳入的引數進行格式化,並且使用大括號 作為特殊字元代替 1 不帶編號,即 2 帶數字編號,可調換順序,即 3 帶關鍵字,即 1 print format hello world 不帶字段 2 hello...
python format 用法詳解
str.format 這個特性從python2.6而來 其實實現的效果和 有些類似 不過有些地方更方便 通過位置對映 in 1 format kzc 18 out 1 kzc,18 in 2 format kzc 18 注意python2.6並不支援寫為空 out 2 kzc,18 in 3 for...