新聞中心
我來介紹一下我是如何使用 Python 來節(jié)省成本的。
創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供紅山網(wǎng)站建設(shè)、紅山做網(wǎng)站、紅山網(wǎng)站設(shè)計、紅山網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計與制作、紅山企業(yè)網(wǎng)站模板建站服務(wù),十余年紅山做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務(wù)。
我最近在開一輛燒 93 號汽油的車子。根據(jù)汽車制造商的說法,它只需要加 91 號汽油就可以了。然而,在美國只能買到 87 號、89 號、93 號汽油。而我家附近的汽油的物價水平是每增加一號,每加侖就要多付 30 美分,因此如果加 93 號汽油,每加侖就要多花 60 美分。為什么不能節(jié)省一些錢呢?
一開始很簡單,只需要先加滿 93 號汽油,然后在油量表顯示油箱半滿的時候,用 89 號汽油加滿,就得到一整箱 91 號汽油了。但接下來就麻煩了,剩下半箱 91 號汽油加上半箱 93 號汽油,只會變成一箱 92 號汽油,再接下來呢?如果繼續(xù)算下去,只會越來越混亂。這個時候 Python 就派上用場了。
我的方案是,可以根據(jù)汽油的實時狀態(tài),不斷向油箱中加入 93 號汽油或者 89 號汽油,而最終目標(biāo)是使油箱內(nèi)汽油的號數(shù)不低于 91。我需要做的是只是通過一些算法來判斷新舊汽油混合之后的號數(shù)。使用多項式方程或許也可以解決這個問題,但如果使用 Python,好像只需要進(jìn)行循環(huán)就可以了。
#!/usr/bin/env python# octane.pyo = 93.0newgas = 93.0 # 這個變量記錄上一次加入的汽油號數(shù)i = 1while i < 21: # 20 次迭代 (加油次數(shù))if newgas == 89.0: # 如果上一次加的是 89 號汽油,改加 93 號汽油newgas = 93.0o = newgas/2 + o/2 # 當(dāng)油箱半滿的時候就加油else: # 如果上一次加的是 93 號汽油,則改加 89 號汽油newgas = 89.0o = newgas/2 + o/2 # 當(dāng)油箱半滿的時候就加油print str(i) + ': '+ str(o)i += 1
在代碼中,我首先將變量 o(油箱中的當(dāng)前混合汽油號數(shù))和變量 newgas(上一次加入的汽油號數(shù))的初始值都設(shè)為 93,然后循環(huán) 20 次,也就是分別加入 89 號汽油和 93 號汽油一共 20 次,以保持混合汽油號數(shù)穩(wěn)定。
1: 91.02: 92.03: 90.54: 91.755: 90.3756: 91.68757: 90.343758: 91.6718759: 90.335937510: 91.6679687511: 90.33398437512: 91.666992187513: 90.333496093814: 91.666748046915: 90.333374023416: 91.666687011717: 90.333343505918: 91.666671752919: 90.333335876520: 91.6666679382
從以上數(shù)據(jù)來看,只需要 10 到 15 次循環(huán),汽油號數(shù)就比較穩(wěn)定了,也相當(dāng)接近 91 號汽油的目標(biāo)。這種交替混合直到穩(wěn)定的現(xiàn)象看起來很有趣,每次交替加入同等量的不同號數(shù)汽油,都會趨于穩(wěn)定。實際上,即使加入的 89 號汽油和 93 號汽油的量不同,也會趨于穩(wěn)定。
因此,我嘗試了不同的比例,我認(rèn)為加入的 93 號汽油需要比 89 號汽油更多一點。在盡量少補(bǔ)充新汽油的情況下,我最終計算到的結(jié)果是 89 號汽油要在油箱大約 7/12 滿的時候加進(jìn)去,而 93 號汽油則要在油箱 ? 滿的時候才加進(jìn)去。
我的循環(huán)將會更改成這樣:
if newgas == 89.0:newgas = 93.0o = 3*newgas/4 + o/4else:newgas = 89.0o = 5*newgas/12 + 7*o/12
以下是從第十次加油開始的混合汽油號數(shù):
10: 92.512227297811: 91.048799257112: 92.512199814313: 91.04878322514: 92.512195806215: 91.048780887
如你所見,這個調(diào)整會令混合汽油號數(shù)始終略高于 91。當(dāng)然,我的油量表并沒有 1/12 的刻度,但是 7/12 略小于 5/8,我可以近似地計算。
一個更簡單地方案是每次都首先加滿 93 號汽油,然后在油箱半滿時加入 89 號汽油直到耗盡,這可能會是我的常規(guī)方案。就我個人而言,這種方法并不太好,有時甚至?xí)a(chǎn)生一些麻煩。但對于長途旅行來說,這種方案會相對簡便一些。有時我也會因為油價突然下跌而購買一些汽油,所以,這個方案是我可以考慮的一系列選項之一。
當(dāng)然最重要的是:開車不寫碼,寫碼不開車!
名稱欄目:想省油錢,你使用Python為你的油箱加油啊
文章起源:http://m.fisionsoft.com.cn/article/dhejsos.html


咨詢
建站咨詢

