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

Python如何按多个分隔符拆分字符串且避免TypeError:'str'对象无法解释为整数错误

多参数拆分字符串问题解决方案

你遇到的TypeError: 'str' object cannot be interpreted as integer报错,核心原因是re.split的参数传递不符合规则:
re.split的标准入参逻辑为:

  • 第1位:匹配分隔规则的正则表达式
  • 第2位:待拆分的目标字符串
  • 第3位(可选):最大拆分次数,要求为整数类型

你写的re.split(' de', ' di', translated_sentence) 错误将第2位填为字符串' di',导致第3位的translated_sentence被识别为「最大拆分次数」入参,字符串无法转换为整数就会抛出对应报错。


正确实现方案

要同时按de、di作为拆分标记,且保留标记在拆分后的结果中,可以用正则的正向肯定预查实现,示例代码如下:

import re

# 你的翻译后字符串
translated_sentence = 'de mno aili di felio'
# 正则含义:匹配后面紧跟de或di的空格作为拆分点,不会消耗de/di字符
new_sentence = re.split(r' (?=d[ei])', translated_sentence)
print(new_sentence)

运行后输出结果完全符合你的预期:

['de mno aili', 'di felio']

如果后续需要新增其他d开头的定冠词作为拆分标记,只需要修改正则中d[ei]的括号内容即可,比如要加da就改成d[eia]。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 23:24:00