Python打印格式

时间:2020-02-23 14:43:10  来源:igfitidea点击:

在本程序中,我们将研究Python打印格式的各种方式,通过这些方式我们可以在控制台上打印数据并进行插值。

Python打印格式

轻松的打印格式在任何语言中听起来都是一个小功能,但它是日常程序中使用最多的一种。
如果一种语言支持简单的打印格式设置,那么这将是程序员的天堂!让我们继续研究一些格式化示例。

请注意,所有示例均已在Python 3.6上进行了测试。
其中一些可能在Python 2.x中不起作用,因为它们仅在Python 3中引入。

Python打印格式示例

让我们以简单的示例开始我们的旅程,并逐步建立。

Python打印多个值

一个简单的例子是打印多个值。
让我们看看如何完成此操作:

>>> a = 1
>>> b = 1.2
>>> c = "Python"
>>> print(a, b, c)

分隔打印中的多个值

在上一个脚本中,我们看到了如何打印多个值。
这是对它的一些修改:

>>> a = 1
>>> b = 1.2
>>> c = "Python"
>>> print(a, b, c, sep=",")

Python打印格式值插值

我们可以很容易地在我们的打印格式中插入任何类型的值。
让我们看看如何完成此操作:

name = "Shubham"
best_place = "theitroad"
print("My name is {} and best place to study programming is {}".format(name, best_place))

有更多方法可以做到这一点。
这是对该脚本的一些修改:

name = "Shubham"
best_place = "theitroad"
print("My name is {0} and best place to study programming is {1}".format(name, best_place))

打印格式输出将与上一个程序相同。

实际上,我们甚至可以将元组格式的值的顺序修改为:

name = "Shubham"
best_place = "theitroad"
print("Best place to study programming is {1}, my name is {0}".format(name, best_place))

值对齐

我们甚至可以将对齐方式应用于我们的输出。
让我们来看一些示例,以使输出居中对齐:

name = '{:^20}'.format('theitroad')
print(name)

如果您自己运行程序,您会注意到由于字符串theitroad实际上是10个字符长,因此在字符串之前有5个空格,在字符串之后有5个空格。
同样," 20"决定包括字符串在内的输出的总长度。

签名号码

我们还可以打印带有符号值的数字。
让我们在这里看一些例子:

print('{:+d}'.format(42))

字典格式

我们还可以格式化python字典值。
让我们在这里看一些例子:

stark = {'first': 'Ned', 'second': 'Brandon', 'third': 'Rob'}
print('{first} {third}'.format(**stark))

日期时间格式

我们还可以格式化日期时间值。
让我们在这里看到一些代码片段:

from datetime import datetime
print('{:%Y-%m-%d %H:%M}'.format(datetime(2016, 12, 7, 13, 22)))

这使我们可以内联格式化DateTime值。
Python 2.6之前没有此格式选项。

我们可以尝试使用DateTime的另一个格式化选项,通过它我们可以为日期和时间提供单独的选项:

from datetime import datetime
myDate = datetime(2016, 12, 7, 13, 22)
print('{:{dfmt} {tfmt}}'.format(myDate, dfmt='%Y-%m-%d', tfmt='%H:%M'))

输出将与先前的图像相同。

十进制格式

我们还可以将十进制值格式化为一个精度点。
让我们在这里看到一些代码片段:

value = '{:{width}.{prec}f}'.format(3.1428, width=5, prec=2)
print(value)

当我们不确定答案时,即使没有提供足够的宽度,我们也可以尝试。