2018年3月5日 星期一

2018.03.05 複習布林邏輯和一些數學觀念

初學 Python 幾天,發現數學運算佔了 70 %以上。偏偏甚麼函數、代數這些觀念,我考上大學以後就再也沒碰了,只能憑藉一些殘存的印象,實在很吃虧。

這邊就遇到了幾個數學基本問題,有的還可以靠自己查資料解決,有的似乎就必須請教理工達人,列出如下:

(1) Slice[]

Slice 在 Python 裡可用來截取某英文單字的其中一段,而 Python的字母算法,第一位都是從 0 開始,以範例 "Charlie" 的 s[1:4] 來說,指的是從排序第 1 位的字母(h) 截取到排序的第 4 位的字母(l) 之前! 所以是截取字面上第 2 個字母(h) 到第 4 個字母(r),所以答案是 "har"

這個 Slice 的觀念很妙,我花了一點時間才能試著接受它,為什麼是到第4位排序之前,而不是正好就是第4位排序呢? 可能要詢問數學相關的專家吧。 



 (2) total = 0

在計算總額時,似乎習慣先預設一個值 = 0,然後用那個值加上其他計算出來的數值,才能算出總額,而不是直接就計算出總額,這也讓我覺得相當有趣,應該是數學的基本原理?



(3) "+="   "-="



一開始看不懂 +=、-= 的意思,查了資料才明白,以範例圖的 cost -= 20 為例:
cost -= 20  ------>  cost = cost - 20
同理,若看到 cost += 50 ------> cost = cost + 50
其實就是縮寫而以啦~ 之前還讓我大費腦筋....




另外還有一些很基本的數學邏輯問題,看到較有趣的是「布林邏輯」,其實高中就學過這觀念了,簡單講包括 not、and、or 這三種:

not  否定
not True = False
not False = True

and 兩者皆為真才為真,其他都是錯的
True and True = True
True and False = False
False and True = False
False and False = False

or 其中一者為真即為真
True and True = True
True and False = True
False and True = True
False and False = False

然後,當一個算式裡面三者都存在時,處理順序依序為:not、and、or



這樣看一看,突然發現數學也是滿有趣的,不少觸類旁通的觀念,覺得當初真是太早放棄數學,若再認真接觸,或許也大有可為呀~~


今天大致心得是這樣~ 繼續努力,coding人生~!!


沒有留言:

張貼留言