zoukankan      html  css  js  c++  java
  • % 格式化

    参考原文:http://developer.51cto.com/art/201003/189039.htm

    1. 格式化运算符:%

    2. 使用格式:

    3. 说明

    (1)在python格式化中,所有东西都可以转换成string类型(即使用%s 可以格式化所有数据)因此,如果没有什么特殊需求完全可以全部使用’%s‘来标记。

    例如 %s 可以格式化整型数据:

    >>> i = 17
    >>> t = 'i am %s' % i
    >>> t
    'i am 17'

    例如 %s 可以格式化字符型数据:

    >>> i = '17'
    >>> t = 'i am %s' % i
    >>> t
    'i am 17'

    例如 %s 可以格式化浮点型数据:

    >>> i = 17.222
    >>> t = 'i am %s' % i
    >>> t
    'i am 17.222'

    之所以能这样,是因为当电脑发现第一个值不是%s时,会先调用整型数的函数,把第一个值也就是1转成string类型,然后再调用str()函数来输出。

    (2)浮点数的格式化技巧

    第一,%f 默认格式化为6位小数的浮点数,如下,

    >>> s = 1.23
    >>> print 's is %f' % s
    s is 1.230000

    第二,%f 指定保留的小数位数,如下,

    >>> s = 1.23234
    >>> print 's is %.3f' % s
    s is 1.232

    第三,%f 指定输出字符串长度,如下,

    >>> s = 11.23234
    >>> print 's is %10.1f' % s
    s is       11.2

    注释:指定输出10个字符串,其中小数位数1位,不够就在字符串前用空格填充。

    >>> s = 11.23234
    >>> print 's is %010.1f' % s
    s is 00000011.2

    注释:指定输出10个字符串,其中小数位数1位,不够就在字符串前用0填充。

    有时候在%6.2f这种形式中,6和2也不能事先指定,会在程序运行过程中再产生,可以用%*.*f的形式,当然在后面的”要输出的值组“中包含那两个*的值。比如:'%*.*f' % (6, 2, 2.345)就相当于'%6.2f' % 2.345。

    第四,据说是最复杂的一种,格式化dictionary

    ‘%(name)s:%(score)06.1f' %{'score':9.5, 'name':'newsim'}
    这种形式只用在要输出的内容为dictionary时。小括号中的(name)和(score)对应于后面的键值对中的键.

  • 相关阅读:
    spring 源码解析(三)
    spring 源码解析(三)
    spring 源码解析(三)
    spring 源码解析(三) 容器的实现
    spring 源码解析(二) 3.修改编译生成,生成自定义版本。
    spring 源码解析(二) 1.开发环境,环境的搭建。
    思维-J
    思维-Ayoub's function
    图-D
    思维-Codeforces 1294D
  • 原文地址:https://www.cnblogs.com/simone-wenwen/p/4747707.html
Copyright © 2011-2022 走看看