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

Python如何批量移除列表中每个元素首尾的字符

实现方法

直接用Python原生的字符串切片搭配列表推导式就能实现,逻辑非常简洁。

核心原理

Python字符串支持按索引切片,规则如下:

  • 索引从0开始计数,s[n:]表示跳过前n个字符,从索引n的位置开始截取到字符串末尾
  • 负数索引代表从末尾倒计数,s[:-m]表示从字符串开头截取到倒数第m+1个位置,自动丢弃末尾m个字符
  • 组合写法s[2:-1]刚好满足「移除前2个字符、移除最后1个字符」的截取需求

你的示例里最终结果是整数类型的1、2、3,截取得到的字符串片段额外做一次int()类型转换即可。

注意:不要用list作为变量名,会覆盖Python内置的列表类,容易触发难以排查的bug。

代码实现

简洁写法(列表推导式)

origin_list = ["ab1c", "ef2g", "hi3j"]
result = [int(item[2:-1]) for item in origin_list]

print(result)
# 运行输出:[1, 2, 3]

易读写法(普通for循环)

如果刚接触Python不习惯列表推导式,用普通循环逐元素处理逻辑完全一致:

origin_list = ["ab1c", "ef2g", "hi3j"]
result = []
for item in origin_list:
    # 截取去掉前后冗余字符的片段
    core_part = item[2:-1]
    # 转为整数后存入结果列表
    result.append(int(core_part))

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.30 06:00:54