摘要: 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. 使用redis缓存加索引处理数据库百万级并发

    使用redis缓存加索引处理数据库百万级并发 前言:事先说明:在实际应用中这种做法设计需要各位读者自己设计,本文只提供一种思想.准备工作:安装后本地数redis服务器,使用mysql数据库,事先插入1 ...

  2. Android学习笔记--Broadcast, BroadcastReceiver(广播)

    参考资料:http://www.cnblogs.com/playing/archive/2011/03/23/1992030.html 在 Android 中使用 Activity, Service, ...

  3. 用windows live writer写博客

    用windows live writer写博客了,目前不支持writer的博客,暂时放弃,这正是我用writer写的第一篇内容. 如有知道怎么用weiter配置:凤凰博客.搜狐博客.QQ空间.百度空间 ...

  4. PHP安装OPENSSL扩展模块

    新项目上线时,PHP开发同事反映邮件功能不能正常使用. 原来是用465的SMTP加密端口,不是25端口.那要为当前的PHP安装OPENSSL扩展啦. 还好,网上有很多,弄一个过来就搞定. http:/ ...

  5. CCI_chapter 3 Stacks and Queues

    3.1Describe how you could use a single array to implement three stacks for stack 1, we will use [0, ...

  6. MySQL常用Json函数

    官方文档:JSON Functions Name Description JSON_APPEND() Append data to JSON document JSON_ARRAY() Create ...

  7. vim 中Ctags的安装和使用

    Ctags是一个用来为源文件中的标识符(如变量.函数.类成员.宏定义等)创建索引文件的程序.这些tags文件能被编辑器或其它工具用来快速查找定位源代码中的符号(tag/symbol),如变量名,函数名 ...

  8. fstream读写UNICODE文件

    今天遇到要处理UNICODE文件的情况,网上找了一圈都是读取出字节,再转的,这个不方便啊!想起了有codecvt这么个东西,顺藤摸瓜,找到了方法. locale utf16(locale(" ...

  9. Exchange Server 2010/2013功能差异

  10. java 获取系统变量(环境变量和设置变量)

    前言 环境变量这个概念不陌生, 就是操作系统的环境变量. 系统变量就是java本身维护的变量. 通过 System.getProperty 的方式获取. 对于不同的操作系统来说, 环境变量的处理可能会 ...