2013-12-19 28 views
0

我在程序中使用下面的代碼來設置軸的範圍,以使圖看起來更美觀。Python - 百分比(數學使用) - 簡化x = a + 15%

plot.set_ylim([0,a+(a*15/100)]) 

它專門這樣的:

a+(a*15/100) 

,我很感興趣,

有它存在簡化了這樣的功能?

原因是,當我的圖形在for循環中創建,並且a的值是列表的最大值(依此類推)整個事情開始變得凌亂。 E.g來自:

a+(a*15/100) 

max(listA[x])+(max(listA[x]))*15/100 

有人知道簡化嗎?

回答

9

你可以使用* =運算符

a = 100 
a *= 1.15 
print a # Returns 115 

當心的是,* =運營商可以做不同類型的不同的事情(即字符串和列表)。

0

我通常用於matplot的東西一個變量叫做n ULIM什麼的(上限),所以我很快就可以在一個地方改變它,而不是調用* set_ylim *。因此,您可以使用

ULIM = a+(a*15/100) 
plot.set_ylim([0,ULIM]) 
0
def limit(a, pct=15): 
    pct = 1 + (pct/100.0) 
    return a*pct 

maxval = max(listA[x]) 
plot.set_ylim([0,limit(maxval)])