CodeGym /Java Adesua /Python SELF TW /進階使用 print() 函數

進階使用 print() 函數

Python SELF TW
等級 4 , 課堂 4
開放

10.1 format()

我們經常需要在控制台(螢幕)輸出很多資料。我們並不是第一個遇到這問題的人 — 所以在 Python 中早就出現了 函數 format(),它能讓我們更簡單、更直觀地結合字串並輸出資料。

format() 函數用於將值插入到字串的特定位置。函數的語法如下:


"從 {} 到 {} 的範本字串".format(值1, 值2,…)

事實 1: format() 函數是字串的子函數,因此它在字串上被呼叫。我們不需要將字串傳遞進函數,而是直接在字串後加上點(.),然後呼叫 format() 函數,並將參數傳遞給它。

事實 2: format() 函數使用傳入的值填充字串範本。它可以將傳入的值轉換成字串(例如,如果值是數字),並將它們插入由 {} 標記的位置。這樣的位置稱為 placeholder

基本用法:


welcome_message = "你好, {}, 歡迎來到 {}!"
print(welcome_message.format("安娜", "我們的商店"))               
        

結果: "你好, 安娜, 歡迎來到我們的商店!"

格式化數字:


output = "資料: {0:.2f} 和 {1:.2f}".format(3.1415926, 2.71828)
print(output)              
        

結果:"資料: 3.14 和 2.72" — 演示限制輸出到小數點後兩位數。

使用關鍵字:


output = "{name} 在 {company} 工作"
print(output.format(name="謝爾蓋", company="Google"))
        

結果: "謝爾蓋 在 Google 工作"

使用 format() 改善了代碼的可讀性和可維護性,允許我們輕鬆改變格式而不需要編輯整個字串。

10.2 f-string

從 Python 3.6 版開始加入了一種新的字串類型 — f-string,它的意思是「formatted string」。這些字串不僅可以提高代碼的可讀性,也比其他格式化方式執行得更快。

要使用 f-string,在字串前加上字母 "f""F"。要插入的表達式放在大括號 {} 中:

範例:


force = "黑暗面"
message = f"願原力與你同在 {force}!"
print(message)  # 輸出:願原力與你同在 黑暗面! 
        

重要! 在大括號中可以指定目前作用域內的變量(稍後會講到), Python 會自動將變量轉換為字串並插入指定位置

範例:


age = 28
message = f"我今年 {age} 歲"
print(message)  # 輸出:我今年 28 歲               
        

更棒的是,在大括號中可以使用 包含多個變量的表達式

範例:


birth_year = 1985
current_year = 2024
message = f"我今年 {current_year - birth_year} 歲"
print(message)  # 輸出:我今年 39 歲
        

在底層,這些都會被轉換為調用 format() 函數,但新的方式真的更方便。

盡情使用吧。

10.3 sepend 參數

在 Python 中,函數 print() 提供了兩個很有用的參數 — sepend,它們可以幫助控制輸出資料的格式。這些參數讓 print() 更加靈活,可以用於格式化輸出而不需要額外的函數或複雜的字串操作。

參數 sep 用於定義在 print() 中多個值之間使用的分隔符號,預設值是空格。這意味著,如果你傳遞多個參數給 print(),它們會被空格分隔。

如果你想讓資料被逗號分隔,而不是空格,你需要在最後加上 參數 sep,並將其設定為新的分隔符字串。

範例:


            print("Hello", "world")  # 輸出:Hello world 
            print("Hello", "world", sep=", ")  # 輸出:Hello, world
        

或者,你也可以將資料的每個值輸出到新的一行。這時需要將參數 sep 設置為特殊的換行符號 — 表示為 “\n”

範例 解釋

print(1, 2, 3, 4, 5, sep=",\n")  

循環將輸出數字
1,
2,
3,
4,
5
            

參數 end 決定所有傳遞值之後的輸出結果。預設值為換行符 (\n),代表在 print() 執行完後換行。

修改 end,我們可以控制資料輸出方式,比如讓輸出保持在同一行:

範例:


            print("Hello", end=" ")
            print("world")  # 輸出:Hello world               
        

使用 sepend 在需要特定格式的輸出場景中非常有用,比如建立表格、報表或將資料輸出為一行而不自動換行。

透過移除手動添加分隔符或控制行分隔線的需求,使用 sepend 不僅讓代碼更簡潔,還提高了代碼的可讀性和可維護性。

留言
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION