Python格式化字符串新语法:f-strings

本文介绍了Python3.6引入的f-strings字符串格式化方式,对比了%-formatting和str.format(),阐述了f-strings的易读性、简洁性和速度优势,并提供了多个示例来展示其用法,包括使用表达式、调用函数、多行字符串等。
摘要由CSDN通过智能技术生成
Python格式化字符串新语法:f-strings
 
 
 
从Python3.6开始,引入了一个新的格式化字符串方式:f-strings。它与之前的格式化方法相比,更具可读性,代码更简洁,不易出错,并且速度更快。
 
 
python之前的格式化字符串方式
 
在python3.6之前,主要有两种方式格式化字符串:%-formatting 和 str.format()。
 
%-formatting
 
这是python最开始内置的格式化方式,但现在它已不被官方推荐使用,因为它容易引发错误。
 
>>> name = "zh"
>>> "Hello, %s" % name
'Hello, zh'
 
要想替换多个值可以使用元组
 
>>> name = "zh"
>>> age = 32
>>> "Hello, %s. You are %s." % (name, age)
'Hello, zh. You are 32.'
 
%-formatting不友好的方面
 
上面的代码可读性不错,但是当我们需要在一个长的字符串中替换多个参数,它将变得不可读,且容易出错。
 
>>> first_name = "z"
>>> last_name = "h"
>>> age = 32
>>> profession = "it"
>>> affiliation = "python"
>>> "Hello, %s %s. You are %s. You are a %s. You were a member of %s." % (first_name, last_name, age, profession, affiliation)
'Hello, z h. You are 32. You are a it. You were a member of python.'
 
str.format()
 
这种方式在python2.6中引进,是对%-formatting的改良。它使用普通方法调用的语法,并且可以使用对象__format__()方法进行扩展。
 
在 str.format() 中,需要替换的字段使用大括号标记
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值