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 相关文章推荐
python爬虫教程之爬取百度贴吧并下载的示例
Mar 07 Python
用Python进行TCP网络编程的教程
Apr 29 Python
详解python之配置日志的几种方式
May 22 Python
python PrettyTable模块的安装与简单应用
Jan 11 Python
使用selenium模拟登录解决滑块验证问题的实现
May 10 Python
Django中reverse反转并且传递参数的方法
Aug 06 Python
Python学习笔记之函数的定义和作用域实例详解
Aug 13 Python
深入浅析Python科学计算库Scipy及安装步骤
Oct 12 Python
django实现支付宝支付实例讲解
Oct 17 Python
python实现同一局域网下传输图片
Mar 20 Python
使用Pytorch搭建模型的步骤
Nov 16 Python
django学习之ajax post传参的2种格式实例
May 14 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
PHP 解决session死锁的方法
2013/06/20 PHP
PHP源码分析之变量的存储过程分解
2014/07/03 PHP
PHP安装扩展mcrypt以及相关依赖项深入讲解
2021/03/04 PHP
flash javascript之间的通讯方法小结
2008/12/20 Javascript
JQuery 中几个类选择器的简单使用介绍
2013/03/14 Javascript
js原生appendChild的bug解决心得分享
2013/07/01 Javascript
禁用页面部分JavaScript方法的具体实现
2013/07/31 Javascript
javascript预加载图片、css、js的方法示例介绍
2013/10/14 Javascript
ie9 提示'console' 未定义问题的解决方法
2014/03/20 Javascript
模拟用户点击弹出新页面不会被浏览器拦截
2014/04/08 Javascript
javascript格式化json显示实例分析
2015/04/21 Javascript
javascript实现密码验证
2015/11/10 Javascript
jQuery实现可以编辑的表格实例详解【附demo源码下载】
2016/07/09 Javascript
JavaScript实现类似拉勾网的鼠标移入移出效果
2016/10/27 Javascript
vuejs2.0运用原生js实现简单的拖拽元素功能示例
2017/02/24 Javascript
简述Angular 5 快速入门
2017/11/04 Javascript
Vue.js watch监视属性知识点总结
2019/11/11 Javascript
vue项目查看vue版本及cli版本的实现方式
2020/10/24 Javascript
vue router返回到指定的路由的场景分析
2020/11/10 Javascript
[02:24]DOTA2痛苦女王 英雄基础教程
2013/11/26 DOTA
python3.6+opencv3.4实现鼠标交互查看图片像素
2018/02/26 Python
python实现关闭第三方窗口的方法
2019/06/28 Python
python3 requests库文件上传与下载实现详解
2019/08/22 Python
Python实现微信机器人的方法
2019/09/06 Python
使用python+whoosh实现全文检索
2019/12/09 Python
美国从事品牌鞋类零售的连锁店:Famous Footwear
2016/08/25 全球购物
英国简约舒适女装品牌:Great Plains
2018/07/27 全球购物
匡威意大利官方商店 :Converse意大利
2018/11/27 全球购物
中专毕业自我鉴定
2013/10/16 职场文书
中英文自我评价语句
2013/12/20 职场文书
《独坐敬亭山》教学反思
2014/04/08 职场文书
小学庆六一主持词
2015/06/30 职场文书
新闻稿件写作技巧
2015/07/18 职场文书
2016年会领导致辞稿
2015/07/29 职场文书
使用springMVC所需要的pom配置
2021/09/15 Java/Android
如何使用SQL Server语句创建表
2022/04/12 SQL Server