尚未建立名稱
能量:0
我的帳號中心
問 學Bot 任何問題!
首頁&搜尋
最愛&收藏
所有課程
分享資源
帳號設定
關於學呀
線上募款
章節設定
章節名稱
章節類別
章節標籤
或者建立新標籤
章節內容
全螢幕編輯與預覽
# 數字運算 程式這種東西,與數字是脫離不了關係的。這不代表數學不好的人寫不了的程式,而是代表你需要會**加減乘除**等基本運算才能寫程式。對我們來說,這樣的數字運算根本就是小菜一疊,那麼要怎麼在 Python 中達成運算呢? ## 加減乘除 對於加減乘除這四個基本的運算,其實相當的簡單明瞭,看看下面的例子,相信不需要任何人的解說,初學者就可以輕易理解了: ``` >>> a = 3 + 3 >>> b = 3 - 3 >>> c = 3 * 3 >>> d = 3 / 3 ``` 現在,讓我們將 a、b、c、d 四個變數印出來,看看會不會是我們想的樣子吧! ``` >>> print(a) 6 >>> print(b) 0 >>> print(c) 9 >>> print(d) 1 ``` 是不是很簡單呢?接著我們來看看其他的運算符號要怎麼使用。 ## 餘數 三除以二,餘一;八除以三,餘二。這是我們都知道也都理解的事情,但是如果要使用 Python 來**計算餘數**,要怎麼做呢?好在大多數的程式語言,都幫我們準備好了: ``` >>> e = 3 % 2 >>> print(e) 1 >>> f = 9 % 6 >>> print(f) 3 ``` 上述的例子中出現的「%」就是用來求餘數的運算符號。**百分號「%」可以用來求前數除以後數所得的餘數**。因為 3 除以 2 餘 1,因此 3%2 的運算結果即是 1;同理,9%6 的結果是 3。 ## 整除除法 有時候我們在進行除法運算時,會遇上商數帶有小數點的情況。然而,有時候我們不需要小數點的存在,那要怎麼辦呢?假設現在有 15 顆糖果,要分給 7 個人,那麼你又會怎麼算呢? ``` >>> total = 15 >>> people = 7 >>> print(total / people) 2.142857142857143 ``` 如果像上面的例子一樣直接使用除法,那麼我們會得到,每個人要分 2.14 顆糖果這樣的結果。這種時候,小數點的存在就很煩人;好在,Python 內建了運算符號來解決這個問題: ``` >>> print(total // people) 2 ``` 注意到差別了嗎?一般的除法是「/」,而這個例子中使用的是兩個斜線「//」。**雙斜線「//」在 Python 中代表的是「整除」的運算**。 ## 次方 平常我們常使用到的次方運算,在 Python 中也相當的簡單,我們使用的是**「**」的符號代表次方運算**: ``` >>> g = 3 ** 2 >>> print(g) 9 ``` # 改變一個變數 假設現在我們有一個變數 x,值設定為 3: ``` >>> x = 3 ``` 此時,我們被要求將 x 的值變成本來的 3 倍,那我們的程式要怎麼寫呢?我們可以將新的變數 x 設為舊的變數 x 的 3 倍,像是這樣: ``` >>> x = 3 * x ``` 次處要注意的是,這行程式所代表的並**不是**數學中「x=3x,所以x=0」這樣的方程式。在解讀這段程式時,我們應該將其想成: <i> (新)變數 x = 3 * (舊)變數 x* 電腦在看到這段程式時,會將其解讀為: ``` >>> x = 3 * 3 ``` 因為 x 變數代表的值是 3。 但是,每次都寫「x = 3 * x」這麼一長串,未免也太過麻煩了吧?有沒有方法可以讓我們直覺性地將變數變為本來的 3 倍呢?當然有!下面我們宣告一個變數 y,將其值也設為 3: ``` >>> y = 3 ``` 我們要將其變成 3 倍,可以寫: ``` >>> y *= 3 >>> print(y) 9 ``` 這樣的運算符號,就好像在跟電腦溝通: 1. 變數 y 要乘以某一個數* 1. 什麼數呢?* 1. 乘以 3* 電腦在解讀完後,便將 y 變成本來的 3 倍。 除了「*=」之外,還有「+=」、「-=」、「/=」、「%=」、「//=」、「**=」,讓我們使用以下的例子來統合這些運算符號吧! ``` >>> z = 5 >>> print("z is now", z) z is now 5 >>> z += 3 >>> print("z is now", z) z is now 8 >>> z *= 2 >>> print("z is now", z) z is now 16 >>> z /= 4 >>> print("z is now", z) z is now 4 >>> z -= -3 >>> print("z is now", z) z is now 7 >>> z **= 2 >>> print("z is now", z) z is now 49 >>> z %= 9 >>> print("z is now", z) z is now 4 ```
儲存章節
前往實際頁面