Python String format() 方法如何工作?10個例子

無論是數據庫查詢還是數學運算的結果,Python 字符串格式方法都提供了一種更加動態和吸引人的方式來向用戶呈現結果。

我們來看看str.format()函數在 Python 中是如何工作的。您還將了解如何在自己的程序中使用這種格式。

Python String format() 是如何工作的?

Python str.format()函數允許您將結果插入到字符串中的任何位置。

它的工作原理是使用花括號為字符串中的結果分配空間。然後它使用format()方法將您的輸出寫入該位置。

大括號外的字符串就是您所說的文字文本。

如何使用 Python String format() 方法

所述str.format()函數接受一個值和一個可選的字符串格式說明。

下面是一般語法的樣子:

str.format(value, format_spec)

現在讓我們來看看如何使用這個 Python 字符串方法的更實際的例子。

1. 在特定位置插入值

以下是如何使用str.format()方法將值插入字符串的基本示例:

Cost = 45 formattedMethod = "This good costs {} dollars only" print(formattedMethod.format(Cost)) Output: This good costs 45 dollars only

上面的代碼是一樣的:

formattedMethod = "This good costs {} dollars only" print(formattedMethod.format(45)) Output: This good costs 45 dollars only

2. 將多個輸出插入到一個字符串中

您還可以將多個結果插入到一個字符串中。就是這樣:

y = 7*8 f = 5+5 g = 0 a = "The value of y is {}, while f is {}. Nobody can see {}".format(y, f, g) print(a) Output: The value of y is 56, while f is 10. Nobody can see 0

3. 使用轉義大括號將輸出放置在專用大括號中

如果您需要將任何結果放在大括號中,那很容易。您只需要引入兩個額外的轉義大括號。

例如,假設您希望y在專用的花括號中:

a = "The value of y is {{{}}}, while f is {}. Nobody can see {}".format(y, f, g) print(a) Output: The value of y is {56}, while f is 10. Nobody can see 0

4. 從列表中輸出值

您可以從列表中選擇特定值並將它們插入到字符串中:

myList = [10, 2, 4, 6] print(("The first is {} and the third is {}").format(myList[0], myList[2])) Output: The first is 10 and the third is 4

為避免在.format()括號內重複,您可以將格式說明符設置為指向單個變量。

以下是如何做到這一點:

myList = [10, 2, 4, 6] print(("The first is {yourList[0]} and the third is {yourList[2]}").format(yourList = myList)) Output: The first is 10 and the third is 4

上面的例子也適用於我們之前處理過的其他例子。所以,你可以使用這個技巧來玩弄它們。

5. 從字典中插入值

類似地,正如您在上一節中所做的那樣,您可以使用str.format()方法將字典值插入到字符串中:

myDiction = {"Ten":10, "Two":2, "Four":4, "Six":6} print(("The first is {} and the third is {}").format(myDiction["Ten"], myDiction["Four"])) Output: The first is 10 and the third is 4

相關:如何在 Python 中將列表轉換為字典

如果您想使用上一節中的技巧:

myDiction = {"Ten":10, "Two":2, "Four":4, "Six":6} print(("The first is {Ten} and the third is {Four}").format(**myDiction)) Output: The first is 10 and the third is 4

你也可以把上面的代碼寫成:

print(("The first is {d[Ten]} and the third is {d[Four]}").format(d=myDiction)) Output: The first is 10 and the third is 4

6. 將函數的輸出插入字符串

如果要在字符串中顯示函數的輸出:

def difNums(a, b): if a > b: return a - b else: return return "You can't substract {} from {} using this function".format(a, b) print(("Hey there: {}").format(difNums(2, 6))) Output: Hey there: You can't substract 2 from 6 using this function

使用 Python 字符串格式說明符

格式說明符可讓您選擇格式的通過方式。如前所述,它是str.format()附帶的可選參數。

使用此選項,您可以對齊輸出、減少長字符串、分組輸出或將整數四捨五入到特定數量的有效數字,甚至更多。

您通常會在花括號內編寫格式說明符。但是您也可以在.format()括號內明確說明它們。

讓我們繼續看看它的一些用例。

