format()

2018-03-30  本文已影响0人  你好_强迫症

1、使用位置参数

>>> li = ['hoho',18]

>>>print( 'my name is {} ,age {}'.format('hoho',18))

        'my name is hoho ,age 18'

位置参数不受顺序约束

 >>> 'my name is {1} ,age {0}'.format(10,'hoho')

         'my name is hoho ,age 10'

>>> 'my name is {1} ,age {0} {1}'.format(10,'hoho')

         'my name is hoho ,age 10 hoho'

传入位置参数列表可用*列表

 >>> 'my name is {} ,age {}'.format(*li)

          'my name is hoho ,age 18'

2、使用关键字参数

>>> hash = {'name':'hoho','age':18}

>>> 'my name is {name},age is {age}'.format(name='hoho',age=19)

        'my name is hoho,age is 19'

可用字典当关键字参数传入值,字典前加**

>>> 'my name is {name},age is {age}'.format(**hash)

         'my name is hoho,age is 18'

3、填充与格式化

格式:‘{ 索引:[填充字符][对齐方式][宽度] }’.format()

>>> '{0:*>10}'.format(1) ##右对齐 ,共占10个字符宽度

         '********11'

>>> '{:*>10}'.format(3,4,5)

         '*********3'

 >>> '{:*>10}{:*>10}{:*>10}'.format(3,4,5)

          '*********3*********4*********5'

>>> '{0:*<10}'.format(10) ##左对齐

 '10********'

>>> '{0:*^10}'.format(10) ##居中对齐

 '****10****'

 4、精度与进制 

>>> '{0:.2f}'.format(1/3)    #保留两位小数

       '0.33'

>>> '{:,}'.format(12369132698) #千分位格式化

         ' 12,369,132,698'

>>> '{0:b}'.format(10) #二进制

       '1010'

>>> '{0:o}'.format(10) #八进制

        '12'

>>> '{0:x}'.format(10) #16进制

        'a'

5、使用索引

>>> li =['hoho', 18]

>>> 'name is {0[0]} age is {0[1]}'.format(li)       ???????

       'name is hoho age is 18

上一篇 下一篇

猜你喜欢

热点阅读