Python格式化输出字符串方法小结【%与format】


Posted in Python onOctober 29, 2018

python格式化字符串有%和{}两种 字符串格式控制符.

字符串输入数据格式类型(%格式操作符号)

%% 百分号标记#就是输出一个%
%c 字符及其ASCII码
%s 字符串
%d 有符号整数(十进制)
%u 无符号整数(十进制)
%o 无符号整数(八进制)
%x 无符号整数(十六进制)
%X 无符号整数(十六进制大写字符)
%e 浮点数字(科学计数法)
%E 浮点数字(科学计数法,用E代替e)
%f 浮点数字(用小数点符号)
%g 浮点数字(根据值的大小采用%e或%f)
%G 浮点数字(类似于%g)
%p 指针(用十六进制打印值的内存地址)
%n 存储输出字符的数量放进参数列表的下一个变量中

字符串格式控制%[(name)][flag][width][.][precision]type
name:可为空,数字(占位),命名(传递参数名,不能以数字开头)以字典格式映射格式化,其为键名

flag:标记格式限定符号,包含+-#和0,+表示右对齐(会显示正负号),-左对齐,前面默认为填充空格(即默认右对齐),0表示填充0,#表示八进制时前面补充0,16进制数填充0x,二进制填充0b

width:宽度(最短长度,包含小数点,小于width时会填充)

precision:小数点后的位数,与C相同

type:输入格式类型,请看上面

