【发布时间】:2018-02-28 15:20:55
【问题描述】:
我有:
beta = 0.95
alpha = 0.3
delta = 0.1
def k_bar(alpha, beta, delta):
return ((1 / beta - 1 + delta) / alpha) ** (1 / (alpha - 1))
def c_bar(alpha, delta, k_bar):
return k_bar ** alpha - delta * k_bar
当我打电话时
k_bar(alpha, beta, delta)
我得到“2.63”。但 但是当我打电话时
c_bar(alpha, delta, k_bar)
我得到“TypeError: unsupported operand type(s) for ** or pow(): 'function' and 'float'”
但是,我希望得到结果,并让函数作为参数在这种特定情况下工作。
我希望某人。可以帮帮我!
干杯,托比亚斯
【问题讨论】:
-
您期望
c_bar(alpha, delta, k_bar)会返回什么?为什么? -
k_bar是一个函数 - 当您将一个函数与一个浮点数相乘时,您期望结果是什么? -
我希望 c_bar 有 1.0733311148204927,因为我在全局范围内定义了变量,并且我希望将 k_bar 调用的结果作为参数自动提交给 c_bar
-
看起来您正在寻找
c_bar(alpha, delta, k_bar(alpha, beta, delta)),但我看不出在任何情况下这是多么可取.. -
所以你想要
c_bar(alpha, delta, k_bar(alpha, beta, delta))?
标签: python function arguments call