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自动化工具日志查询分析脚本代码实现
Nov 26 Python
python3之微信文章爬虫实例讲解
Jul 12 Python
解决已经安装requests,却依然提示No module named requests问题
May 18 Python
基于MTCNN/TensorFlow实现人脸检测
May 24 Python
PyQt5实现简单数据标注工具
Mar 18 Python
Python实现字典按key或者value进行排序操作示例【sorted】
May 03 Python
Python学习笔记之列表推导式实例分析
Aug 13 Python
详解Python 字符串相似性的几种度量方法
Aug 29 Python
Python-jenkins 获取job构建信息方式
May 12 Python
Django Session和Cookie分别实现记住用户登录状态操作
Jul 02 Python
解决Python3.8运行tornado项目报NotImplementedError错误
Sep 02 Python
Python 如何安装Selenium
May 06 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版网站缓存加快打开速度的方法分享
2012/06/03 PHP
php生成随机数的三种方法
2014/09/10 PHP
对比分析php中Cookie与Session的异同
2016/02/19 PHP
javascript检测浏览器的缩放状态实现代码
2014/09/28 Javascript
JavaScript里实用的原生API汇总
2015/05/14 Javascript
简述JavaScript提交表单的方式 (Using JavaScript Submit Form)
2016/03/18 Javascript
jQuery each函数源码分析
2016/05/25 Javascript
BootStrap 智能表单实战系列(十)自动完成组件的支持
2016/06/13 Javascript
js实现年月日表单三级联动
2020/04/17 Javascript
ES6 Promise对象概念与用法分析
2017/04/01 Javascript
详解在vue-cli中使用路由
2017/09/25 Javascript
vue.js父子组件通信动态绑定的实例
2018/09/28 Javascript
BootStrap modal实现拖拽功能
2018/12/01 Javascript
使用vue引入maptalks地图及聚合效果的实现
2020/08/10 Javascript
[02:28]PWL开团时刻DAY3——Ink Ice与DeMonsTer之间的勾心斗角
2020/11/03 DOTA
python多线程编程中的join函数使用心得
2014/09/02 Python
深入讲解Python中的迭代器和生成器
2015/10/26 Python
Python实现网络端口转发和重定向的方法
2016/09/19 Python
python实现人脸识别代码
2017/11/08 Python
python2.7使用plotly绘制本地散点图和折线图
2019/04/02 Python
Python中Numpy mat的使用详解
2019/05/24 Python
python3 求约数的实例
2019/12/05 Python
Django封装交互接口代码
2020/07/12 Python
使用CSS3配合IE滤镜实现渐变和投影的效果
2015/09/06 HTML / CSS
CSS3绘制超炫的上下起伏波动进度加载动画
2016/04/21 HTML / CSS
乌克兰珠宝大卖场:Zlato.ua
2020/09/27 全球购物
电子商务专业个人的自我评价分享
2013/10/29 职场文书
副处级干部考察材料
2014/05/17 职场文书
询价采购方案
2014/06/09 职场文书
医学专业自荐信
2014/06/14 职场文书
维稳承诺书
2015/01/20 职场文书
抢劫罪辩护词
2015/05/21 职场文书
委托书范本格式
2019/04/18 职场文书
MySQL InnoDB ReplicaSet(副本集)简单介绍
2021/04/24 MySQL
Java面试题冲刺第十五天--设计模式
2021/08/07 面试题
Redis超详细讲解高可用主从复制基础与哨兵模式方案
2022/04/07 Redis