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

Python如何移除列表各字符串项中的数字仅保留原有文字内容

Python列表移除字符串内数字的实现方法

直接用列表推导式就能实现,不需要写复杂的遍历逻辑,根据你的字符串结构选对应写法即可:

场景1:数字和文字用空格分隔、固定在字符串末尾(完全匹配你的示例)

直接按空格拆分字符串取第一段即可,性能最高、代码最简洁:

# 注意不要用list作为变量名,会覆盖Python内置类型
old_list = ['Hello 12', 'Things 54', 'Twice 23']
new_list = [s.split()[0] for s in old_list]
print(new_list)
# 输出:['Hello', 'Things', 'Twice']

场景2:数字可能出现在字符串任意位置

如果数字不一定在末尾、甚至可能和文字拼接在一起,可以逐字符过滤掉所有数字,最后清理首尾多余空格,不需要导入额外依赖:

old_list = ['Hello12', 'Thing3s 54', '23Twice']
new_list = [''.join(c for c in s if not c.isdigit()).strip() for s in old_list]
print(new_list)
# 输出:['Hello', 'Things', 'Twice']

如果需要更灵活的规则匹配,也可以用正则直接替换所有数字字符:

import re
old_list = ['Hello 12', 'Things 54', 'Twice 23']
new_list = [re.sub(r'\d+', '', s).strip() for s in old_list]

注意事项

  • 列表推导式是Python做列表转换最简便的遍历方式,比普通for循环写起来更简洁、执行效率也更高
  • 不要使用list作为自定义变量名,会覆盖Python内置的列表类,导致后续代码调用内置list方法时报错

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.29 07:12:24