python3 format格式化输出

发布时间:2019-08-08 07:46:36编辑:auto阅读(1451)

    使用 format 方法,可以很方便的对字符串进行格式化输出

    1. 使用参数位置格式

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

    >>> 'my name is wang, wang age is 10'

     

    2.使用参数名

    'my name is {name}, {name} age is {age}'.format(name='wang',age=10)

    >>> 'my name is wang, wang age is 10'

     

    3.对于数组,可以这样

    msg=['wang',10]

    'my name is {0}, {0} age is {1}'.format(*msg)

    >>> 'my name is wang, wang age is 10'

     

    4.对于字典,可以这样

    msg={'name':'wang','age':10}

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

    >>> 'my name is wang, wang age is 10'

     

    5.设置格式化的输出宽度、填充、对齐方式

    # 左对齐

    '{:*<10}'.format('分割线')

    >>> '分割线*******'

    # 居中

    '{:*^10}'.format('分割线')

    >>> '***分割线****'

    # 右对齐

    '{:*>10}'.format('分割线')

    >>> '*******分割线'

     

    6.设置输出格式

    # 输出小数

    '{0:.2f}'.format(12.567)

    >>> '12.57'

     

    # 输出二进制

    '{0:b}'.format(10)

    >>> '1010'

     

    # 输出八进制

    '{0:o}'.format(10)

    >>> '12'

     

    # 输出十六进制

    '{0:x}'.format(20)

    >>> '14'

     

    # 输出千分位分隔符

    '{:,}'.format(12369132698)

    >>> '12,369,132,698'

     

    # 采用科学计数

    '{:e}'.format(12369132698)

    >>> '1.236913e+10'

     

    # 根据数字位数选择输出格式

    '{0:g}  {1:g}'.format(12369132698,12.2)

    >>> '1.23691e+10  12.2'

     

    传统 % 格式化备忘

     

关键字