如何用Python编写程序将算术表达式字符串拆分为对应元素列表
Python 算术表达式拆分程序实现
我们可以通过正则匹配直接完成表达式拆分,匹配规则覆盖变量、数字、运算符、括号四类合法元素,会自动忽略表达式中的空格,无需额外处理空格字符。
实现代码
import re def split_expression(expr): # 正则匹配规则:优先匹配长字符元素,避免拆分错误 # 匹配顺序:变量 > 数字 > 运算符/括号 pattern = r'[a-zA-Z_][a-zA-Z0-9_]*|\d+|[+\-*/()]' return re.findall(pattern, expr)
效果验证
示例1
输入:x + 2
输出:["x", "+", "2"]
示例2
输入:2 * count + 17
输出:["2", "*", "count", "+", "17"]
示例3
输入:(12+x1)*(y2-15)
输出:["(", "12", "+", "x1", ")", "*", "(", "y2", "-", "15", ")"]
内容的提问来源于stack exchange,提问作者Johnrich Baguio
相关产品推荐
相关产品推荐

