python 字符串格式化代码


Posted in Python onMarch 17, 2013

格式汇总:

格式 描述 格式 描述
%% 百分号%标记(多出来的%是转义作用)    
%c 字符及其ASCII码 %s 字符串
%d 有符号整数(十进制) %u 无符号整数(十进制)
%o 无符号整数(八进制)    
%x 无符号整数(十六进制) %X 无符号整数(十六进制大写字符)
%e 浮点数字(科学计数法) %E 浮点数字(科学计数法,用E代替e)
%f 浮点数字(用小数点符号)    
%g 浮点数字(根据值的不同自动选择%e或%f) %G 浮点数字(类似于%g,根据值的不同自动选择%E或%f)
%p 指针(用十六进制打印值的内存地址) %n 存储输出字符的数量放进参数列表的下一个变量中

不过由于在python中,所有东西都可以转换成string类型,因此,如果没有什么特殊需求完全可以全部使用'%s‘来标记。
比如:'%s %s %s' % (1, 2.3, ['one', 'two', 'three'])
它的输出为'1 2.3 ['one', 'two', 'three']',就是按照%左边的标记输出的。
虽然第一个和第二值不是string类型,一样没有问题。
[在这个过程中,当电脑发现第一个值不是%s时,会先调用整型数的函数,把第一个值也就是1转成string类型,然后再调用str()函数来输出。]

上面说的只是格式标记的最简间的形式,来看复杂一点的:
制定输出长度:
‘%6.2f' % 1.235
在这种形式中,在f的前面出现了一个类似小数的6.2它表示的意思是,总共输出的长度为6个字符,其中小数2位。

还有更复杂的:
占位符:
‘%06.2f' % 1.235
在6的前面多了一个0,表示如果输出的位数不足6位就用0补足6位。
这一行的输出为‘001.24',可以看到小数也占用一位。

类似于这里0这样的标记还有-、+。其中,-表示左对齐,+表示在正数前面也标上+号,默认是不加的。

实例:
%ns:如果字符串变量s不足n位的话,会先输出若干个空格后再输出str1
%-ns:与上述相反,先输出变量s,不足的然后用空格在后面补齐。

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

有时候在%6.2f这种形式中,6和2也不能事先指定,会在程序运行过程中再产生,那怎么输入呢,当然不能用%%d.%df或%d.%d%f。
可以用%*.*f的形式,当然在后面的”要输出的值组“中包含那两个*的值。
比如:'%*.*f' % (6, 2, 2.345)就相当于'%6.2f' % 2.345。
不过如果记不住,或不想那么耐烦,完全可以全部用%s代替,或者用多个"+"来构造类似的输出字符串。

Python 相关文章推荐
Python高效编程技巧
Jan 07 Python
python进阶教程之动态类型详解
Aug 30 Python
python实现定时同步本机与北京时间的方法
Mar 24 Python
Python脚本简单实现打开默认浏览器登录人人和打开QQ的方法
Apr 12 Python
Python中import导入上一级目录模块及循环import问题的解决
Jun 04 Python
基于python select.select模块通信的实例讲解
Sep 21 Python
浅谈python数据类型及类型转换
Dec 18 Python
Python无损音乐搜索引擎实现代码
Feb 02 Python
在Pandas中DataFrame数据合并,连接(concat,merge,join)的实例
Jan 29 Python
PyQt5基本控件使用详解:单选按钮、复选框、下拉框
Aug 05 Python
python文字转语音的实例代码分析
Nov 12 Python
教你用Python matplotlib库制作简单的动画
Jun 11 Python
Python中条件选择和循环语句使用方法介绍
Mar 13 #Python
python list 合并连接字符串的方法
Mar 09 #Python
python的正则表达式re模块的常用方法
Mar 09 #Python
Python语言编写电脑时间自动同步小工具
Mar 08 #Python
py2exe 编译ico图标的代码
Mar 08 #Python
python中wx将图标显示在右下角的脚本代码
Mar 08 #Python
python中关于时间和日期函数的常用计算总结(time和datatime)
Mar 08 #Python
You might like
聊天室php&mysql(六)
2006/10/09 PHP
用php来检测proxy
2006/10/09 PHP
PHP类的反射用法实例
2014/11/03 PHP
php基于socket实现SMTP发送邮件的方法
2015/03/05 PHP
php检查字符串中是否有外链的方法
2015/07/29 PHP
JavaScript 密码强度判断代码
2009/09/05 Javascript
用js脚本控制asp.net下treeview的NodeCheck的实现代码
2010/03/02 Javascript
jquery之empty()与remove()区别说明
2010/09/10 Javascript
使用 JScript 创建 .exe 或 .dll 文件的方法
2011/07/13 Javascript
JS辨别访问浏览器判断是android还是ios系统
2014/08/19 Javascript
javascript实现3D变换的立体圆圈实例
2015/08/06 Javascript
自己动手写的jquery分页控件(非常简单实用)
2015/10/28 Javascript
js验证框架之RealyEasy验证详解
2016/06/08 Javascript
JavaScript数据存储 Cookie篇
2016/07/02 Javascript
vue axios请求超时的正确处理方法
2018/04/02 Javascript
JS实现的碰撞检测与周期移动完整示例
2019/09/02 Javascript
Vue脚手架编写试卷页面功能
2020/03/17 Javascript
[02:41]DOTA2亚洲邀请赛小组赛第三日 赛事回顾
2015/02/01 DOTA
Python中运行并行任务技巧
2015/02/26 Python
python实现mysql的读写分离及负载均衡
2018/02/04 Python
python3 破解 geetest(极验)的滑块验证码功能
2018/02/24 Python
Python3实现爬取指定百度贴吧页面并保存页面数据生成本地文档的方法
2018/04/22 Python
解决Django migrate No changes detected 不能创建表的问题
2018/05/27 Python
Form表单及django的form表单的补充
2019/07/25 Python
Python3使用PySynth制作音乐的方法
2019/09/09 Python
使用Python的networkx绘制精美网络图教程
2019/11/21 Python
Woolworth官网:澳洲第一大超市
2017/06/25 全球购物
Parfumdreams芬兰:购买香水和化妆品
2021/02/13 全球购物
效能监察建议书
2014/05/19 职场文书
责任担保书范文
2014/05/21 职场文书
校运动会广播稿300字
2014/10/07 职场文书
2014年客房服务员工作总结
2014/11/18 职场文书
2014年政协委员工作总结
2014/12/01 职场文书
通知书大全
2015/04/27 职场文书
汉语拼音教学反思
2016/02/22 职场文书
详细介绍MySQL中limit和offset的用法
2022/05/06 MySQL