还有一种format_spec格式{[name][:][[fill]align][sign][#][0][width][,][.precision][type]}
{}包裹name命名传递给format以命名=值 写法,非字典映射,其他和上面相同

fill =  <any character>

#fill是表示可以填写任何字符

align =  "<" | ">" | "=" | "^"

#align是对齐方式,<是左对齐, >是右对齐,^是居中对齐。

sign  =  "+" | "-" | " "

#sign是符号, +表示正号, -表示负号

width =  integer

#width是数字宽度,表示总共输出多少位数字

precision =  integer

#precision是小数保留位数

type =  "b" | "c" | "d" | "e" | "E" | "f" | "F" | "g" | "G" | "n" | "o" | "s" | "x" | "X" | "%"

#type是输出数字值是的表示方式,比如b是二进制表示;比如E是指数表示;比如X是十六进制表示

例子(本机测试运行环境:Python3.6)

>>> print("{:,}".format(123456))#输出1234,56
123,456
>>> print("{a:w^8}".format(a="8"))#输出www8wwww,填充w
www8wwww
>>> print("%.5f" %5)#输出5.000000
5.00000
>>> print("%-7s3" %("python"))#输出python 3
python 3
>>> print("%.3e" %2016)#输出2.016e+03,也可以写大E
2.016e+03
>>> print("%d %s" %(123456,"3water"))#输出123456 3water
123456 3water
>>> print("%(what)s is %(year)d" % {"what":"this year","year":2016})#输出this year is 2016
this year is 2016
>>> print("{0}{1}".format("hello","fun"))#输出hellofun,这与CSharp的格式化字符(占位符)相似
hellofun
>>> print("{}{}{}".format("3water",".","net"))#输出3water.com
3water.com
>>> print("{a[0]}{a[1]}{a[2]}".format(a=["3water",".","net"]))#输出3water.com
3water.com
>>> print("{dict[host]}{dict[dot]}{dict[domain]}".format(dict={"host":"www","domain":"3water.com","dot":"."}))#输出3water.com
3water.com
>>> print("{a}{b}".format(a="python",b="3"))#输出python3
python3
>>> print("{who} {doing} {0}".format("python",doing="like",who="I"))#输出I like python
I like python
>>>

另:关于Python format函数格式化输出操作可参考前面一篇Python字符串基本操作

Python 相关文章推荐
Python的另外几种语言实现
Jan 29 Python
python循环监控远程端口的方法
Mar 14 Python
如何使用七牛Python SDK写一个同步脚本及使用教程
Aug 23 Python
使用Turtle画正螺旋线的方法
Sep 22 Python
python中WSGI是什么,Python应用WSGI详解
Nov 24 Python
python实现图片筛选程序
Oct 24 Python
python接口自动化(十六)--参数关联接口后传(详解)
Apr 16 Python
pycharm设置鼠标悬停查看方法设置
Jul 29 Python
Python键鼠操作自动化库PyAutoGUI简介(小结)
May 17 Python
Python如何脚本过滤文件中的注释
May 27 Python
keras 使用Lambda 快速新建层 添加多个参数操作
Jun 10 Python
解决jupyter notebook启动后没有token的坑
Apr 24 Python
[原创]Python入门教程2. 字符串基本操作【运算、格式化输出、常用函数】
Oct 29 #Python
pycharm执行python时,填写参数的方法
Oct 29 #Python
解决Pycharm下面出现No R interpreter defined的问题
Oct 29 #Python
解决Pycharm运行时找不到文件的问题
Oct 29 #Python
解决Mac下首次安装pycharm无project interpreter的问题
Oct 29 #Python
解决pycharm运行时interpreter为空的问题
Oct 29 #Python
在Pycharm中项目解释器与环境变量的设置方法
Oct 29 #Python
You might like
构建简单的Webmail系统
2006/10/09 PHP
php自动加载机制的深入分析
2013/06/08 PHP
php查询操作实现投票功能
2016/05/09 PHP
Jquery下attr和removeAttr的使用方法
2010/12/28 Javascript
jquery基础教程之deferred对象使用方法
2014/01/22 Javascript
js控制再次点击按钮之间的间隔时间可防止重复提交
2014/08/01 Javascript
Javascript正则控制文本框只能输入整数或浮点数
2014/09/02 Javascript
Angularjs基础知识及示例汇总
2015/01/22 Javascript
JavaScript中的Math.sin()方法使用详解
2015/06/15 Javascript
jQuery解决input超多的表单提交
2015/08/10 Javascript
快速学习jQuery插件 Form表单插件使用方法
2015/12/01 Javascript
详解webpack2+node+react+babel实现热加载(hmr)
2017/08/24 Javascript
详解React native全局变量的使用(跨组件的通信)
2017/09/07 Javascript
BetterScroll 在移动端滚动场景的应用
2017/09/18 Javascript
微信小程序实现tab和swiper切换结合效果
2020/07/17 Javascript
vue移动端监听滚动条高度的实现方法
2018/09/03 Javascript
Vue CLI3 开启gzip压缩文件的方式
2018/09/30 Javascript
js中的闭包实例展示
2018/11/01 Javascript
Vue + element 实现多选框组并保存已选id集合的示例代码
2020/06/03 Javascript
Python数据类型学习笔记
2016/01/13 Python
Python读取图片属性信息的实现方法
2016/09/11 Python
Python实现的读写json文件功能示例
2018/06/05 Python
Python3.4 splinter(模拟填写表单)使用方法
2018/10/13 Python
python实现基于信息增益的决策树归纳
2018/12/18 Python
Python生命游戏实现原理及过程解析(附源代码)
2019/08/01 Python
用 Python 制作地球仪的方法
2020/04/24 Python
学python最电脑配置有要求么
2020/07/05 Python
python与js主要区别点总结
2020/09/13 Python
门卫班长岗位职责
2013/12/15 职场文书
创意活动策划书
2014/01/15 职场文书
中文专业求职信
2014/06/20 职场文书
2014年高中班主任工作总结
2014/11/08 职场文书
机关单位2016年创先争优活动总结
2016/04/05 职场文书
python中Matplotlib绘制直线的实例代码
2021/07/04 Python
mysql事务隔离级别详情
2021/10/24 MySQL
vue3 自定义图片放大器效果的示例代码
2022/07/23 Vue.js