一日一技:Python 格式化字符串,这个方法真的即丝滑又舒服!

一堆堆的烂数据里面有很多的字符串,所以最近老用到格式化字符串...

按理说我应该对这种重复性的动作很烦,起初确实是这样,但是现在我乐在其中,为什么呢?肯定不是脑子坏了,因为我最近学会了一个 超好用 的格式化字符串的方法,那是相当的丝滑,所以我又迫不及待的来分享啦!

当然在进入正题之前,还是应该来回顾一下之前我们是怎么格式化字符串的,毕竟我不是一个有了新欢就忘了旧爱的...渣男。

第一种就是上古时代的方法,Python2.6 以前的独霸天下的 "%" 操作符 :

在我当初刚学 Python 的时候,我用了一次就放弃了,因为我想,如果像下面这样:

如果经常出现上面这样的情况(实际上真的有可能),我选择狗带...我的忍耐限度最多两个,超过两个我的躁郁症可能会被引出来...

在写上面这个例子的时候,我恶狠狠的咬碎了我的棒棒糖,才抑制住了砸电脑的冲动, 我需要被赞美 

第二种就是我常用的 ' format' 。Python2.6 引入,性能比 % 更强大。大概有三种写法:

a) 替换字段直接用大括号

b) 通过大括号 + 索引引用变量

c) 使用键值对的方式

但是我依然有点受不了,format 的大括号和变量名分开,当变量多的时候也是会容易把我搞晕,即使是使用键值对的方式,也是一样的... 

可能我小脑有问题,总是容易晕...每天就在一种醉酒的状态下活着,直到我找到了它 

formatted string literals

它是在 Python3.6 新加的字符串格式化方法,这种方法是在字符串前面加上 "f",大括号直接使用变量,所以又叫 'f-strings' 

这只是最简单的用法...

它还 可以进行内联运算 ,也就是大括号里面还可以写算术表达式:

它还 可以直接调用函数 

当然 内置函数也是可以直接调用 的:

总而言之就是:

而且, 相比于 '%' 和 'format',f-string 的性能更好,运行速度更快,如果你的 Python 是 3.6 及以上的,非常建议你用 f-string!

当然功能不止于此,我就不一一演示了...

更多的使用欢迎去看官方文档,学起来更贴心:

猜你喜欢

转载自blog.csdn.net/ajian6/article/details/106565805