'''
遇到問題沒人解答?小編創建了一個Python學習交流QQ群:579817333
尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學習教程和PDF電子書!
'''#!/usr/bin/python# -*- coding: utf-8 -*-'''
help(str.format)
Help on method_descriptor:format(...)S.format(*args, **kwargs) -> stringReturn a formatted version of S, using substitutions from args and kwargs.The substitutions are identified by braces ('{' and '}').
'''print"{{a}}".format()#{a}print"{a}".format()#error,里面沒有為a的參數print"{a} - {b}".format(a =100,b =200)#100 - 200print"{0},{0}".format(11,22)#11,11print"{0},{0},{1},{2}".format(11,22,33)# 11,11,22,33 中括號里面的數代表第幾個參數print"{0:3d},{1:4s},{1:5s},{2}".format(11,"a",33)# ' 11,a ,a ,33'print"{0:=>+011.3f};".format(12.12345)#====+12.123;用=來填充,右對齊,因為已經用=來填充了,0無效,寬度11,小數點精度后精度為3,類型為浮點數print"{0:>+011.3f};".format(12.12345)#0000+12.123;a ="test"print"{0:^10}".format(a)#testprint"{0!s:^10}".format(a)#testprint"{0!r:^10}".format(a)#'test'#通過下標也行
a=[1,2]print'{0[0]},{0[1]}'.format(a)#1,2#對象屬性classTest(object):def__init__(self,name,age):self.name,self.age = name,agedef__str__(self):return'This boy is {self.name},is {self.age} old'.format(self=self)defstr(self):return self.__str__()
a = Test('lilei',12)printstr(a)#This boy is lilei,is 12 oldprint a.str()#This boy is lilei,is 12 old#format函數單獨使用format('abc',"10s")#'abc '
總而言之,將format()里面的參數視為一個正常的參數,這個對象該有的屬性在字符串(s.format()中的 s )里面也能使用!!!