前言

前兩篇我們介紹了怎麼建立字串、基本操作、以及一些常見的處理方法,今天我們要進一步來看看更進階、實用又漂亮的方法「格式化字串」。

格式化字串是什麼?為什麼要叫「格式化」?

「格式化字串」其實就是讓我們依照想要的格式,把字串跟變數的值都放在一起 print
原先我們學到的,不同 data type 是不能一起 print 的,但這樣真的很不方便,每次都在 print 後面加入 end = ” 讓我們 print 不換行,會導致我們光 print 就會占用很多行數
所以今天我們要來看看,到底怎麼將資料們,根據需求跟內容一起 print 出來~

也就是我們不再單純 print 字串或是數值而已,把他們透過一些方法合在一起,就像是印出一封客製化的通知信,這樣的做法就叫做「格式化 ( string formatting ) 」。

name = ‘Karel’
score = 95

格式化字串前

print( ‘恭喜’ , end = ”)
print( name , end = ”)
print( ‘期末考考了’ , end = ”)
print( score , end = ”)
print( ‘分!’ )

透過轉換 data type 可以稍微縮短一點:
print( ‘恭喜’ + name + ‘期末考考了’ + str(score) + ‘分!’ )

格式化字串後

方法一:使用 f-string(最推薦!)

print( f ‘恭喜 { name },期末考考了 { score } 分!’ )

只要在字串前面加上 f ,然後用 {} 把變數包起來,就可以直接讓變數直接一起跟字串 print 出來,是不是超級簡單又直覺!

方法二:使用 format()

print( ‘恭喜 {0},期末考考了 {1} 分!’.format(name, score))

在舊版還沒有 f-string 之前,format() 是最常見的寫法,我們可以自己決定 format 中的順序,插入想要放的位置,也是好用的方法!

方法三:使用 %

print( ‘恭喜 %s,期末考考了 %d 分!’ % (name, score))

% 是更舊的寫法,現在比較少在使用,因為 f-string 真的是太方便了~但以前程式碼中還是會看到,所以看到的時候也不用緊張,就趕快對看看他這邊填入的是什麼吧!
%s 表示要放字串,%d 表示要放整數。

結語
格式化字串能讓我們的輸出變得更有彈性、也更有可讀性,是寫出好程式的重要技巧!
熟練 f-string 更是每位 Python 使用者的基本功~

Close Menu