zoukankan      html  css  js  c++  java
  • python format

    python自2.6后,新增了一种格式化字符串函数str.format(),威力十足,可以替换掉原来的%

    :以下操作版本是python2.7

    映射示例

    语法

    通过{} 和 :  替换 %

    通过位置

    >>> '{0} is {1}'.format('jihite', '4 years old')
    'jihite is 4 years old'
    >>> '{0} is {1} {0}'.format('jihite', '4 years old')
    'jihite is 4 years old jihite'

    通过format函数可以接受不限参数个数、不限顺序

    通过关键字

    >>> '{name}:{age}'.format(age=4,name='jihite')
    'jihite:4'
    >>> '{name}:{age}'.format(age=4,name='jihite',locate='Beijing')
    'jihite:4'

    format括号内用=给变量赋值

    通过对象属性

    >>> class Person:
    ...     def __init__(self, name, age):
    ...         self.name,self.age = name, age
    ...     def __func__(self):
    ...         return "This guy is {self.name}, is {self.age} old".format(self=self)
    ... 
    >>> s =Person('jihite', 4)
    >>> s.__func__()
    'This guy is jihite, is 4 old'

    通过下标

    >>> '{0[0]} is {0[1]} years old!'.format(['jihite', 4])
    'jihite is 4 years old!'
    >>> '{0} is {1} years old!'.format('jihite', 4)
    'jihite is 4 years old!'

    其实就是通过位置

    格式限定符

    通过{} : 符号

    填充和对齐

    ^<>分别表示居中、左对齐、右对齐,后面带宽度

    >>> '{:>10}'.format('jihite')
    '    jihite'
    >>> '{:<10}'.format('jihite')
    'jihite    '
    >>> '{:^10}'.format('jihite')
    '  jihite  '

    精度和类型f

    精度常和f一起使用

    >>> '{:.2f}'.format(3.1415)
    '3.14'
    >>> '{:.4f}'.format(3.1)
    '3.1000'

    进制转化

    >>> '{:b}'.format(10)
    '1010'
    >>> '{:o}'.format(10)
    '12'
    >>> '{:d}'.format(10)
    '10'
    >>> '{:x}'.format(10)
    'a'

    其中b o d x分别表示二、八、十、十六进制

    千位分隔符

    >>> '{:,}'.format(1000000)
    '1,000,000'

      >>> '{:,}'.format(100000.23433)
      '100,000.23433'

    >>> '{:,}'.format('abcedef')
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    ValueError: Cannot specify ',' with 's'.

    这种情况只针对数字

  • 相关阅读:
    echo和tee的使用
    cut列的截取
    BZOJ1414: [ZJOI2009]对称的正方形(二维hash)
    BZOJ1010: [HNOI2008]玩具装箱toy
    BZOJ2588: Spoj 10628. Count on a tree(主席树)
    BZOJ3991: [SDOI2015]寻宝游戏(set+lca / 虚树)
    BZOJ2286: [Sdoi2011]消耗战(虚树)
    Linux
    奇妙的棋盘(建图+搜索)
    礼物(动态规划)
  • 原文地址:https://www.cnblogs.com/kaituorensheng/p/5709970.html
Copyright © 2011-2022 走看看