**.format**函数,大家应该都非常熟悉吧
之前夏柔也专门写过format类型的用法,大家可以去看看原文:https://www.wpon.cn/15959.html
这篇,夏柔再给大家详细介绍几个方法。
大家知道图片里面的 {0}和{1} 分别代表什么吗?
没错,他们在Python里叫占位符。
什么是占位符?
这里夏柔给大家介绍一些常用格式化的例子:
在python中,占位符的表示有三种:
-
%S字符串占位符;
-
%d整数占位符;
-
%f浮点数占位符;
%f只能占位浮点数,%.xf 则是精确至小数点后x位,而%1f表示保留1位,%2f表示保留2位,
那占位符的作用主要是用来传递参数值,因为数值是变量,因此可以在预留一个占位符,在程序执行时,再把值传递到此处,做格式化输出
现在夏柔给大家介绍一些实战例子~
大家可以先看下字符串格式化的表格:
| 字符串格式化 | 含义 | |:-------------:|:------------:| | %s | %占位符 | | %d | %数字 | | %f | %浮点数 | | %c | %ASCII字符 | | %o | %8进制 | | %x | %16进制 | | %e | %科学技术法 | | %.if | 保留i为小数 | | %xf | 确定总长度不足用空格不全 | | %-6.3f '%10.3 | 左对齐 | | %+6.3f '%10.3 | 显示正负 | | '%5s'%'ab' | 格式化长度 |
大家需要注意的是,其中的{0} 和{2} 的位置是固定的,换句话说如果你在format里面没有这些对应的值,那么这个等式就无法成立,比如下面的图:
当然了,如果你不喜欢这种占位符,直接换成%s就可以了,但是这有一个缺点,不知道你有没有看出来:
是的,没办法选择位置,只能固定排序依次输出
这里需要注意的是 {2:.1f} 的2: 因为他很容易被我们忽略掉,大家在练习的过程中一定要记住,否则会报错:
嘿嘿,我觉得会有人把中文冒号给写进去了。
或者,在数字前后添加双引号了~
也许有些人不喜欢这种写法,6.0 years ? 我的天哪!不应该是6years 吗?(来自夏柔对强迫症的猜测)
那么直接把{2:.1f} 换成 {2:d} 就可以了,不信?来看看:
有人可能会说:那在d前面加一个1,会是什么结果?
这里夏柔想和大家强调一下:他的用法和float不一样,d是整数,而float是浮点数,.1f代表的是小数点后面输出几位,而.1d则是在输出的值前面空几个格,不信?来看看:
哈哈哈,那么这回就有人会提出疑问了,.100d代表值的前面输出100个空格,那么该怎么居中呢?
讲的差不多了,依旧原创,如果你有什么不懂的地方欢迎咨询夏柔~
夏柔QQ:15001904