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

更新日期:2019-07-30

568 次瀏覽

開啟你的 職業生涯

完成課程,獲得認證

立即開始
廣告