Python 中的字面量

2025年4月5日 | 阅读 6 分钟

Python 字面量是分配给变量或直接在表达式中使用的固定常量值。常量值具有不同的 类型,例如 数字字符串布尔值、集合或其他的特殊标识符。与上面的 变量 不同,字面量是不可变的,这意味着它们一旦定义就不能被更改。

让我们看一个下面的例子

示例

立即执行

输出

10

这里的 x = 10 是一个整数字面量。

字面量分为以下几类

  1. 数字字面量: 整数、浮点数,甚至复数。
  2. 字符串字面量: 用引号括起来的任意字符序列。
  3. 布尔字面量: 最常接受的两个值,True 或 False。
  4. 集合字面量: 列表、元组、字典和集合。
  5. 特殊字面量: 关键字 None 表示值的缺失。

上述所有类型的字面量对 Python 编程都至关重要,因此,了解它们的用法和行为对于任何开发者来说都是基础。

数字字面量

数字字面量是可以在 Python 中表示的值,正如其名称所示。它们可以被赋予不同的值,并进一步分为三类

a) 整数 (int)

整数字面量定义为没有小数的整个数字。它们可以是负数、正数或零。Python 还允许使用各种格式的整数字面量。

  1. 十进制 (基数 10): 使用数字 0-9 (例如,100、-5、0)。
  2. 二进制 (基数 2): 前缀为 0b 或 0B (例如,0b1010 表示十进制 10)。
  3. 八进制 (基数 8): 前缀为 0o 或 0O (例如,0o12 表示十进制 10)。
  4. 十六进制 (基数 16): 前缀为 0x 或 0X (例如,0xA 表示十进制 10)。

示例

立即执行

输出

10
10
10
10

在上面的示例中,我们使用不同形式的整数字面量初始化了多个变量,并打印了它们的值。

b) 浮点数 (float)

浮点数字面量表示包含小数点或以科学计数法表示的数字。它们用于涉及分数或实数的精确计算。

  • 标准浮点数表示法: (例如,3.14、-0.99、2.5)
  • 科学计数法 (指数形式): 使用 e 或 E 表示 10 的幂 (例如,2.5e3 表示 2500.0)。

示例

立即执行

输出

20.5
2500.0
-0.99

在上面的示例中,我们使用不同的浮点数字面量初始化了多个变量,并打印了它们的值。

c) 复数 (complex)

Python 支持复数,它由实部和虚部组成。虚部使用 j 或 J 表示。

2. 字符串字面量

Python 中的字符串字面量是用单引号 (' ')、双引号 (" ") 或三引号 (''' ''' 或 """ """) 括起来的字符序列。它们用于存储文本数据,包括单词、句子,甚至多行段落。

字符串字面量类型

a) 单行字符串

这些字符串用单引号或双引号括起来,用于短文本数据。

示例

立即执行

输出

Hello
Python

在上面的示例中,我们使用不同格式的单行字符串字面量初始化了多个变量,并打印了它们的值。

b) 多行字符串

多行字符串用三个单引号 (''' ''') 或三个双引号 (""" """) 括起来。当文本跨越多行时使用它们,例如文档或大文本块。

示例

立即执行

输出

This is a multi-line string.
It can span multiple lines.
Useful for documentation and long texts.

在上面的示例中,我们初始化了一个多行字符串字面量并打印了它的值。

c) 字符串中的转义字符

Python 允许使用转义字符在字符串中插入特殊字符。

  • \n - 换行
  • \t - 制表符
  • \' - 单引号
  • \" - 双引号
  • \\ - 反斜杠

示例

立即执行

输出

Hello
World

在上面的示例中,我们初始化了一个多行字符串字面量并打印了它的值。

d) 字符串拼接和重复

Python 允许使用 + 运算符 (拼接) 来组合字符串,使用 * 运算符来重复字符串。

示例

立即执行

输出

Hello World
Hello Hello Hello

在上面的示例中,我们初始化了两个字符串,然后执行了拼接和重复等操作。

3. 布尔字面量

布尔字面量在 Python 中表示真值。只有两个布尔字面量

  • true
  • False

示例

立即执行

输出

True
False

在上面的示例中,我们初始化了两个带有布尔值的变量并打印了它们。

4. 集合字面量

集合字面量表示值的分组,包括以下类型

  1. 列表字面量: 有序且可变集合 (例如,[1, 2, 3])。
  2. 元组字面量: 有序且不可变集合 (例如,(1, 2, 3))。
  3. 字典字面量: 键值对 (例如,{'name': 'Alice', 'age': 25})。
  4. 集合字面量: 无序的唯一项集合 (例如,{1, 2, 3})。

示例

立即执行

输出

[10, 20, 30]
(10, 20, 30)
{'a': 1, 'b': 2}
{10, 20, 30}

在上面的示例中,我们初始化了一个列表、一个元组、一个字典和一个集合,并将其打印给用户。

5. 特殊字面量

Python 有一个特殊的字面量叫做 None,它表示值的缺失。

示例

立即执行

输出

None

在上面的示例中,我们将变量的值设置为 None 并将其打印给用户。

结论

Python 中的字面量是用于在代码中表示常量值的基本构建块。它们包括数字字面量(整数、浮点数和复数)、字符串字面量(单行和多行字符串)、布尔字面量(True 和 False)、集合字面量(列表、元组、字典和集合)以及特殊字面量(None)。理解这些字面量有助于程序员编写更具可读性和效率的 Python 代码。通过利用不同类型的字面量,您可以有效地存储和操作数据,同时保持程序的清晰性。

Python 字面量 - 常见问题解答

1. 什么是 Python 中的字面量?

Python 字面量是直接分配给变量或在表达式中使用中的固定值。它们表示数字、字符串、布尔值、集合和 None 等特殊值等常量数据类型。

2. Python 中有哪些类型的字面量?

Python 提供以下类型的字面量

  1. 数字字面量(整数、浮点数、复数)
  2. 字符串字面量(单行、多行)
  3. 布尔字面量(True、False)
  4. 集合字面量(列表、元组、字典、集合)
  5. 特殊字面量(None)

3. 字符串字面量和数字字面量有什么区别?

字符串字面量表示用引号括起来的文本数据,而数字字面量表示用于数学计算的数值。

4. 我可以为字符串字面量交替使用单引号和双引号吗?

是的,Python 允许使用单引号 (' ') 和双引号 (" ") 来定义字符串。但是,它们在同一个字符串内应保持一致。

6. 'None' 字面量的作用是什么?

None 字面量表示 Python 中值的缺失或空值。它通常用作可选参数的占位符,或表示变量没有赋值。


下一主题Python 运算符