格式化字串format函數,字串format函數
Format
一、文法
通過{} 和 : 來代替 %
二、案例
name = "bigberg"age = 18msg1="my name is {},and my age is {}.".format(name,age)msg2="my name is {0},and my age is {1}.".format(name,age)msg3="my name is {_name},and my age is {_age}.".format(_name=name,_age=age)msg4="my name is {1},and my age is {0},and my brother's age is {0}.".format(age,name)print(msg1)print(msg2)print(msg3)print(msg4)#輸出my name is bigberg,and my age is 18.my name is bigberg,and my age is 18.my name is bigberg,and my age is 18.my name is bigberg,and my age is 18,and my brother's age is 18.
字串的format函數可以接受不限個參數,位置可以不按順序,可以不用或者用多次,不過2.6不可為空{},2.7以後才可以。
三、下標擷取元素
info = ["bigberg",18]msg='{0[0]},{0[1]}'.format(info)print(msg)#輸出bigberg,18
四、格式限定符
文法是 {:}
1.填充與對齊
填充和對齊常一起使用
^、<、>分別是置中 、靠左對齊、靠右對齊 ,後面頻寬度。 :後面帶填充的字元,只能是一個字元,不指定預設用空格填充。
number = 234print('{:>8}'.format(number))print('{:*>8}'.format(number))#輸出 234*****234
2.精度與類型f
num = 123.23423print('{:.2f}'.format(num))#輸出123.23
其中 .2表示長度為2的精度,f 表示 float 類型
3.進位
b、d、o、x 分別表示 二進位、十進位、八進位和十六進位
num = 25print('{:b}'.format(num))print('{:d}'.format(num))print('{:o}'.format(num))print('{:x}'.format(num))#輸出11001253119