Python 有關於格式化字符串

與C++/java不一樣,我覺得Python的字符串格式化更好用些


#1.普通常見的
"%s,格式化" % "普通的一個的"
"%s,%s,格式化" % ("有多個參數的","普通的")

#2.字典的,和普通的一起處理
d = {'key': "字典的", "key2":"多個的", "vvvv":""}
"%(key)s,%(key2)s,格式化" % d

#位置參數與關鍵字參數和下標參數一起處理
"{0}-----{1}-----{0}".format("位置參數", "中間的")
"{}-----{}----{}".format("第一個","第二個","3一個也不能少")
#關鍵字參數
"{key1},{key2}".format("關鍵字參數", "一個也不能少")
#下標參數
li = ["p1下標參數", "p2不可以越界"]
"{0[0]} != {0[1]}".format(li)
#模板
from string import Template
s = Template("$pos1 $pos1  $pos2")
print s.substitute(pos1="名字爲pos1的", pos2="名字爲$pos2的")

#語法簡單可是爲什麼要有這麼多,有啥用?
#舉個例子
#我要組成一個字符串,但是目前只有一部分,而另一部分只有在程序運行後纔可知道
#我就可以用這種方法去處理
#但是每一個相同的處理參數量必須要一次滿足,否則出錯
#可以有
#"開始需要一個字符串,%s" % "繼續要格式化%d" -->"開始需要一個字符串,繼續要格式化%d"
#"開始需要一個字符串,繼續要格式化一個數字%d" % 12345
#拋磚引玉

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章