Python打印格式
在本程序中,我们将研究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)
当我们不确定答案时,即使没有提供足够的宽度,我们也可以尝试。