7. 對齊字符串輸出

您可以使用更大的 ( > ) 符號將字符串輸出向右對齊:

print("Hello {:>15}".format(12734589)) Output: Hello 12734589

如果需要,您還可以將文本與中心對齊:

print("Hello {:^15}".format(12734589)) Output: Hello 12734589

讓我們進一步格式化上面的輸出。例如,您可以包含下劃線以查看字符串輸出任一側的填充:

print("Hello {:_^15}".format(12734589)) Output: Hello ___12734589____

但如前所述,您可以將格式說明符明確聲明為str.format() 中的參數。

因此,在這種情況下,前面的代碼如下所示:

print("Hello {:{g}}".format(12734589, g = "_^15")) Output: Hello ___12734589____

隨意使用上述選項重寫其他示例。

8. 將輸出格式化為特定數量的有效數字

您可能還想為使用.format()方法的計算返回特定數量的有效數字。

例如,下面的示例代碼將數學運算的結果四捨五入為一個有效的十進制數:

calcprofitPerc = ((45 - 20)/45)*100 formattedOutput = "Our profit on this is {profit: .1f}%" print(formattedOutput.format(profit = calcprofitPerc)) Output: Our profit on this is 55.6%

9. 截斷長字符串

儘管截斷文本似乎不切實際,但您無法確定在哪裡可能需要它。

以下是使用str.format()函數截斷部分字符串輸出的方法:

print(("Truncate this to the first 3 alphabets: {:.3}").format("idowuomisola")) Output: Truncate this to the first 3 alphabets: ido

10. 使用標準分離一組數字

您可以使用下劃線或逗號分隔一組數字:

print("Separated by underscore: {:{g}}".format(12734589, g="_")) print("Separated by comma: {:{g}}".format(12734589, g=",")) Output: Separated by underscore: 12_734_589 Separated by comma: 12,734,589

相關:如何在 Python 中拆分字符串

此外,您可以使用其鍵指定要處理的數字組:

print("First numbers by underscore: {0:{g}}".format(12734589, 123674, 662772, g="_")) print("Third numbers by comma: {2:{g}}".format(12734589, 123674, 662772, g=",")) Output: First numbers by underscore: 12_734_589 Third numbers by comma: 662,772

使用 Python String format() 方法很好地呈現輸出

使您的程序脫穎而出的方法之一是您如何呈現結果和查詢。毫無疑問,Python 字符串格式方法提供了一種更清晰的輸出結果方式。與以前的舊 Python 版本的取模方法不同,Python 3 中引入的新字符串格式更具可讀性和人性化。


如何使用 Python 作為命令行計算器

如何使用 Python 作為命令行計算器

雖然您可以在計算機上使用圖形計算器,但 Python 編程語言解釋器可以兼作桌面計算器。它在 Python 社區中非常流行,以至於官方教程中都提到了它。下面介紹如何將 Python 用作計算器。

面向程序員的 8 個最佳 Java 博客

面向程序員的 8 個最佳 Java 博客

作為程序員,你應該接受挑戰才能生存,並在開發或編程領域創造一些奇蹟。因此,如果您正在尋求學習高級編程語言以提高您的職業技能,Java 是最好的前景之一。

初學者開始使用 Python 的 7 個重要命令

初學者開始使用 Python 的 7 個重要命令

如果您有一個全面的路線圖,詳細說明初學者應學習哪些概念以及如何進一步進步以達到下一個里程碑,那麼學習 Python 等新編程語言將變得輕而易舉。即使是中級程序員也應該經常複習他們的基礎知識,為自己打下堅實的基礎。

響應式網頁設計原則

響應式網頁設計原則

如今,構建一個根據瀏覽器或設備調整其用戶界面的網站或應用程序是一種常見的做法。有兩種方法可以實現這一目標。第一個涉及為不同的設備創建不同版本的網站或應用程序。但它效率低下,並可能導致不可預測的錯誤。

如何使用 C++、Python 和 JavaScript 計算數字中的位數

如何使用 C++、Python 和 JavaScript 計算數字中的位數

