Python 中的格式化字符串文字(f 字符串)?
Python 现在提供了一种新的格式化字符串的方法,称为 f 字符串。此功能可在 Python 3.6 中通过 PEP-498 获得。以一个以字符串为前缀的字母“f”而命名(f 字符串)。字母“f”还表示这些 f 字符串可用于格式化。
以下是演示如何使用 f 字符串的一些示例。
程序 1
name = 'Rajesh' age = 13 * 3 fString = f'My name is {name} and my age is {age}' print(fString) #We can use Uppercase 'F' instead of lowercase 'f'. print(F'My name is {name} and my age is {age}') #As the fString valuation is done, giving another value to the variable will not change fstring value. name = 'Zack' age = 44 print(fString)
输出
My name is Rajesh and my age is 39 My name is Rajesh and my age is 39 My name is Rajesh and my age is 39
示例 2 - 带有表达式和转换的 f 字符串
from datetime import datetime
name = 'Rajesh' age = 13 * 3 dt = datetime.now() print(f' Age after ten years will be {age + 10}') print(f'Name with quotes = {name!r}') print(f'Default formatted Date = {dt}') print(f'Modified Date format = {dt: %d/%m/%Y}')
输出
Age after ten years will be 49 Name with quotes = 'Rajesh' Default formatted Date = 2019-02-11 14:52:05.307841 Modified Date format = 11/02/2019
示例 3:对象和属性
class Vehicle: Model = 0 Brand = '' def __init__(self, Model, Brand): self.Model = Model self.Brand = Brand def __str__(self): return f'E[Model={self.Model}, Brand = {self.Brand}]' Car = Vehicle (2018, 'Maruti') print(Car) print(f'Vehicle: {Car}\nModel is {Car.Model} and Brand is {Car.Brand}')
输出
E[Model=2018, Brand = Maruti] Vehicle: E[Model=2018, Brand = Maruti] Model is 2018 and Brand is Maruti
示例 4:调用函数
我们也可以在 f-字符串格式中调用函数。
def Multiply(x,y): return x*y print( f'Multiply(40,20) = {Multiply(40,20)}')
输出
Multiply(40,20) = 800
示例 5:Lambda 表达式
x = -40.9 print(f' Lambda absolute of (-40.9) is : {(lambda x: abs(x)) (x)}') print(f' Lambda Square of 2^4 is: {(lambda x: pow(x, 2)) (4)}')
输出
Lambda absolute of (-40.9) is : 40.9 Lambda Square of 24 is: 16
广告