如何在 Python 中為數字新增前導零?


在使用 Python 處理數字時,通常需要為數字新增前導零。當您處理格式化資料或需要確保數字中存在一定數量的數字或以更易讀的形式顯示時,為數字新增前導零非常重要。在本文中,我們將探討可用於在 Python 中為數字新增前導零的不同方法。

為數字新增前導零有哪些方法?

在程式設計中,通常需要以特定方式格式化數值資料以滿足某些要求,例如為數字新增前導零,這意味著在數字的實際值之前放置零以使其具有固定寬度。

Python 是一種通用的程式語言,它提供了多個庫和方法來為數字新增前導零。以下是執行此任務的一些常用方法。

方法 1:使用 str.zfill() 方法

為數字新增前導零的一種方法是首先將數字轉換為字串,然後使用zfill()方法新增必要的先行零。zfill()方法接受一個引數,即結果字串的寬度或作為輸出出現的字串。如果原始字串短於指定的寬度,則zfill()方法會在字串的開頭新增零,直到達到指定的寬度。

zfill()的語法如下:

stri.zfill(desired_width)

其中 stri 是原始字串。

示例

number = 50
desired_width = 5
#first convert thenumber to string then use zfil method
number_str = str(number).zfill(desired_width)
print("Number after leading zeros: ") 
print(number_str)

輸出

Number after leading zeros: 
00050

在上面的示例中,我們從數字 50 開始,並使用 str() 函式將其轉換為字串。然後,我們使用 zfill() 函式為字串新增前導零,直到其寬度為 5。結果字串為“00050”。

方法 2:使用 rjust() 方法

為數字新增前導零的另一種方法是使用 rjust() 方法,該方法可用於右對齊字串並使用指定字元填充剩餘空間。要為數字新增前導零,我們可以將數字轉換為字串,然後使用所需的寬度和填充字元呼叫 rjust() 方法。

示例

number = 50
desired_width = 5
number_str = str(number).rjust(desired_width, "0")
print("Number after leading zeros: ")
print(number_str)

輸出

Number after leading zeros: 
00050

在上面的示例中,我們首先將數字轉換為字串,然後我們使用了 rjust() 方法,該方法有兩個引數,一個是寬度,另一個是我們用來填充以新增前導零到數字 50 的值。

方法 3:使用字串格式化

為數字新增前導零的另一種方法是使用字串格式化。Python 的字串格式化語法允許您指定數字的寬度和精度,以及其他內容。要為數字新增前導零,我們可以使用“0”字元作為填充字元並指定所需的寬度。

示例

number = 50
desired_width = 5
number_str = "{:0>{}}".format(number, desired_width)
print("Number after leading zeros: ") 
print(number_str)

輸出

Number after leading zeros: 
00050

在上面的示例中,我們使用字串格式化語法將數字 50 格式化為寬度為 5 的字串,從而新增前導零。“{:0>{}}”字串格式化表示式的部分指定我們希望用零 (“0”) 填充字串,希望右對齊數字 (“>”),並希望使用 format() 方法的第二個引數指定寬度。

方法 4:使用 f-string

為字串新增前導零的另一種方法是使用 f-string 語法。從 Python 3.6 開始,引入了稱為 f-string 的新字串格式化語法。與舊的字串格式化語法相比,f-string 提供了一種更簡單、更直觀的方式進行格式化。要為數字新增前導零,我們只需在 f-string 表示式中包含所需的寬度並用零填充字元即可。

示例

number = 50
desired_width = 5
print("Number after leading zeros: ")
number_str = f"{number:0>{desired_width}}"
print(number_str)

輸出

Number after leading zeros: 
00050

在上面的示例中,我們使用 f-string 語法將數字 50 格式化為寬度為 5 且具有前導零的字串。f-string 表示式 "{num:0>{width}}" 指定我們希望用零 (“0”) 填充字串,右對齊數字 (“>”),並使用變數“desired_width”指定寬度。

結論

總之,在 Python 中為數字新增前導零的方法有很多。我們已經探討了為數字新增前導零的不同方法,例如 zfill() 方法、字串格式化、f-string 或 rjust() 方法,瞭解每種方法的工作原理並選擇最適合需求的方法非常重要。

更新於: 2023-05-31

21K+ 次瀏覽

開啟您的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.