Python 输出格式化

2024 年 8 月 29 日 | 5 分钟阅读

在本教程中,我们将学习如何格式化输出。格式化和输出是指呈现程序的输出。我们可以将输出格式化为人类可读的形式,或将数据写入文件以及其他指定的形式。有时我们需要控制即将产生的输出,因此我们可以根据自己的要求对其进行格式化。用户可以使用字符串切片和连接操作来创建任何布局来处理字符串。

有多种格式化输出的方法。

  • 我们可以使用 f 字符串方法来格式化字符串字面量。
  • 字符串的 format() 方法有助于用户创建更精美的输出。
  • 我们还可以执行字符串连接操作来创建所需的任何布局。字符串类还包含一些执行有用操作的方法,用于将字符串填充到给定的列宽。

使用字符串模运算符 (%) 格式化输出

%运算符有助于我们格式化字符串。它将左参数解释为应用于右参数的 printf() 格式字符串。Python 不提供 printf() 函数。为此,模运算符被字符串类重载以执行字符串格式化。它也称为字符串模运算符。

字符串模运算符在 Python (3.x) 中仍然可用,并且被广泛使用,但如今,旧的格式化风格已从语言中移除。

让我们理解以下示例 -

示例 -

输出

integer :  1, float :  5.33
Total Player :  24, Batsman :  12
  062
  4.56E+02

解释 -

在上面的代码中,“%2d”是一个占位符,它使用元组的第一个元素。它打印两个字符。对于浮点数的格式描述,使用了“%5.2f”。它也像其他占位符一样以字符 % 引入。它显示它可以包含的字符串总数。数字的小数部分或精度设置为 2,即占位符中 "." 后面的数字。最后一个字符“f”表示浮点数。

使用 format 方法格式化输出

与其他方法相比,format() 方法需要更多手动操作。我们使用 {} 来标记变量的替换并提供详细的格式指令,但我们也需要提供格式化信息。我们可以使用括号中的数字作为位置格式化。让我们通过以下示例来理解。

示例 -

输出

Hello World
Welcome to JavaTpoint
JavaTpoint to Welcome

项目中的括号和字符称为格式字段,它们将被替换为传递到 format() 方法的对象。括号中的数字可用于引用传递到 format() 方法的对象的位置。

让我们看另一个例子 -

示例 -

输出

Number one position is Java, T, and Point.
Java :12, Tpoint :    0.55
Second argument:  11, first one:   47.42
Java:   453,  Tpoint:    59.06

示例 - 3

输出

Java: 4127; For: 4098; Java: 4127
I love JavaTpoint Website

使用字符串方法格式化输出

我们还可以使用字符串切片和连接操作来格式化输出。字符串类型包含一些有助于以更精美的方式格式化输出的方法。一些有助于格式化输出的方法是 - str.ljust()、 str.rjust()str.centre()。让我们通过以下示例来理解 -

示例 -

输出

Center aligned string with fillchr: 
$$$$$$I love JavaTpoint$$$$$$$
The left aligned string is: 
I love JavaTpoint&&&&&&&&&&&&&&&&&&&&&&&
The right aligned string is : 
-----------------------I love JavaTpoint

Python 中的格式转换规则

下表列出了转换及其含义。

转换含义
d表示带符号整数十进制。
i表示带符号整数十进制。
o表示无符号八进制。
u表示已弃用,等同于 'd',即带符号整数十进制。
x表示无符号十六进制(小写)。
X表示无符号十六进制(大写)。
e表示浮点指数格式(小写)。
E表示浮点指数格式(大写)。
f表示浮点十进制格式。
F表示浮点十进制格式。
g如果指数大于 -4 或小于精度,则表示与“e”相同,否则表示与“f”相同。
G如果指数大于 -4 或小于精度,则表示与“E”相同,否则表示与“F”相同。
c表示单个字符(接受整数或单个字符字符串)。
r表示字符串(使用 repr() 转换任何 Python 对象)。
s表示字符串(使用 str() 转换任何 Python 对象)。
%表示不转换参数,结果中会有一个“%”字符。

结论

我们已经讨论了如何在 Python 中格式化输出。我们已经通过示例描述了各种技术。Python 提供了根据要求修改输出的功能。用户可以使用带位置参数的字符串或 format() 方法。本教程还包括了转换规则表。


下一个主题Python 属性装饰器