如何在Python的另一个函数中调用函数?

问题描述:

我正在学习这个Python,我对它很陌生。 我正在解决这样一个问题:如何在Python的另一个函数中调用函数?

Q1。)编写一个Python函数evalQuadratic(a,b,c,x),它返回二次方程的值a * x ** 2 + *⋅ X + C。 这个函数带四个数字并返回一个数字。 我的解决方案:

def evalQuadratic(a, b, c, x): 
    ''' 
    a, b, c: numerical values for the coefficients of a quadratic equation 
    x: numerical value at which to evaluate the quadratic. 
    ''' 
    return ((a*(x*x))+(b*x)+c) 

现在这部分是好的。 还有一个问题,如下所示:

Q2。)编写一个Python函数twoQuadratics,它接收两组系数和x值并打印评估两个二次方程的结果之和。它什么都不做。也就是说,您应该评估并打印下面等式的结果:a1 * x1 2 + b1 * x1 + c1 + a2 * x2 2 + b2 * x2 + c2 您应该使用您在evalQuadratic函数中定义的“这些练习的“二次”问题(您不需要在此框中重新定义evalQuadratic;当您调用evalQuadratic时,我们的定义将被使用)。

我的解决方案:

def twoQuadratics(a1, b1, c1, x1, a2, b2, c2, x2): 
    ''' 
    a1, b1, c1: one set of coefficients of a quadratic equation 
    a2, b2, c2: another set of coefficients of a quadratic equation 
    x1, x2: values at which to evaluate the quadratics 
    ''' 
    for i in range(2): 
     return evalQuadratic(a1, b1, c1, x1) + evalQuadratic(a2, b2 ,c2, x2) 

我不知道什么是错的代码,其实它在我的电脑上冠IDE工作正常,但没有返回值的在线编辑器,在这里我需要给解。

+0

您是否还在在线编辑器中添加了'evalQuadratic()'函数? –

+0

为什么你有一个for循环? – barny

+1

你定义了一个循环肯定索引你的变量(这是没有必要的),你不使用我... –

在这里你可以把输入作为一个字典的列表,所以你的功能将是。所以你的功能会更通用。

enter [{ 
    'a':2, 
    'b':3, 
    'c':5, 
    'x':10, 
}, 
{ 
    'a':4, 
    'b':7, 
    'c':5, 
    'x':10, 
}] 
def my_fun(co_list): 
    sum = 0 
    for co in co_list: 
    sum = sum + evalQuadratic(co['a'], co['b'], co['c'], co['x']) 
return sum here 
+0

这不但不能解决问题,它在语法上也不合法。 – TigerhawkT3

你的规范说:

编写Python功能,twoQuadratics,即采用两套系数和x值和打印评价两个二次方程

结果的总和

注意术语:它的“打印”,而不是“收益”,所以这里有什么期望非常肯定:

def twoQuadratics(a1, b1, c1, x1, a2, b2, c2, x2): 
    print(evalQuadratic(a1, b1, c1, x1) + evalQuadratic(a2, b2 ,c2, x2)) 
+0

我怎么这么粗心......该死! 谢谢布鲁诺..非常感谢你。 我想upvote你的答案,但我不能没有足够的ruputation。 你认为在这里问这个问题是不对的,就像少数人低估了我的问题,并不是说我没有尝试过我有解决方案,但是有一些carelesness,我同意。 –