在Python中用列对齐方式打印

print() 函数在Python中已经发展了。它在Python 3中开始是一个语句,后来被转化为一个函数。

我们可以用不同的方法对结果进行格式化,以特定的格式打印东西。本教程将演示如何在Python中用列对齐方式打印。

在Python中使用% 格式化来进行列对齐打印

% 方法是最常见和最古老的格式化字符串的方法之一,可以得到所需风格的结果。我们可以使用%-*s 来指定作为列宽的间距。

每一行的间距都需要调整。

代码示例:

print("First Name: %-*s Last Name: %s" % (13,'Jim', 'Clark'))
print("Age: %-*s Website: %s" % (20,'42', 'DelftStack.com'))

输出:

First Name: Jim            Last Name: Clark
Age: 42                    Website: DelftStack.com

在Python中使用format() 函数来打印列的对齐方式

我们可以利用format() 函数以我们想要的风格和格式来打印结果。要在Python中用列对齐方式打印,我们必须为每一列指定相同数量的空格。

这可以通过format() 函数来实现。我们可以在函数中指定未知值,并使用大括号来指定空格。

代码示例:

print("First Name: {0:13} Last Name: {1}".format('Jim', 'Clark'))
print("Age: {0:20} Website: {1}".format('42', 'DelftStack.com'))

输出:

First Name: Jim           Last Name: Clark
Age: 42                   Website: DelftStack.com

在上面的例子中,我们使用format() 函数打印一个用户的详细资料,并将结果对齐。请注意,我们必须为第一行和第二行指定不同的空间。

这是为了管理列名的长度差异。

在Python中使用f-strings ,用列对齐方式打印

f-strings 是在Python 3中引入的一种格式化字符串的方法。这些方法比以前的方法相对更快。

我们还可以使用f-strings ,用print() 函数指定间距作为列宽。

代码示例:

print(f"{'First Name: ' + 'Jim':<25} Last Name: {'Clark'}")
print(f"{'Age: ' + '42':<25} Website: {'DelftStack.com'}")

输出:

First Name: Jim           Last Name: Clark
Age: 42                   Website: DelftStack.com

在上面的代码例子中,结果是以完美的对齐方式打印的。使用这种方法的好处是,我们不必为不同的行指定不同的间距。

在Python中使用expandtabs() 函数以列对齐方式打印

我们可以在打印东西时使用转义字符来添加新的行、制表符和其他字符。t 字符被用来指定一个制表符。

我们可以用expandtabs() 函数来使用这个转义字符。这个函数可以在Python中明确地指定制表符的间距和列的对齐。

代码示例:

print(('First Name: Jim' + 't' + 'Last Name: Clark').expandtabs(13))
print(('Age: 42' + 't' + 'Website: DelftStack.com').expandtabs(26))

输出:

First Name: Jim           Last Name: Clark
Age: 42                   Website: DelftStack.com

在Python中使用just() 函数来打印列对齐方式

在Python中,我们有不同的方法来进行字符串对齐。我们可以使用ljust(),rjust, 和center() 函数来对齐字符串。

使用这些,我们可以根据我们的要求适当地对齐行。这个例子将演示ljust() 函数。

这个函数将对字符串进行左对齐。间距是在函数中指定的,两行的间距可以是相同的,以便将它们作为列来对齐。

代码示例:

print('First Name: Jim'.ljust(40) + 'Last Name: Clark')
print('Age: 42'.ljust(40) + 'Website: DelftStack.com')

输出:

First Name: Jim                         Last Name: Clark
Age: 42                                 Website: DelftStack.com

在上面的例子中,我们用ljust() 函数将字符串向左对齐,它们看起来就像列一样对齐了。同样,我们也可以使用其他函数进行对齐。

总结

总结一下,我们讨论了在Python中打印成列对齐的字符串的几种方法。为此,我们首先讨论了不同的字符串格式化方法来实现这一点。

在这些方法中,fstrings 被证明是最容易使用的方法。我们还讨论了使用expandtabs() 函数的间距,不同的函数如ljust() 也能完美地解决与对齐有关的问题。