Python中字符串的格式化方法小结


Posted in Python onMay 03, 2016

老办法

Python2.6之前,格式字符串的使用方法相对更简单些,虽然其能够接收的参数数量有限制。这些方法在Python3.3中仍然有效,但已有含蓄的警告称将完全淘汰这些方法,目前还没有明确的时间进度表。

格式化浮点数:

pi = 3.14159
print(" pi = %1.2f ", % pi)

多个替换值:

s1 = "cats"
s2 = "dogs"
s3 = " %s and %s living together" % (s1, s2)

没有足够的参数:

使用老的格式化方法,我经常犯错"TypeError: not enough arguments for formating string",因为我数错了替换变量的数量,编写如下这样的代码很容易漏掉变量。

set = (%s, %s, %s, %s, %s, %s, %s, %s) " % (a,b,c,d,e,f,g,h,i)

对于新的Python格式字符串,可以使用编号的参数,这样你就不需要统计有多少个参数。

set = set = " ({0}, {1}, {2}, {3}, {4}, {5}, {6}, {7}) ".format(a,b,c,d,e,f,g)

Python 2.x 基于字典字符串格式化

"%(n)d %(x)s" %{"n":1, "x":"spam"}
reply = """
Greetings...
Hello %(name)s!
Your age squared is %(age)s
"""
values = {'name':'Bob', 'age':40}
print rely % values

Python 3.x format方法格式化

template = '{0},{1} and {2}'
template.format('spam','ham','eggs')

template = '{motto}, {pork} and {food}'
template.format(motto='spam', pork='ham', food='eggs')

template = '{motto}, {0} and {food}'
template.format('ham', motto='spam', food='eggs')

'{motto}, {0} and {food}'.format(42, motto=3.14, food=[1,2,3])
Python 相关文章推荐
pydev使用wxpython找不到路径的解决方法
Feb 10 Python
Python collections模块实例讲解
Apr 07 Python
python3.4.3下逐行读入txt文本并去重的方法
Apr 29 Python
Python使用sklearn库实现的各种分类算法简单应用小结
Jul 04 Python
python如何实现不可变字典inmutabledict
Jan 08 Python
Python3和PyCharm安装与环境配置【图文教程】
Feb 14 Python
使用Python打造一款间谍程序的流程分析
Feb 21 Python
关于Keras Dense层整理
May 21 Python
python实现xlwt xlrd 指定条件给excel行添加颜色
Jul 14 Python
Python 如何展开嵌套的序列
Aug 01 Python
python中Mako库实例用法
Dec 31 Python
python中对列表的删除和添加方法详解
Feb 24 Python
Python实现约瑟夫环问题的方法
May 03 #Python
Python实现堆排序的方法详解
May 03 #Python
python web框架学习笔记
May 03 #Python
Python批量修改文本文件内容的方法
Apr 29 #Python
Python+Opencv识别两张相似图片
Mar 23 #Python
Python实现包含min函数的栈
Apr 29 #Python
Python二叉搜索树与双向链表转换实现方法
Apr 29 #Python
You might like
web目录下不应该存在多余的程序(安全考虑)
2012/05/09 PHP
老司机传授Ubuntu下Apache+PHP+MySQL环境搭建攻略
2016/03/20 PHP
php使用pecl方式安装扩展操作示例
2019/08/12 PHP
用js实现随机返回数组的一个元素
2007/08/13 Javascript
js中的时间转换—毫秒转换成日期时间的示例代码
2014/01/26 Javascript
一个JavaScript获取元素当前高度的实例
2014/10/29 Javascript
Express实现前端后端通信上传图片之存储数据库(mysql)傻瓜式教程(二)
2015/12/10 Javascript
基于JS实现弹出一个隐藏的div窗口body页面变成灰色并且不可被编辑
2016/12/14 Javascript
nodejs利用http模块实现银行卡所属银行查询和骚扰电话验证示例
2016/12/30 NodeJs
Vue2.0 UI框架ElementUI使用方法详解
2017/04/14 Javascript
js封装成插件_Canvas统计图插件编写实例
2017/09/12 Javascript
vue和react等项目中更简单的实现展开收起更多等效果示例
2018/02/22 Javascript
jQuery实现基本隐藏与显示效果的方法详解
2018/09/05 jQuery
JavaScript基础教程之如何实现一个简单的promise
2018/09/11 Javascript
vue结合element-ui使用示例
2019/01/24 Javascript
微信小程序利用swiper+css实现购物车商品删除功能
2019/03/06 Javascript
微信小程序获取用户绑定手机号方法示例
2019/07/21 Javascript
微信小程序实现电子签名并导出图片
2020/05/27 Javascript
JS删除数组指定值常用方法详解
2020/06/04 Javascript
JavaScript实现网页tab栏效果制作
2020/11/20 Javascript
[00:12]DAC2018 Miracle-站上中单舞台,他能否再写奇迹?
2018/04/06 DOTA
python去除文件中空格、Tab及回车的方法
2016/04/12 Python
Python编程之event对象的用法实例分析
2017/03/23 Python
Python利用operator模块实现对象的多级排序详解
2017/05/09 Python
解决python中无法自动补全代码的问题
2018/12/04 Python
解决python super()调用多重继承函数的问题
2019/06/26 Python
python爬取网易云音乐热歌榜实例代码
2020/08/07 Python
HTML5 device access 设备访问详解
2018/05/24 HTML / CSS
浅谈Html5中视频 音频标签 进度条的问题
2016/07/26 HTML / CSS
.net笔试题
2014/03/03 面试题
快餐店的创业计划书范文
2014/01/29 职场文书
后勤部经理岗位职责
2014/02/23 职场文书
洗发水广告词
2014/03/13 职场文书
绩效工资实施方案
2014/03/15 职场文书
党员剖析材料范文
2014/12/18 职场文书
Python+Matplotlib+LaTeX玩转数学公式
2022/02/24 Python