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 import用法以及与from...import的区别
May 28 Python
python图像处理之镜像实现方法
May 30 Python
Python中在脚本中引用其他文件函数的实现方法
Jun 23 Python
Python实现的三层BP神经网络算法示例
Feb 07 Python
PyQt5实现让QScrollArea支持鼠标拖动的操作方法
Jun 19 Python
Pycharm+django2.2+python3.6+MySQL实现简单的考试报名系统
Sep 05 Python
Django接收照片储存文件的实例代码
Mar 07 Python
Django跨域资源共享问题(推荐)
Mar 09 Python
解决pyinstaller打包运行程序时出现缺少plotly库问题
Jun 02 Python
Python实现计算图像RGB均值方式
Jun 04 Python
用python对excel查重
Dec 07 Python
Python利用socket模块开发简单的端口扫描工具的实现
Jan 27 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
百事可乐也出咖啡了 双倍咖啡因双倍快乐
2021/03/03 咖啡文化
php出现Cannot modify header information问题的解决方法大全
2008/04/09 PHP
PHP类的使用 实例代码讲解
2009/12/28 PHP
比较时间段一与时间段二是否有交集的php函数
2011/05/31 PHP
解决ajax+php中文乱码的方法详解
2013/06/09 PHP
PHP中实现生成静态文件的方法缓解服务器压力
2014/01/07 PHP
PHP处理CSV表格文件的常用操作方法总结
2016/07/01 PHP
解决php-fpm.service not found问题的办法
2017/06/06 PHP
PHP去除空数组且数组键名重置的讲解
2019/02/28 PHP
Javascript实现CheckBox的全选与取消全选的代码
2010/07/20 Javascript
js选取多个或单个元素的实现代码(用class)
2012/08/22 Javascript
jquery中选择块并改变属性值的方法
2013/07/31 Javascript
js实现交换运动效果的方法
2015/04/10 Javascript
jQuery EasyUI编辑DataGrid用combobox实现多级联动
2016/08/29 Javascript
vue头部导航动态点击处理方法
2018/11/02 Javascript
微信小程序渲染性能调优小结
2019/07/30 Javascript
在Python中通过threading模块定义和调用线程的方法
2016/07/12 Python
python数据结构链表之单向链表(实例讲解)
2017/07/25 Python
Python有序字典简单实现方法示例
2017/09/28 Python
numpy中索引和切片详解
2017/12/15 Python
python实现顺序表的简单代码
2018/09/28 Python
用python wxpy管理微信公众号并利用微信获取自己的开源数据
2019/07/30 Python
python实现从ftp上下载文件的实例方法
2020/07/19 Python
html5 标签
2009/07/16 HTML / CSS
使用纯HTML5编写一款网页上的时钟的代码分享
2015/11/16 HTML / CSS
html5使用window.postMessage进行跨域实现数据交互的一次实战
2021/02/24 HTML / CSS
英国最大的女性服装零售商:Dorothy Perkins
2017/03/30 全球购物
阿联酋航空假期:Emirates Holidays
2018/03/20 全球购物
项目合作意向书范本
2014/04/01 职场文书
《翻越远方的大山》教学反思
2014/04/13 职场文书
经管应届生求职信范文
2014/05/18 职场文书
优秀大学生事迹材料
2014/12/24 职场文书
通讯稿格式及范文
2015/07/22 职场文书
企业安全隐患排查治理制度
2015/08/05 职场文书
新手入门Mysql--概念
2021/06/18 MySQL
mysql5.6主从搭建以及不同步问题详解
2021/12/04 MySQL