如何使用Python对齐文本字符串?

如何使用Python对齐文本字符串?

在本文中,我们将学习如何使用Python对齐文本字符串。 我们将使用 f-strings 在python中对齐文本字符串。

Python的文本对齐功能有助于打印格式良好且干净的输出。 有时,要打印的数据长度不同,打印出来会显得不整洁。 通过指定对齐方式为左、右或中,并指定要为该字符串保留的空格(宽度),可以使用 字符串对齐 来对齐输出字符串。

文本将使用 f-strings 格式化。输出字符串的对齐方式由符号 ‘ <’,‘>’,‘^’ 定义,并跟随宽度数字。

字符串的 ljust(),rjust()和center()方法 也可用于对齐字符串。

所用方法

  • 使用f-strings。

  • 使用ljust(),rjust()和center()方法

方法1:使用f-strings左对齐

指定‘ < ‘后跟宽度数字,用于 左对齐 输出字符串语法。

示例

以下程序将在左侧使用30个预留空格对齐文本 –

# 在这种情况下,为具体的输出字符串保留了30个空间。
# 字符串在左侧打印。
print(f"{'左对齐字符串!!!' : <30}")

输出

在执行时,上述程序将生成以下输出 –

左对齐字符串!!!

方法2:使用f-strings右对齐

指定‘ > ‘后跟宽度数字,用于 右对齐 输出字符串语法。

示例

以下程序将在右侧使用30个预留空格对齐文本 –

# 在这种情况下,为具体的输出字符串保留了30个空间。
# 字符串在右侧打印。
print(f"{'右对齐字符串!!!' : >30}")

输出

在执行时,上述程序将生成以下输出 –

   右对齐字符串!!!

方法3:使用f-strings居中对齐

指定 ‘^’ 后跟宽度数字,用于 居中对齐 输出字符串语法。

示例

以下程序将文本居中对齐 –

# 在这种情况下,为具体的输出字符串保留了30个空间。
# 字符串在中间打印。
print(f"{'居中对齐字符串!!!' : ^30}")

输出

在执行时,上述程序将生成以下输出 –

   居中对齐字符串!!!   

方法4:以对齐格式打印变量 示例

以下程序使用f-strings和<、^、>符号分别以3种不同的对齐格式对给定的3个字符串进行对齐 –

# 所有3种类型的对齐都使用的输入字符串
leftAlign = "Left Alignement"
centerAlign = "Center Alignement"
rightAlign = "Right Alignement"

# 使用<、^、>符号打印对齐文本的结果
print(f"{leftAlign : <25}{centerAlign : ^20}{rightAlign : >25}")

输出

在执行时,上述程序将生成以下输出 –

Left Alignement           Center Alignement           Right Alignement

方法5:以对齐的列格式打印多个列表值

示例

以下程序使用f-strings和<、^、>符号依次以4种不同的对齐列格式对给定的4个列表进行对齐 –

# 多列输入列表
cricketers = ['Dhoni', 'Virat Kohli', 'Hardik Pandya', 'KL Rahul', 'Rohit Sharma']
score = [55, 90, 60, 45, 70]
place = ['Ranchi', 'Mumbai', 'Mumbai', 'Mumbai', 'Kolkata']
strikerate = [90, 60, 30, 50, 70]

# 对齐表头并输出 
print(f"{'Cricketers' : <20}{'Score' : ^20}{'Place' : ^20}{'Strikerate' : >10}")

# 对齐变量的值并输出
# 基于使用 for 循环的 4 个列,循环 4 次
for i in range(0, 4):
   # 采用左对齐、居中对齐和右对齐等方式对变量值进行对齐,使用特定的宽度
   print(f"{cricketers[i] : <20}{score[i] : ^20}{place[i] : ^20}{strikerate[i] : >10}")

输出

在执行上述程序后,将生成以下输出 −

Cricketers                 Score               Place        Strikerate
Dhoni                        55                Ranchi               90
Virat Kohli                  90                Mumbai               60
Hardik Pandya                60                Mumbai               30
KL Rahul                     45                Mumbai               50

方法6:使用 ljust()、rjust() 和 centre() 方法对齐文本

字符串的 ljust()、rjust() 和 center() 方法也可用于对齐字符串。

ljust() 方法

使用指定的字符(默认为空格)作为填充字符左对齐字符串。

语法

string.ljust(length, character)

参数

  • length(必需) − 返回的字符串长度。

  • character(可选) − 用于填充字符串右侧缺失空间的字符。默认为空格(“ ”)。

rjust() 方法

使用指定的字符(默认为空格)作为填充字符右对齐字符串。

语法

string.rjust(length, character)

参数

  • length(必需) − 返回的字符串长度

  • character(可选) − 用于填充字符串左侧缺失空间的字符。默认为空格(“ ”)。

center() 方法

使用指定的字符(默认为空格)作为填充字符中心对齐字符串。

语法

string.center(length, character)

参数

  • length(必需) − 返回的字符串长度

  • character(可选) − 用于在两侧填充缺失空间的字符。默认为空格(“ ”)。

示例

以下程序分别使用 ljust()、rjust() 和 center() 方法展示了文本的左对齐、右对齐和居中对齐 −

# 输入文本
inputText = 'Tutorialspoint'

# 返回宽度为 30 的左对齐文本
print("左对齐:", inputText.ljust(30))

# 返回宽度为 30 的右对齐文本
print("右对齐:", inputText.rjust(30))

# 返回宽度为 30 的居中对齐文本
print("居中对齐:", inputText.center(30))

输出

在执行上述程序后,将生成以下输出 −

左对齐: Tutorialspoint                
右对齐:                 Tutorialspoint
居中对齐:         Tutorialspoint        

方法7:使用指定字符对齐文本

示例

以下程序分别使用 ljust()、rjust() 和 center() 方法,并定义指定的字符以展示文本的左对齐、右对齐和居中对齐 −

# 输入文本
inputText = 'Tutorialspoint'

# 将文本左对齐并指定宽度为30,用字符 '@' 填充空白处
print("左对齐:", inputText.ljust(30, '@'))

# 将文本右对齐并指定宽度为30,用字符 '#' 填充空白处
print("右对齐:", inputText.rjust(30, '#'))

# 将文本居中对齐并指定宽度为30,用字符 '%' 填充空白处
print("居中对齐:", inputText.center(30, '%'))

输出结果

运行程序后将生成以下输出结果-

左对齐: Tutorialspoint@@@@@@@@@@@@@@@@
右对齐: ################Tutorialspoint
居中对齐: %%%%%%%%Tutorialspoint%%%%%%%%

结论

本文演示了如何使用ljust(), rjust(), 和center() 方法在Python中对齐文本字符串。此外,我们还学习了如何使用f字符串在不同位置对齐文本字符串。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程