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

如何拆分含Python函数的字符串并保留完整函数作为列表元素?

拆分包含Python函数调用的字符串并保留完整函数

要实现将连续的函数调用字符串拆分为单个完整函数的列表,你可以利用正则表达式的零宽断言定位拆分位置,避免丢失右括号。

解决方案代码

import re

s = 'hello()there()'
result = re.split(r'(?<=\))(?!$)', s)
print(result)  # 输出: ['hello()', 'there()']

正则表达式说明

  • (?<=\)):正向回顾后发断言,确保拆分位置的前面是右括号,保证每个拆分点都在一个完整函数的结尾之后。
  • (?!$):负向前瞻断言,排除字符串末尾的位置,避免最后一个函数后面被拆分出空字符串。

扩展测试

如果函数包含参数,这个方法同样适用:

s = 'foo()bar(baz)qux(1,2,3)'
result = re.split(r'(?<=\))(?!$)', s)
print(result)  # 输出: ['foo()', 'bar(baz)', 'qux(1,2,3)']

这种方式的核心是拆分的是两个字符之间的位置而非具体字符,因此不会破坏原有的函数结构,完美解决了你之前遇到的分隔符丢失或单独成元素的问题。

内容的提问来源于stack exchange,提问作者O Renée

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.03 00:35:18