小说python3的f_strings格式化字符串

python3.6开始,字符串格式化引入了f_strings这种新语法,它相比以前的方法更容易阅读、更简洁、更不容易出错,而且还更快

接下来,就开始小说一把f_strings,见识下它的魔力。

简而美

字符串前加上f或F就ok了

name = 'chafezhou'
gender = 'male'
age = 18
profession = 'programmer'
company = 'iRain'

f_strings_mode = f"My name is {name}, gender:{gender}. I'm {age} years old," \
                       f" working at {company} as a {profession}"

没对比就没有伤害

看看%方式

percent_mode = "My name is %s, gender:%s. I'm %d years old, working at %s as a %s"\
               % (name, gender, age, company, profession)

这么冗长的代码行,还有5个参数,要保证参数的index正确,真是难为人,步步惊心

再来看看format方式

format_mode_1 = "My name is {name}, gender:{gender}. I'm {age} years old," \
                " working at {company} as a {profession}".format(
    name=name, gender=gender, age=age, profession=profession, company=company)

这么一比较,f_strings显得更简洁,更易阅读,所见即所得,对于多个参数的更是无需关心index,从而减少错误。

如果用IDE,更能体会其优势,自动补全,更高效,其他方式没办法提示补全。

更高效

通过一个简单的测试代码对比下f_strings,format和%三种方式的效率

f_strings还是更高效一些

更多特性

表达式可以有

函数也可以有

对象还是可以有

我是已经被f_strings给征服了,小伙伴们赶紧用起来吧。

原文发布于微信公众号 - chafezhou(gh_5b8f0c59b682)

原文发表时间:2018-06-11

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏WeTest质量开放平台团队的专栏

程序员要拥抱变化,聊聊 Android 即将支持的 Java 8

Java 9预计今年也会正式发布,Java 8这个最具变革性且变革性最适于GUI程序的版本,Android终于准备正式支持。从自己开发JavaFx的感受,说一说...

2.7K0
来自专栏牛客网

金山WPS,C++研发工程师,一面

【每日一语】人们常常会欺骗你,是为了让你明白,有时候,你唯一应该相信的人就是你自己。——《千与千寻》

692
来自专栏Kiba518

C#语法——反射,架构师的入门基础。

编程其实就是写代码,而写代码目的就是实现业务,所以,语法和框架也是为了实现业务而存在的。因此,不管多么高大上的目标,实质上都是业务。

730
来自专栏牛客网

百度云部门 C++面试

14)读套接口时候返回0,时候时候产生EAGIN。【EAGIN也不太清楚,知道又这个玩意,不知道具体的,应该直接说不知道】

982
来自专栏文渊之博

索引初探(二)

在SqlServer中分为两种索引,一是聚集索引;一是费聚集索引。下面我就分别对两种索引进行介绍并分析其区别和各自的特点。 1.聚集索引      之前看过一个...

1797
来自专栏iOS技术

何为代码质量?——用脑子写代码引言正文总结

为什么项目维护困难、BUG 反复?实际上很多时候就是代码质量的问题。代码架构就像是建筑的钢筋结构,代码细节就像是建筑的内部装修,建筑的抗震等级、简装或豪装完全取...

522
来自专栏王肖的UT

《实现模式》读书总结

这是一本关于如何写好代码的书,是一本关于“如何编写别人能懂的代码”的书。

37411
来自专栏一个会写诗的程序员的博客

Kotlin 与 Java 8 的重要新特性以及 Java 9、10 的发展规划Java 9 新特性 极简介绍Java 10/X 的发展规划Kotlin《Kotlin极简教程》正式上架:

Java 8可谓是自Java 5以来最具革命性的版本了,她在语言、编译器、类库、开发工具以及Java虚拟机等方面都带来了不少新特性。我们来一一回顾一下这些特性。

602
来自专栏互联网开发者交流社区

SQL基础用法(实例一)

1373
来自专栏郭霖

Android数据库高手秘籍(四)——使用LitePal建立表关联

目前我们已经对LitePal的用法有了一定了解,学会了使用LitePal来创建表和升级表的方式,那么今天就让我们一起继续进阶,探究一下如何使用LitePal来建...

2509

扫码关注云+社区