摘要: Python中 %s 、 %r

Python中也有类似于C中的 printf()格式输出,使用 % 运算符,格式:

格式标记字符串 % 要输出的值组

右边的”值组“若有两个及以上的值则需要用小括号括起来,中间用逗号隔开。

重点看左边部分。其最简单的形式为: %code。 ,其中的code可以有多种,而在Python中,所有的输入都可以转换为 string 类型,所以没有特殊要求时,可以使用 ”%s“ 标记。

 >>>'%s %s %s' % (1,2.3, ['one', 'two', 'three']) 

输出为:

 "1 2.3  ['one', 'two', 'three']"
>>>

输出按照左边的标记输出。第一个和第二个是数字,同样可以输出。该过程中,Python发现第一个值 ‘1’ 不是 string 类型时调用 str() 函数来进行输出。第二个数值同理输出。

常用的还有 repr() 函数,该函数可以用 %r 标记。除此之外,还有很多类似的code:

整型数: %d

无符号整型数:%u

八进制: %o

十六进制: %x  %X

浮点数: %f

科学计数法: %e   %E

根据数值的不同,自动选择 %e 或 %f 。同 ‘/’ 用来进行转义一样,‘%’ 只用来进行标记格式。若要在格式标记中输出 % 本身,可以用 ‘%%’ 来表示。

 >>> '%s' %'%1'
'%1'
>>>

下面介绍几个复杂的例子:

 >>> '%1.2f' %1.235
'1.24'
>>>

f前面的1.2代表:总共输出长度为1个字符,其中小数为2位。

 >>> '%06.2f' %1.235
'001.24'
>>>
%06.2f 表示:若输出的位数不足6位,则用0 补齐。其中 小数点 也占用一个字符位。类似的还有 -、+, 
‘-’表示左对齐,‘+’表示在证书前面标记 ‘+’,默认不加。
 >>> '%(name)s:%(score)03.1f' %{'score':95, 'name':'Tom'}
'Tom:95.0'
>>>

该形式只适用于输出的内容为 dictionary (Python一种格式化数据类型)时,左面小括号中的(name) 和 (score) 对应于后面键值中相应内容。

以上的例子表明,‘格式标记字符串’ 中标记的顺序与 '要输出值组'的值是一一对应的。

												

Python-----格式化字符的更多相关文章

  1. (转)Python格式化字符 %s %d %f

    Python格式化字符 %s %d %f 原文:http://blog.csdn.net/huangfu77/article/details/54807835 格式 描述%% 百分号标记 #就是输出一 ...

  2. Python格式化字符 %s %d %f

    格式 描述%% 百分号标记 #就是输出一个%%c 字符及其ASCII码%s 字符串%d 有符号整数(十进制)%u 无符号整数(十进制)%o 无符号整数(八进制)%x 无符号整数(十六进制)%X 无符号 ...

  3. Python格式化字符

    %s 字符串 %d 有符号整数(十进制) %f 浮点数字(用小数点符号)

  4. python中的格式化字符

    python中的格式化字符在python中我们会遇到一个问题,问题是如何输出格式化的字符串.我们经常会输出类似'亲爱的xxx你好!你xx月的话费是xx,余额是xx'之类的字符串,而xxx的内容都是根据 ...

  5. Python格式化字符串~转

    Python格式化字符串 在编写程序的过程中,经常需要进行格式化输出,每次用每次查.干脆就在这里整理一下,以便索引. 格式化操作符(%) "%"是Python风格的字符串格式化操作 ...

  6. Python格式化字符串和转义字符

    地址:http://blog.chinaunix.net/uid-20794157-id-3038417.html Python格式化字符串的替代符以及含义     符   号     说     明 ...

  7. Python格式化字符串

    在编写程序的过程中,经常需要进行格式化输出,每次用每次查.干脆就在这里整理一下,以便索引. 格式化操作符(%) "%"是Python风格的字符串格式化操作符,非常类似C语言里的pr ...

  8. Python格式化字符串--format

    format格式化字符串方法相较于老版%格式方法的优点: 1.不需要理会数据类型的问题,在%方法中'%s'只能替代字符串类型. 2.单个参数可以多次输出,参数顺序可以不相同. 3.填充方式十分灵活,对 ...

  9. python格式化输出【转】

    今天写代码时,需要统一化输出格式进行,一时想不起具体细节,用了最笨的方法,现在讲常见的方法进行一个总结. 一.格式化输出 1.整数的输出 直接使用'%d'代替可输入十进制数字: >>> ...

  10. 18.Python格式化字符串(格式化输出)

    Python 提供了“%”对各种类型的数据进行格式化输出,例如如下代码: price = 108 print ("the book's price is %s" % price) ...

随机推荐

  1. 批处理更新svn

    很多软件都有命令行支持,即可以直接在Windows命令提示符下输入软件提供命令来执行,完成软件的一些功能. 比如输入svn help 可以查看svn支持的命令行 想要更新svn资源需要用到命令svn ...

  2. canvas加载图像

    之前按照例子,加载图像,发现加载图像,加载不上去,代码也没有错误,经过几次的尝试:发现需要重复调用下drawImage才可以. <script type="text/javascrip ...

  3. 参数解析argparse模块

    argparse,python的一个命令行解析模块 import argparse #创建一个命令行解析器 parser = argparse.ArgumentParser() #增添参数 parse ...

  4. 用js实现两个select下拉框之间的元素互相移动

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  5. jave script 经典排序 - -冒泡排序

    有 5个数字,2:3:1:0:4,按大小顺序排列 <script type="text/javascript"> var arr =new Array(); arr . ...

  6. svn由于连接方在一段时间后没有正确答复或连接的主机没有反应连接尝试失败

    解决方法,关掉防火墙, service iptables status 查看iptables状态 service iptables restart iptables服务重启 service iptab ...

  7. Linux生成core文件、core文件路径设置

    在Linux下产生并调试core文件 先看看我用的是个什么机器: $ uname -aLinux dev 2.4.21-9.30AXsmp #1 SMP Wed May 26 23:37:09 EDT ...

  8. spring 配置文件XSD地址

    这边部署不能访问外网,所以sping配置文件里的XSD地址要改一下象  http://www.springframework.org/schema/beans/spring-beans-2.0.xsd ...

  9. swift 模式

    原文:http://www.cocoachina.com/newbie/basic/2014/0612/8800.html 模式(pattern)代表了单个值或者复合值的结构.比如,元组(1, 2)的 ...

  10. C++关键字之const

    C++的const关键字一直让我很乱,这里把const关键字在程序中常用的三个地方分别总结出来: 1.  通过指针或引用访问普通变量 2.  通过对象调用成员函数,通过成员函数访问成员变量 3.  通 ...