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

Python中使用字符串类型+/-参数实现两个整数加减运算的方法

Python将字符串格式的+/-转换为实际运算的实现方案

方案1:条件分支判断(入门作业推荐)

这是最容易理解的实现方式,不需要引入额外模块,完全符合基础作业的要求:

def calc(num1: int, op_str: str, num2: int) -> int:
    if op_str == "+":
        return num1 + num2
    elif op_str == "-":
        return num1 - num2
    else:
        raise ValueError("当前仅支持+、-两种运算符")

# 调用示例
print(calc(5, "+", 3))  # 输出 8
print(calc(9, "-", 4))  # 输出 5

方案2:字典映射+operator模块(可扩展场景推荐)

如果后续需要新增乘、除等其他运算符,这种方式的可维护性更高,不需要堆叠大量条件判断:

import operator

# 建立运算符字符串与运算函数的映射关系
op_mapping = {
    "+": operator.add,
    "-": operator.sub
}

def calc(num1: int, op_str: str, num2: int) -> int:
    if op_str not in op_mapping:
        raise ValueError(f"不支持的运算符: {op_str}")
    return op_mapping[op_str](num1, num2)

# 调用示例
print(calc(7, "+", 2))  # 输出 9
print(calc(10, "-", 6)) # 输出 4

注意事项

不推荐使用eval()函数实现该需求,例如eval(f"{num1}{op_str}{num2}")的写法虽然代码量少,但存在注入风险,若传入的运算符参数包含恶意代码会导致安全问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 07:06:03