處理數字是編程的一個組成部分。每種編程語言都支持以多種不同方式操作數字。在本文中,您將學習如何使用迭代、基於日誌和基於字符串的方法查找整數中的總位數。

用於容器管理的 9 個最佳 Docker 替代方案

用於容器管理的 9 個最佳 Docker 替代方案

容器對於虛擬環境中的軟件開發、部署和管理非常有益。Docker 在容器化過程中很有用,但它不是唯一的平台。如果您正在尋找 Docker 的替代品,那就別無所求。此列表展示了一些功能豐富且高效的 Docker 替代方案,可用於您的下一個項目。

SQL 與 NoSQL:下一個項目的最佳數據庫是什麼?

SQL 與 NoSQL:下一個項目的最佳數據庫是什麼?

SQL 與 NoSQL:下一個項目的最佳數據庫是什麼?

如何在您的 WordPress 帖子中嵌入推文

如何在您的 WordPress 帖子中嵌入推文

在您的 WordPress 帖子中嵌入第三方服務是一種吸引訪問者興趣的令人興奮的方式。嵌入的內容還提供了使掃描更容易的視覺提示。WordPress 使添加此類內容變得容易。

如何使用 npkill 刪除節點模塊文件夾

如何使用 npkill 刪除節點模塊文件夾

Node.js 是一個 JavaScript 運行時環境,允許您在 Web 瀏覽器之外運行 JavaScript,使其成為開發各種應用程序的流行選擇。它的流行部分是由於大量的 NPM 包可以簡化開發人員的體驗。

如何編寫和編譯你的第一個 Solidity 代碼

如何編寫和編譯你的第一個 Solidity 代碼

Solidity 是以太坊區塊鏈上智能合約使用的編程語言。它是一種靜態類型的、面向對象的編程語言。

前 5 大徽章將增強您的 GitHub 存儲庫

前 5 大徽章將增強您的 GitHub 存儲庫

GitHub 徽章可以通過為用戶提供一種快速的方法來捕獲存儲庫指標來提高存儲庫的可讀性。徽章可以嵌入到您的 README.md 中,以向其他開發人員闡明您的項目的重要性和必要性。因此,讀者可以通過檢查附加的徽章快速了解存儲庫。

什麼是國際程序員節?今年的 3 種慶祝方式

什麼是國際程序員節?今年的 3 種慶祝方式

國際慶祝日是對社會事務、歷史日子和各自職業給予認可的好方法。國際程序員日慶祝程序員在改善日常生活方面所發揮的作用。我們生活的文明世界是程序員辛勤工作的產物。

Visual Studio 2022 與 2019:您現在應該升級嗎?解釋

Visual Studio 2022 與 2019:您現在應該升級嗎?解釋

今年早些時候,微軟向狂野的編程世界發布了 Visual Studio 2022 的預覽版。這是個好消息!這是一個非常受歡迎的 IDE,但考慮到它蓬勃發展的 DevOps 生態系統的變化速度,它需要進行調整甚至大修。

軟件度量的簡單介紹

軟件度量的簡單介紹

軟件度量是用於量化軟件各個方面的度量。這些方面可以包括開發團隊的成本、質量和效率。

如何在 Windows 10 上安裝 .NET Framework 3.5 版

如何在 Windows 10 上安裝 .NET Framework 3.5 版

作為 Windows 用戶,您可能至少遇到過 .NET Framework 這個詞。它是 Microsoft 開發的軟件框架,可讓您構建和運行 C#、C++、F# 和 Visual Basic 程序。最新的 .NET 版本是 4.8,但您的計算機可能需要舊版本的 .NET(如 .NET 3.5)才能運行某些應用程序。

Flask 或 CherryPy:您應該使用哪種 Python 框架?

Flask 或 CherryPy:您應該使用哪種 Python 框架?

如果您是 Python 開發人員,您可以從一系列可用的框架中受益匪淺。雖然有些框架最適合大型生態系統,但其他框架則專門服務於特定的發展目標。繼續閱讀以了解兩個 Python 框架 Flask 和 CherryPy 之間的基本特性、用法和區別。

如何使用 Python、C++ 和 JavaScript 查找 N 位完美立方體和正方形

