在 Python 中用空格填充字串
-
在 Python 中使用
ljust()
函式用空格填充字串的右端 -
在 Python 中使用
rjust()
函式用空格填充字串的左端 -
在 Python 中使用
center()
函式用空格填充字串的兩端 -
在 Python 中使用帶有模數
(%)
運算子的字串格式來填充帶有空格的字串 -
在 Python 中使用帶有
str.format()
函式的字串格式化來填充帶有空格的字串 -
在 Python 中使用帶有
f-strings
的字串格式來填充帶有空格的字串
填充可以定義為插入非資訊性字元,這些字元不會向給定字串新增任何值。它可以在字串的任何一端或兩端完成。
字串填充很有用,在字串格式化和在列印時設定字串的對齊方式時非常有用。本教程討論可用於在 Python 中用空格填充字串的不同方法。
在 Python 中使用 ljust()
函式用空格填充字串的右端
ljust()
函式用於向字串新增正確的填充,這意味著向字串的右端填充。
ljust()
函式包含兩個引數:width
和 fillchar
。width
引數是強制性的,它指定填充過程完成後給定字串的長度。fillchar
引數是可選的,用於表示我們想要填充字串的字元。
預設情況下,fillchar
值是一個空格字元,即' '
。
以下程式碼使用 ljust()
函式在 Python 中用空格填充字串的右端。
a = "I am legend"
print(a.ljust(15))
輸出:
I am legend
在 Python 中使用 rjust()
函式用空格填充字串的左端
與 ljust()
函式具有相似的風格但用途不同,rjust()
函式用於向字串新增左填充。
類似於 ljust()
函式,rjust()
函式包含兩個引數:width
和 fillchar
。width
引數是強制性的,它指定填充過程完成後給定字串的長度。另一方面,fillchar
引數是可選的,用於表示我們想要填充字串的字元。
當我們需要命名以數字開頭的檔案時,此功能非常有用,因為它有助於實現更直觀的排序實踐。
以下程式碼使用 rjust()
函式在 Python 中用空格填充字串的左端。
a = "I am legend"
print(a.rjust(15," "))
輸出:
I am legend
在 Python 中使用 center()
函式用空格填充字串的兩端
center()
函式向字串的兩端新增等量的填充。它用於將字串與給定的字串寬度居中對齊。
與 ljust()
和 rjust()
方法非常相似,center()
函式包含兩個引數:width
和 fillchar
。這兩個函式執行完全相同的工作,如上文文章中解釋的兩種方法中所述。
以下程式碼使用 center()
函式在 Python 中用空格填充字串的兩端。
a = "I am legend"
print(a.center(20))
輸出:
I am legend
在 Python 中使用帶有模數 (%)
運算子的字串格式來填充帶有空格的字串
%
符號,有時也稱為字串格式化或插值運算子,是在 Python 中實現字串格式化的一種方式。作為實現字串格式化的最古老的可用方法,此運算子適用於幾乎所有版本的 Python。
%
符號和代表轉換型別的字母被標記為變數的佔位符。
以下程式碼使用帶有模數 (%)
運算子的字串格式化,在 Python 中用空格填充字串。
print('%15s' % ('I am legend'))
輸出:
I am legend
在上面的程式中,我們對字串進行左填充。我們可以類似地使用以下程式碼進行正確的填充。
print('%-15s' % ('I am legend'))
輸出:
I am legend
在這裡,唯一的缺點是它只能在字串的左端或右端實現填充,而不能同時實現兩端。而且,使用這種方法會影響程式的可讀性。
在 Python 中使用帶有 str.format()
函式的字串格式化來填充帶有空格的字串
在 Python 中實現字串格式化的另一種方法是使用 str.format()
函式。此過程使大括號 {}
標記 print
語句中需要替換變數的位置。
str.format()
最初是在 Python 2.6 中引入的,可以在所有 Python 版本中使用,從 Python 2.6 到 Python 3.5。這個函式在編碼人員中非常流行,程式設計師更喜歡這種方式來實現字串格式化,因為它在處理複雜的字串格式化方面非常有效。
以下程式碼使用字串格式化和 str.format()
函式在 Python 中用空格填充字串。
print('{:15}'.format('I am legend'))
輸出:
I am legend
上面的程式碼向給定的字串新增了正確的填充。要將左填充新增到給定的字串,我們可以對上面的程式進行細微的調整並使用以下程式。
print('{:>15}'.format('I am legend'))
輸出:
I am legend
str.format()
函式也可以同時填充兩邊的字串。然後,你所要做的就是在冒號後的佔位符中新增 ^
符號。
以下程式碼使用 str.format()
函式在 Python 中用空格填充字串的兩端。
print('{:^15}'.format('I am legend'))
輸出:
I am legend
在 Python 中使用帶有 f-strings
的字串格式來填充帶有空格的字串
在 Python 3.6 中引入,它是 Python 中實現字串格式化的最新方法。因此,此方法可用於更新和最新版本的 Python。
它比其他兩個同行,%
符號和 str.format()
更有效,因為它更快更容易理解。它還有助於以比其他兩種方法更快的速度在 Python 中實現字串格式。
以下程式碼使用帶有 f-strings
的字串格式在 Python 中用空格填充字串的右端。
width = 15
padding = ' '
print(f'{"I am legend" :{padding}<{width}}')
輸出:
I am legend
要將左填充新增到給定的字串,我們可以對上面的程式碼進行小的調整並使用以下程式。
width = 15
padding = ' '
print(f'{"I am legend" :{padding}>{width}}')
輸出:
I am legend
與 str.format()
函式的情況類似,我們可以在佔位符中指定的填充和寬度之間使用^
符號,在 Python 中用空格填充字串的兩端。
width = 15
padding = ' '
print(f'{"I am legend" :{padding}^{width}}')
輸出:
I am legend
當談到使用字串格式來實現填充字串的目的時,在我們提到的那些中,最推薦使用 f-strings
,因為它更簡潔、可讀,因此更不容易出錯。
Vaibhhav is an IT professional who has a strong-hold in Python programming and various projects under his belt. He has an eagerness to discover new things and is a quick learner.
LinkedIn