在 Python 中,tuple(元组)支持切片操作,语法和 list 完全一致,但切片后仍然是元组。
tuple[start:end:step]
start:起始索引(包含)end:结束索引(不包含)step:步长(可选,默认为 1)t = (0, 1, 2, 3, 4, 5)
print(t[1:4]) # (1, 2, 3)
print(t[:3]) # (0, 1, 2)
print(t[3:]) # (3, 4, 5)
t = (0, 1, 2, 3, 4, 5)
print(t[::2]) # (0, 2, 4)
print(t[1::2]) # (1, 3, 5)
t = (10, 20, 30, 40, 50)
print(t[-3:-1]) # (30, 40)
print(t[-1]) # 50
t = (1, 2, 3, 4)
print(t[::-1]) # (4, 3, 2, 1)
t = (1, 2, 3)
result = t[:2]
print(result) # (1, 2)
print(type(result)) # <class 'tuple'>
✅ 元组切片不会修改原元组,而是返回一个新的元组
t = (1, 2, 3)
print(t[:100]) # (1, 2, 3)
❌ 不能对切片结果赋值(元组不可变)
t = (1, 2, 3)
t[1:3] = (4, 5) # ❌ TypeError
✅ 只能整体重新赋值
t = t[:1] + (4, 5)
| 操作 | 示例 | 结果 |
|---|---|---|
| 切片 | t[1:3] |
新元组 |
| 步长 | t[::2] |
新元组 |
| 反转 | t[::-1] |
新元组 |
| 类型 | type(t[:]) |
tuple |
如果你愿意,我也可以对比 tuple / list / string 的切片差异 或结合 实际应用场景 讲。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。