在 Python 中打印 % 符号

本教程将介绍使用 Python 的 print() 函数打印 % 符号的方法。

打印 % 登录 Python

通常,如以下代码片段所示,我们不需要任何特殊技巧即可使用 Python 中的 print() 函数将 % 符号写入控制台。

print("This is the % sign")

输出:

This is the % sign

我们使用 Python 的 print() 函数将 % 符号打印到控制台。当我们在同一个 print() 函数中编写带有 %s 占位符和另一个 % 符号的字符串时,就会出现问题。下面的代码运行没有错误。

text = "some text"
print("this is %s"%text)

输出:

this is some text

但是,当我们尝试组合上述两个代码时,以下结果代码片段给了我们一个错误。

text = "some text"
print("this is a % sign with %s"%text)

错误:

---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-4-6006ad4bf52e> in <module>()
      1 text = "some text"
----> 2 print("this is a % sign with %s"%text)

TypeError: not enough arguments for format string

抛出此错误是因为我们没有使用任何转义字符来编写 % 符号。

在 Python 中使用转义字符打印 % 符号

在这种情况下,我们的转义字符也是 % 字符而不是 \ 字符。以下代码片段向我们展示了如何使用另一个 % 转义字符转义 % 符号。

text = "some text"
print("this is a %% sign with %s"%text)

输出:

this is a % sign with some text

我们在上面的代码中使用 print() 函数和 % 转义字符打印了 % 符号和字符串变量。

在 Python 中使用 str.format() 函数打印 % 符号

我们还可以使用字符串格式在单个 print() 函数中打印带有字符串变量的 % 符号。str.format() 函数可用于此目的。str 是一个字符串,其中包含我们使用 {} 代替字符串变量的输出,而 format() 函数包含我们想要打印的所有字符串变量。以下代码片段显示了如何在 Python 中使用字符串格式打印 % 符号。

text = "some text"
print("this is a % sign with {0}".format(text))

输出:

this is a % sign with some text

在上面的代码中,我们使用 str.format() 函数在 Python 中的单个 print() 函数中编写一个带有字符串变量的 % 符号。

这种方法更可取,因为以前的方法已被弃用,很快就会过时。