You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python反向字符串切片的工作原理及切片无输出问题解析

Python反向字符串切片工作原理解析

先明确字符串'Python'的索引对应关系:
索引:0 → P,1 → y,2 → t,3 → h,4 → o,5 → n

为什么name[4:1]没有输出?

Python切片的默认步长step是1,代表从左往右遍历元素。切片遵循[start:end:step]的规则,且是左闭右开区间(包含start位置的元素,不包含end位置的元素)。

当step=1时,要求start < end才能取到元素,否则切片结果是空序列。name[4:1]里start=4,end=1,4>1,从左往右根本找不到符合条件的元素,所以返回空字符串,打印自然没有输出,这是Python切片的正常逻辑,不会报错。

为什么name[4:1:-1]输出oht?

当step=-1时,遍历方向变成从右往左,此时要求start > end才能有效取到元素。
name[4:1:-1]的执行逻辑是:

  1. 从索引4的元素o开始
  2. 以步长-1往左遍历,依次取索引3的h、索引2的t
  3. 当到达end=1的位置时停止(不包含索引1的元素y)
    最终取出的元素组合就是oht。

内容的提问来源于stack exchange,提问作者Manas

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 19:27:34