为了账号安全,请及时绑定邮箱和手机立即绑定

在python中把方程参数设置为任意方程?def(self,f)?

在python中把方程参数设置为任意方程?def(self,f)?

PHP
凤凰求蛊 2019-03-05 10:06:25
def(self,f):p = [12,23,34]for i in len(p):f(p[i])对整个p执行f方程。应该如何表示呢?
查看完整描述

2 回答

?
呼唤远方

TA贡献1856条经验 获得超11个赞

我的理解为:

方程参数》》把函数作为参数向一个函数传递

函数当作参数直接用就可以,完全没有问题。

12345678910111213class paraFun():    def fun1(self, f):        = [12,23,34]        for in range(len(p)):            f(p[i])                 def fun2(self, num):        print "fun2:", numobj = paraFun()obj.fun1(obj.fun2)#fun2: 12#fun2: 23#fun2: 34


查看完整回答
反对 回复 2019-03-27
?
汪汪一只猫

TA贡献1898条经验 获得超8个赞

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="-"))



查看完整回答
反对 回复 2019-03-27
  • 2 回答
  • 0 关注
  • 777 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信