摘要: 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. android studio gradle自动签名构建实现

    我为自己代言: 一.在android studio中生成签名文件. 1.在android studio 选中项目,在菜单栏中选择Build. 2.点击Generate Signed APK选项卡. 3 ...

  2. JavaWeb学习笔记--filter开发

    介绍自定义的Filter类必须实现Filter接口,并且实现Filter接口定义的init() doFilter() destory()方法.其中init为初始化,destory为销毁 doFilte ...

  3. 一个ajax的后台controller

    @RequestMapping("/api/merBrand") @ResponseBody public ResultBrand merBrand(HttpServletRequ ...

  4. CPU卡读写程序

    CPU卡也称智能卡,卡内的集成电路中带有微处理器CPU.存储单元(包括随机存储器RAM.程序存储器ROM以及芯片操作系统COS.装有COS的CPU卡相当于一台微型计算机,不仅具有数据存储功能,同时具有 ...

  5. bzoj1047-理想的正方形(二维单调队列)

    题意: 给一个矩阵,给出行列和每个数,再给出一个N,求出所有N*N的子矩阵中最大值最小值之差的最小值解析: 暴力枚举肯定不行,这题可以用二维单调队列做,把同一行的连续N个点缩成一个点保存最大最小值预处 ...

  6. qq2013 java版(完整工程源码 包含服务端 oracle数据库)毕业设计有用

    /** * 初始化组件 */ private void initComponent() { //提示面板 errorTipPane = new ErrorTipPane(); // 主面板 mainP ...

  7. (转)iOS7界面设计规范(5) - UI基础 - 导航

    通过分页控件(page control)来暗示多个条目或内容视图的存在.该控件可以有效的向用户展示内容单元的数量,以及当前所见的这一条在队列中的位置.请参考分页控件一节,了解更多详情. 注意:虽然工具 ...

  8. 盘点20款表现出众的HTML5游戏

    不管是对用户还是开发者来说,HTML5和JavaScript游戏这几年的发展真的是件好事.随着浏览器平台的日趋成熟,并开始整合这类型游戏所 要求的技术,我们每天都能在各大应用商店和社交网站中看到越来越 ...

  9. Android项目中gen文件下R文件无法生成的解决的方法

    帮一个网友解决R文件无法生成的问题,搜集了些材料特整理例如以下,刚開始学习的人參考他人代码时极易出现此种问题,一般都是xml文件出错,无法被正确解析. gen文件夹无法更新,或者gen文件夹下的R.J ...

  10. Builder模式 初体验

        看来Java构造器模式,决定动手体验下.构造器模式是什么?干什么用的?推荐大家看下ITEYE的一篇文章     http://www.iteye.com/topic/71175     了解构 ...