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 BeautifulSoup使用方法详解
Nov 21 Python
python中日期和时间格式化输出的方法小结
Mar 19 Python
python搭建微信公众平台
Feb 09 Python
Django实现自定义404,500页面教程
Mar 26 Python
Python实现模拟分割大文件及多线程处理的方法
Oct 10 Python
Python实现PS图像调整颜色梯度效果示例
Jan 25 Python
python创建文件时去掉非法字符的方法
Oct 31 Python
python使用xlsxwriter实现有向无环图到Excel的转换
Dec 12 Python
用python打印1~20的整数实例讲解
Jul 01 Python
Pytorch.nn.conv2d 过程验证方式(单,多通道卷积过程)
Jan 03 Python
pytorch 修改预训练model实例
Jan 18 Python
使用Python操作MySQL的小技巧
Sep 10 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数组函数序列之array_splice() - 在数组任意位置插入元素
2011/11/07 PHP
解析thinkphp基本配置 convention.php
2013/06/18 PHP
PHP中cookie和session的区别实例分析
2014/08/28 PHP
PHP中ini_set与ini_get用法实例
2014/11/04 PHP
PHP实现Javascript中的escape及unescape函数代码分享
2015/02/10 PHP
教你识别简单的免查杀PHP后门
2015/09/13 PHP
简单谈谈PHP面向对象之标识对象
2017/06/27 PHP
Yii框架自定义数据库操作组件示例
2019/11/11 PHP
js面向对象设计用{}好还是function(){}好(构造函数)
2011/10/23 Javascript
使用JS 清空File控件的路径值
2013/07/08 Javascript
从零学jquery之如何使用回调函数
2014/05/16 Javascript
JavaScript中的函数嵌套使用
2015/06/04 Javascript
js实现防止被iframe的方法
2015/07/03 Javascript
express文件上传中间件Multer详解
2016/10/24 Javascript
详解React项目的服务端渲染改造(koa2+webpack3.11)
2018/03/19 Javascript
vue实现动态列表点击各行换色的方法
2018/09/13 Javascript
详解使用uni-app开发微信小程序之登录模块
2019/05/09 Javascript
js时间转换毫秒的实例代码
2019/08/21 Javascript
python冒泡排序算法的实现代码
2013/11/21 Python
django+xadmin+djcelery实现后台管理定时任务
2018/08/14 Python
python 判断linux进程,并杀死进程的实现方法
2019/07/01 Python
python 搜索大文件的实例代码
2019/07/08 Python
python命名空间(namespace)简单介绍
2019/08/10 Python
Python读取Excel一列并计算所有对象出现次数的方法
2020/09/04 Python
css3利用transform变形结合事件完成扇形导航
2020/10/26 HTML / CSS
澳大利亚排名第一的在线酒类商店:MyBottleShop
2018/04/26 全球购物
巴西箱包、背包、钱包和旅行配件购物网站:Inovathi
2019/12/14 全球购物
如何拷贝一整个Java对象,包括它的状态
2013/12/27 面试题
Java如何获得ResultSet的总行数
2016/09/03 面试题
商务考察邀请函范文
2014/01/21 职场文书
初中学生期末评语
2014/04/24 职场文书
企业党的群众路线教育实践活动学习心得体会
2014/10/31 职场文书
预防职务犯罪警示教育心得体会
2016/01/15 职场文书
如何判断pytorch是否支持GPU加速
2021/06/01 Python
整理Python中常用的conda命令操作
2021/06/15 Python
分享很少见很有用的SQL功能CORRESPONDING
2022/08/05 MySQL