1. 程式人生 > >python學習筆記之基礎操作(五)字串格式化(1)%格式化

python學習筆記之基礎操作(五)字串格式化(1)%格式化

格式化基本格式

s = "i am %s ,i am %d years old ,and i like %s"%("haiyang",20,"zhu")
print(s)
#區分資料型別,無法自動在字串和數字之間轉換,型別不對會報錯,後面和前面引數要一一對應,否則會報錯
s = "i am %s ,i am %d years old ,and i like %s"%("haiyang","20","zhu")
print(s)
s = "i am %s ,i am %d years old ,and i like %s"%("haiyang",20)
print(s)
i am haiyang ,i am 20 years old ,and i like zhu
i am haiyang ,i am 20 years old ,and i like zhu



---------------------------------------------------------------------------

TypeError                                 Traceback (most recent call last)

<ipython-input-4-0ef5cd109f66> in <module>()
      7 #s = "i am %s ,i am %d years old ,and i like %s"%("haiyang","20","zhu")
      8 print(s)
----> 9 s = "i am %s ,i am %d years old ,and i like %s"%("haiyang",20)
     10 print(s)


TypeError: not enough arguments for format string

定義變數名字,使用字典的方式格式化變數

s = "i am %(name)s ,i am %(age)d years old ,and i like %(girl)s"%{"name":"haiyang","age":20,"girl":"zhu"}
print(s)
i am haiyang ,i am 20 years old ,and i like zhu

定義輸出的格式,字串,小數均可以控制輸出位數

s = "i am %.2s ,i am %d years old ,and i like %.2f"%("haiyang",20,20.2324324)
print(s)
i am ha ,i am 20 years old ,and i like 20.23