我試圖用pyplot繪製在Python線圖時,「浮動」對象不是可調用的,但我得到一個錯誤,TypeError: 'float' object is not callable
此行的代碼:類型錯誤:試圖繪製功能
ycoord = [math.pow(p(1-p),(i-1)) for i in range(1,51)]
我基本上有一個函數p(1-p)^(i-1)
,我需要繪製一個線圖。我有一個座標1-51的數組。我需要使用該函數獲取相應的y座標。 我也試過:p(1-p)**(i-1)
,但那也沒有奏效。
這是我的全碼:
def test():
p = 0.2
plt.figure(1)
#create x coordinates [1-51]
xcoord = [i for i in range(1,51)]
#create y coordinates from formula
ycoord = [math.pow(p(1-p),(i-1)) for i in range(1,51)]
plt.plot(xcoord,ycoord)
plt.draw()
plt.show()
test()
你有'P(1-P)''那裏是p'一個'float',你想做什麼? –
在Python(以及我所知道的大多數其他計算機語言)中,'p(1-p)'並不意味着'p'次'(1-p)'。你必須明確寫出乘法運算符。即:'p *(1-p)'。 _不像許多其他語言,Python中的指數運算符是寫成'**'而不是'^'。 – martineau