📜  Python f-string中的字符串对齐

📅  最后修改于: 2022-05-13 01:55:51.140000             🧑  作者: Mango

Python f-string中的字符串对齐

Python中的文本对齐对于打印出干净格式的输出很有用。有时要打印的数据的长度会有所不同,这使得打印时看起来很乱。通过使用字符串对齐,输出字符串可以通过将对齐定义为左、右或居中并定义空间(宽度)为字符串保留来对齐。

方法:我们将使用 f 字符串来格式化文本。输出字符串的对齐语法由'<'、'>'、'^'定义,后跟宽度数。

示例 1:对于左对齐输出字符串语法,定义 '<' 后跟宽度数字。

# here 20 spaces are reserved for the 
# particular output string. And the string
# is printed on the left side
print(f"{'Left Aligned Text' : <20}")

输出 :

Left Aligned Text

示例 2:对于右对齐输出字符串语法,定义 '>' 后跟宽度编号。

# here 20 spaces are reserved for the 
# particular output string. And the string
# is printed on the right side
print(f"{'Right Aligned Text' : >20}")

输出 :

Right Aligned Text

示例 3:对于中心对齐输出字符串语法,定义 '^' 后跟宽度编号。

# here 20 spaces are reserved for the 
# particular output string. And the string
# is printed in the middle
print(f"{'Centered' : ^10}")

输出 :

Centered 

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

# assigning strings to the variables
left_alignment = "Left Text"
center_alignment = "Centered Text"
right_alignment = "Right Text"
  
# printing out aligned text
print(f"{left_alignment : <20}{center_alignment : ^15}{right_alignment : >20}")
输出 :
Left Text            Centered Text           Right Text

示例 5:在对齐的列外观中打印出多个列表值。

# assigning list values to the variables
names = ['Raj', 'Shivam', 'Shreeya', 'Kartik']
marks = [7, 9, 8, 5]
div = ['A', 'A', 'C', 'B']
id = [21, 52, 27, 38]
  
# printing Aligned Header
print(f"{'Name' : <10}{'Marks' : ^10}{'Division' : ^10}{'ID' : >5}")
  
# printing values of variables in Aligned manner
for i in range(0, 4):
    print(f"{names[i] : <10}{marks[i] : ^10}{div[i] : ^10}{id[i] : >5}")
输出 :
Name        Marks    Division    ID
Raj           7         A        21
Shivam        9         A        52
Shreeya       8         C        27
Kartik        5         B        38