如何使用 Python、C++ 和 JavaScript 查找 N 位完美立方體和正方形

許多程序員喜歡使用代碼解決棘手的數學問題。它有助於提高頭腦和提高解決問題的能力。在本文中,您將學習如何使用 Python、C++ 和 JavaScript 找到最小和最大的 n 位完美正方形和立方體。每個示例還包含幾個不同值的示例輸出。

如何將 Python 添加到 Windows PATH 變量

如何將 Python 添加到 Windows PATH 變量

從終端運行 Python 通常是不可避免的。但是,如果您是第一次在 Windows 10 上安裝 Python,則只有將其添加到 Windows PATH 環境變量中,才能通過 Windows 終端運行它。

如何使用 Python if 語句

如何使用 Python if 語句

if 語句是邏輯編程的驅動力。因此,更好地掌握 Python 是對 Python 編程技能的重要補充。

如何使用 Python 作為命令行計算器

如何使用 Python 作為命令行計算器

雖然您可以在計算機上使用圖形計算器,但 Python 編程語言解釋器可以兼作桌面計算器。它在 Python 社區中非常流行,以至於官方教程中都提到了它。下面介紹如何將 Python 用作計算器。

面向程序員的 8 個最佳 Java 博客

面向程序員的 8 個最佳 Java 博客

作為程序員,你應該接受挑戰才能生存,並在開發或編程領域創造一些奇蹟。因此,如果您正在尋求學習高級編程語言以提高您的職業技能,Java 是最好的前景之一。

初學者開始使用 Python 的 7 個重要命令

初學者開始使用 Python 的 7 個重要命令

如果您有一個全面的路線圖,詳細說明初學者應學習哪些概念以及如何進一步進步以達到下一個里程碑,那麼學習 Python 等新編程語言將變得輕而易舉。即使是中級程序員也應該經常複習他們的基礎知識,為自己打下堅實的基礎。

響應式網頁設計原則

響應式網頁設計原則

如今,構建一個根據瀏覽器或設備調整其用戶界面的網站或應用程序是一種常見的做法。有兩種方法可以實現這一目標。第一個涉及為不同的設備創建不同版本的網站或應用程序。但它效率低下,並可能導致不可預測的錯誤。

如何使用 C++、Python 和 JavaScript 計算數字中的位數

如何使用 C++、Python 和 JavaScript 計算數字中的位數

處理數字是編程的一個組成部分。每種編程語言都支持以多種不同方式操作數字。在本文中,您將學習如何使用迭代、基於日誌和基於字符串的方法查找整數中的總位數。

用於容器管理的 9 個最佳 Docker 替代方案

用於容器管理的 9 個最佳 Docker 替代方案

容器對於虛擬環境中的軟件開發、部署和管理非常有益。Docker 在容器化過程中很有用,但它不是唯一的平台。如果您正在尋找 Docker 的替代品,那就別無所求。此列表展示了一些功能豐富且高效的 Docker 替代方案,可用於您的下一個項目。

SQL 與 NoSQL:下一個項目的最佳數據庫是什麼?

SQL 與 NoSQL:下一個項目的最佳數據庫是什麼?

SQL 與 NoSQL:下一個項目的最佳數據庫是什麼?

如何在您的 WordPress 帖子中嵌入推文

如何在您的 WordPress 帖子中嵌入推文

在您的 WordPress 帖子中嵌入第三方服務是一種吸引訪問者興趣的令人興奮的方式。嵌入的內容還提供了使掃描更容易的視覺提示。WordPress 使添加此類內容變得容易。

如何使用 npkill 刪除節點模塊文件夾

如何使用 npkill 刪除節點模塊文件夾

Node.js 是一個 JavaScript 運行時環境,允許您在 Web 瀏覽器之外運行 JavaScript,使其成為開發各種應用程序的流行選擇。它的流行部分是由於大量的 NPM 包可以簡化開發人員的體驗。

如何編寫和編譯你的第一個 Solidity 代碼

如何編寫和編譯你的第一個 Solidity 代碼

Solidity 是以太坊區塊鏈上智能合約使用的編程語言。它是一種靜態類型的、面向對象的編程語言。