在python中把方程参数设置为任意方程?def(self,f)
发布网友
发布时间:2022-05-03 10:06
我来回答
共2个回答
热心网友
时间:2023-10-20 15:00
我的理解为:
方程参数》》把函数作为参数向一个函数传递
把函数当作参数直接用就可以,完全没有问题。
class paraFun():
def fun1(self, f):
p = [12,23,34]
for i in range(len(p)):
f(p[i])
def fun2(self, num):
print "fun2:", num
obj = paraFun()
obj.fun1(obj.fun2)
#fun2: 12
#fun2: 23
#fun2: 34
热心网友
时间:2023-10-20 15:00
if __name__ == '__main__':
print(eval("12 * 23 +34"))
print(eval("12 - 23 / 34"))
print(eval("12 ** 23"))
可以用eval()函数,里面直接写string类型的表达式即可,放到函数里就是拼接字符串
附一个其他方法的小例子
# 函数的默认参数
def arithmetic(x=1, y=1, operator="+"):
result = {
"+": x + y,
"-": x - y,
"*": x * y,
"/": x / y
}
return result.get(operator) # 返回计算结果
print(arithmetic(1, 2))
print(arithmetic(1, 2, "-"))
print(arithmetic(y=3, operator="-"))
print(arithmetic(x=4, operator="-"))
print(arithmetic(y=3, x=4, operator="-"))
热心网友
时间:2023-10-20 15:00
我的理解为:
方程参数》》把函数作为参数向一个函数传递
把函数当作参数直接用就可以,完全没有问题。
class paraFun():
def fun1(self, f):
p = [12,23,34]
for i in range(len(p)):
f(p[i])
def fun2(self, num):
print "fun2:", num
obj = paraFun()
obj.fun1(obj.fun2)
#fun2: 12
#fun2: 23
#fun2: 34
热心网友
时间:2023-10-20 15:00
if __name__ == '__main__':
print(eval("12 * 23 +34"))
print(eval("12 - 23 / 34"))
print(eval("12 ** 23"))
可以用eval()函数,里面直接写string类型的表达式即可,放到函数里就是拼接字符串
附一个其他方法的小例子
# 函数的默认参数
def arithmetic(x=1, y=1, operator="+"):
result = {
"+": x + y,
"-": x - y,
"*": x * y,
"/": x / y
}
return result.get(operator) # 返回计算结果
print(arithmetic(1, 2))
print(arithmetic(1, 2, "-"))
print(arithmetic(y=3, operator="-"))
print(arithmetic(x=4, operator="-"))
print(arithmetic(y=3, x=4, operator="-"))
热心网友
时间:2023-10-20 15:00
我的理解为:
方程参数》》把函数作为参数向一个函数传递
把函数当作参数直接用就可以,完全没有问题。
class paraFun():
def fun1(self, f):
p = [12,23,34]
for i in range(len(p)):
f(p[i])
def fun2(self, num):
print "fun2:", num
obj = paraFun()
obj.fun1(obj.fun2)
#fun2: 12
#fun2: 23
#fun2: 34
热心网友
时间:2023-10-20 15:00
if __name__ == '__main__':
print(eval("12 * 23 +34"))
print(eval("12 - 23 / 34"))
print(eval("12 ** 23"))
可以用eval()函数,里面直接写string类型的表达式即可,放到函数里就是拼接字符串
附一个其他方法的小例子
# 函数的默认参数
def arithmetic(x=1, y=1, operator="+"):
result = {
"+": x + y,
"-": x - y,
"*": x * y,
"/": x / y
}
return result.get(operator) # 返回计算结果
print(arithmetic(1, 2))
print(arithmetic(1, 2, "-"))
print(arithmetic(y=3, operator="-"))
print(arithmetic(x=4, operator="-"))
print(arithmetic(y=3, x=4, operator="-"))