python - 如何存储和使用数学运算符作为 python 变量

标签 python

<分区>

我是 python 的新手,并试图在下面编写类似这样的东西(代码 A),所以它确实像代码 B。我想利用数学运算符的用户输入作为 do_what 变量.我们如何用 Python 编写此代码 (A),使其像代码 B 一样工作?

代码A

num1 = input("Enter a number: ")
num2 = input("Enter another number: ")
do_what = input("Enter a calculation symbol for calculation you want to perform: ")
result = float(num1) do_what float(num2)
print("result is: " + str(result))

代码B

num1 = input("Enter a number: ")
num2 = input("Enter another number: ")
result = int(num1) + int(num2)
print("result is: " + str(result))

最佳答案

您可以使用 operator module对于常见的运算符,并制作一个查找字典以将符号映射到函数。如果您希望运算符不在该模块中,您可以简单地定义自定义函数并以相同的方式添加查找它们:

import operator

operatorlookup = {
    '+': operator.add,
    '-': operator.sub,
    '*': operator.mul,
    '/': operator.truediv
}

num1 = input("Enter a number: ")
num2 = input("Enter another number: ")
do_what = input("Enter calculation symbols for calculation you want to perform: ")

op = operatorlookup.get(do_what)

if op is not None:
    result = op(float(num1), float(num2))
else:
    result = "Unknown operator"
print("result is: " + str(result))

关于python - 如何存储和使用数学运算符作为 python 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54559395/

相关文章:

python - 使用 python 连接到 surfshark vpn

python - 合并两个数据框并添加具有名称的列级别

python - 恢复 matplotlib 中的左侧刻度

python 从同一文件夹导入模块,但从父级调用

python - Python 中的排名是什么?

python - 如何从 Django View 中呈现模板标签

通过crontab执行python脚本

python - Haversine 距离的最小值的有效计算

python - 和有什么区别!和 % 在 Jupyter 笔记本中?

基于 Python 的密码跟踪器(或字典)