代码点读机 / Python / :

: Python · 符号

冒号 `:` 在 Python 中有三个主要作用: 1. 代码块开头:在 `if`、`for`、`while`、`def`、`class` 等语句后面加冒号,表示接下来是一个缩进的代码块。就像说“接下来我要开始一段新内容了,注意缩进”。 2. 切片:在方括号里用冒号分隔起始、结束、步长,比如 `列表[开始:结束:步长]`。 3. 字典键值对分隔:在字典里用冒号分隔键和值,比如 `{"名字": "小明"}`。

怎么用

if 条件:
    ...
for 变量 in 可迭代对象:
    ...
def 函数名(参数):
    ...
序列[开始:结束:步长]
{键: 值}

小例子

# 代码块
if 5 > 3:
    print("是的")
# for 循环
for i in range(3):
    print(i)
# 函数定义
def 加法(a, b):
    return a + b
# 切片
列表 = [1, 2, 3, 4, 5]
print(列表[1:4])       # [2, 3, 4]
# 字典
信息 = {"名字": "小明", "年龄": 18}
print(信息["名字"])     # 小明

运行结果

是的
0
1
2
[2, 3, 4]
小明

对比:没有冒号代码块会报语法错误

if 5 > 3   # 这里缺少冒号,会报 SyntaxError
    print("错误")

常见使用场景

- 定义条件、循环、函数、类时作为代码块开始。
- 对序列进行切片操作。
- 定义字典。

提醒:- 冒号后必须换行并缩进,缩进通常为 4 个空格。 - 切片中冒号可以省略开始或结束:`[:3]`、`[2:]`、`[::2]`。 - 字典中冒号分隔键和值,键必须是不可变类型。

官方文档:https://docs.python.org/zh-cn/3/reference/lexical_analysis.html#operators-and-delimiters

在代码里遇到不认识的词?打开代码点读机,点一下就懂 → ← Python全部词条