2017-05-01 89 views
-3

我正在嘗試設置一個公式來獲取某個企業的年增長率營業額,但該數字並不正確。計算年增長率

以下是我的代碼。什麼是不正確的?

#8)Annual Growth rate in percentage 

#Number of years 
ny = 10 

#Present Turnover 
pt = 310 

#Past turnover value 
ppt = 205 

m =(pt/ppt) 

#AGR = Annual Growth rate 
agr = float((m**1/ny)-1)*100 
print(agr) 
+4

歡迎來到stackoverflow!請參考[遊覽](http://stackoverflow.com/tour), [請教如何提問](https://stackoverflow.com/help/asking) 並提供[最小化,完整和可驗證的示例](https://stackoverflow.com/help/mcve) ,重現您的問題。 –

+4

請參閱[爲什麼在提問時不會上傳代碼圖像?](http://meta.stackoverflow.com/questions/285551/why-may-i-not-upload-images-of-code當在問一個問題時) –

+0

在代碼中它應該是'agr = float((m **(1.0/ny)-1)* 100' – kuro

回答

0

你忘了一對括號。在年增長率的公式中,m**1/ny應該是m**(1/ny)。否則,您只需執行m**1並將結果除以年數。當然,這並不能給你正確的答案。

+0

是的,我有一些麻煩,獲得雙星號格式文本的權利。現在我明白了,但它是固定的。 – ian

+0

非常感謝! 當我使用asterix它工作但不是與權力標誌,請參閱下面的錯誤文本。 agr = float(m ^(1/ny)-1)* 100 TypeError:不支持的操作數類型爲^:'float'和'float' – Lotusline

+0

@Lotusline在Python中,'^'操作符按位[[異或](https://en.wikipedia.org/wiki/Exclusive_or)操作。你需要'**'才能;還有一個'pow'功能。 (FWIW,'**'操作符也可以用於字典解包,但是在實踐中不會導致混淆,因爲從上下文的意義來看,它總是很清楚)。 –