[英]How to call a function in another function in 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 您應該使用您在“Quadratic”問題中定義的 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)
我不知道代碼有什么問題,實際上它在我的 PC 上的 Canopy IDE 上運行良好,但在在線編輯器中沒有返回任何內容,我需要在其中提供解決方案。
你的規范說:
編寫一個 Python 函數 twoQuadratics,它接受兩組系數和 x 值,並打印計算兩個二次方程的結果之和
注意這個詞:它是“打印”,而不是“返回”,所以這里的預期是非常肯定的:
def twoQuadratics(a1, b1, c1, x1, a2, b2, c2, x2):
print(evalQuadratic(a1, b1, c1, x1) + evalQuadratic(a2, b2 ,c2, x2))
在這里,您可以將輸入作為 dict 列表,以便您的功能成為。 所以你的功能會更通用。
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
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.