6. Python 操作方法:添加和附加文本以填充空间

本文介绍了在Python中使用ljust,rjust和center方法进行文本对齐和填充的操作,包括左对齐、右对齐和居中对齐的示例,并展示了如何创建终端欢迎屏幕。文章提供了多个代码示例,帮助读者理解这些方法的用法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

介绍
前置和/或附加文本以填充空间
示例一:将文本左对齐并在之后填充
示例二:将文本右对齐并在前面填充
示例三:居中对齐文本,前后填充
示例四:创建终端欢迎屏幕
示例五:使用文档字符串创建终端欢迎屏幕
结论
介绍
在开发应用程序时,有时可能需要在终端的文本输出前添加或附加一些文本。例如,在框内输出一些文本以使其脱颖而出。

在 Python 中,有许多方法可以执行此操作,但在本文中,我将介绍如何使用ljust,rjust和center方法来执行文本对齐以及前置和/或附加其他字符。

话虽如此,让我们开始吧。

前置和/或附加文本以填充空间
首先,让我们设置一些将在前三个示例中使用的变量:

output_length = 35
text = "Hello World"
fill_char = "*"

output_length:定义文本输出的长度。在这种情况下,最多 35 个字符。
文本:要显示的文本。这将针对每个示例进行轻微修改,以在需要时添加间距。
fill_char:对于输出中的任何空字符(35 - 文本),放置一个*.
现在,让我们看一些例子。

示例一:将文本左对齐并在之后填充
对于第一个示例,文本将左对齐,并在其后留一个空格。

text_left = f"{text} "
print(f"{text_left.ljust(output_length, fill_char)}")

输出:
在这里插入图片描述
好的,让我们回顾一下代码以了解其工作原理:

text_left = f"{text} “:这是一个新变量,采用先前定义的text变量并在末尾添加一个空格。
print(f”{text_left.ljust(output_length, fill_char)}"):print使用text_left变量作为文本的标准 f 字符串。文本然后使用该ljust方法指示文本应向左对齐。然后它有output_length和fill_char变量来指定输出的总长度以及使用哪个字符 ( *) 来填充文本后的任何空白。
示例二:将文本右对齐并在前面填充
在此示例中,文本将右对齐,并在其前面留一个空格。

text_right = f" {text}"
print(f"{text_right.rjust(output_length, fill_char)}")

rjust工作方式相同,ljust但文本位于右侧。

输出:
在这里插入图片描述
示例三:居中对齐文本,前后填充
在此示例中,文本将居中对齐,前后各留一个空格。

text_centre = f" {text} "
print(f"{text_centre.center(output_length, fill_char)}")

输出:
在这里插入图片描述
同样,这与前两个示例类似,文本位于output_length. 文本两侧的任何空白区域都将(尽可能)均匀填充。

示例四:创建终端欢迎屏幕
这个例子会有点复杂,但总的来说,它是一个简单的例子,说明如何一起使用ljust,rjust和center方法。

output_length = 35
fill_char = " "
border_char = "*"
header_footer_row = f"{border_char * output_length}"
empty_row = f"{border_char.ljust(output_length - 1, fill_char)}{border_char}"
text_row_one = "Welcome to my program"
text_row_two = "=" * len(text_row_one)


print(f"\033[1;32;40m{header_footer_row}")
print(empty_row)
print(empty_row)

print(f"\033[1;32;40m{border_char}\033[1;35;40m\
{text_row_one.center(output_length - 2, fill_char)}\033[1;32;40m\
{border_char}")

print(f"\033[1;32;40m{border_char}\033[1;36;40m\
{text_row_two.center(output_length - 2, fill_char)}\033[1;32;40m\
{border_char}")

print(empty_row)
print(empty_row)
print(header_footer_row)

输出:
在这里插入图片描述
为了进一步解释代码,大部分代码与前面的示例类似,但添加了一些额外的变量:

header_footer_row:这是框的页眉和页脚。它是 border_char ( ) 乘以 output_length (35) 得到一行 35 的
empty_row:用于间距的行。它以 a 开头*,然后是空格 ( fill_char),最后是一个 final *。
text_row_one:要在框中显示的主要文本。
text_row_two:与text_row_one中的文本长度匹配的一行等号。
text_rows一旦定义了变量,剩下的代码就是打印语句的集合,显示中间有两个的框。

该框为绿色 ( \033[1;32;40m),文本为洋红色 ( \033[1;35;40m),等号为青色 ( \033[1;36;40m)。

示例五:使用文档字符串创建终端欢迎屏幕
最后一个示例是示例 4 的重复,但它没有使用多个打印函数,而是在单个打印函数内使用了文档字符串。一个区别是text_rows有不同的文本。

output_length = 35
fill_char = " "
border_char = "*"
header_footer_row = f"{border_char * output_length}"
empty_row = f"{border_char.ljust(output_length - 1, ' ')}{border_char}"
text_row_one = "Welcome to my other program"
text_row_two = "=" * len(text_row_one)


print(f"""\033[1;32;40m{header_footer_row}
{empty_row}
{empty_row}
\033[1;32;40m{border_char}\033[1;35;40m\
{text_row_one.center(output_length - 2, fill_char)}\033[1;32;40m\
{border_char}
\033[1;32;40m{border_char}\033[1;36;40m\
{text_row_two.center(output_length - 2, fill_char)}\033[1;32;40m\
{border_char}
{empty_row}
{empty_row}
\033[1;32;40m{header_footer_row}""")

输出:
在这里插入图片描述
结论
我希望这篇文章有用。介绍中提到,还有其他的方法,比如format可以使用的方法。请随意探索该方法以及任何其他可用的方法。
如果你喜欢我的文章,记得关注获取更多的信息。感谢您的阅读,祝您有美好的一天!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Q shen

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值