python中f-string的!r,!a,!s是什么(f-string,python,web开发)

时间:2024-05-05 15:10:18 作者 : 石家庄SEO 分类 : web开发
  • TAG :

f-string 的 !r,!a,!s

f-string出现在Python3.6,作为当前最佳的拼接字符串的形式,看下 f-string 的结构

f'<text>{<expression><optional!s,!r,or!a><optional:formatspecifier>}<text>...'

其中'!s' 在表达式上调用str(),'!r' 调用表达式上的repr(),'!a' 调用表达式上的ascii()

(1.默认情况下,f-string将使用str(),但如果包含转换标志,则可以确保它们使用repr () !

classComedian:def__init__(self,first_name,last_name,age):self.first_name=first_nameself.last_name=last_nameself.age=agedef__str__(self):returnf"{self.first_name}{self.last_name}is{self.age}."def__repr__(self):returnf"{self.first_name}{self.last_name}is{self.age}.Surprise!"

调用

>>>new_comedian=Comedian("Eric","Idle","74")>>>f"{new_comedian}"'EricIdleis74.'>>>f"{new_comedian}"'EricIdleis74.'>>>f"{new_comedian!r}"'EricIdleis74.Surprise!'

(2.!a的例子

>>>a='somestring'>>>f'{a!r}'"'somestring'"

等价于

>>>f'{repr(a)}'"'somestring'"

(3.!d的例子

类似2

pycon2019有人提出的一个展望!d的功能实现:

python中f-string的!r,!a,!s是什么

在python3.8中已经实现上述功能,不过不再使用!d了改为了f"{a=}"的形式,看过这个视频的发现没有!d应该很懵逼

 </div> <div class="zixun-tj-product adv-bottom"></div> </div> </div> <div class="prve-next-news">
本文:python中f-string的!r,!a,!s是什么的详细内容,希望对您有所帮助,信息来源于网络。
上一篇:Vue中$refs和$nextTick如何使用下一篇:

7 人围观 / 0 条评论 ↓快速评论↓

(必须)

(必须,保密)

阿狸1 阿狸2 阿狸3 阿狸4 阿狸5 阿狸6 阿狸7 阿狸8 阿狸9 阿狸10 阿狸11 阿狸12 阿狸13 阿狸14 阿狸15 阿狸16 阿狸17 阿狸18