不間斷 Python 挑戰 Day 3 - 基本數學運算

更新 發佈閱讀 5 分鐘

四則運算

Python的四則運算透過「+」(加)、「-」(減)、「*」(乘)、「/」(除)等算術運算子,或是「+=」、「-=」、「*=」、「/=」等指派運算子來達成。這裡的「+=」若寫成「a += b」,即等同於「a = a + b」的意思。

# addition
integer_x = 1 + 2      # integer_x = 3
integer_x = integer_x + 1  # integer_x = 3 + 1 = 4
integer_x += 1   # integer_x = 4 + 1 = 5
print(integer_x)

# subtraction
integer_x = 5 - 2    # integer_x = 5 - 2 = 3
integer_x = integer_x - 1  # integer_x = 3 - 1 = 2
integer_x -= 1    # integer_x = 2 - 1 = 1
print(integer_x)

# multiplication
integer_x = 1 * 2    # integer_x = 1 * 2 = 2
integer_x = integer_x * 2  # integer_x = 2 * 2 = 4
integer_x *= 2    # integer_x = 4 * 2 = 8
print(integer_x)

# division
integer_x = 8 / 2   # integer_x = 8 / 2 = 4.0
integer_x = integer_x / 2 # integer_x = 4.0 / 2 = 2.0
integer_x /= 2    # integer_x = 2.0 / 2 = 1.0
print(integer_x)
print(type(integer_x))

須注意一旦做了除法的運算,即使原本的資料型態是整數,也會被自動轉換成浮點數。計算結果如下:

5
1
8
1.0
<class 'float'>

商數和餘數

商數透過「//」及「//=」、餘數透過「%」及「%=」來達成。

# quotient
integer_x = 5 // 2 # 5 / 2 = 2 ... 1
print(integer_x)

integer_x = 5
integer_x //= 2
print(integer_x)

# remainder
integer_x = 5 % 2 # 5 / 2 = 2 ... 1
print(integer_x)

integer_x = 5
integer_x %=2
print(integer_x)

計算結果:

2
2
1
1

次方

次方透過「**」及「**=」來達成。

# exponent
integer_x = 2 ** 3 # integer_x = 2 ^ 3 = 8
print(integer_x)

integer_x = 2
integer_x **= 3
print(integer_x)

計算結果:

8
8

運算的優先順序

就如同我們在國小學習的四則運算,需記住一個PEMDAS原則,運算時由左而右依序為括號優先、再來次方、乘除、最後是加減。

P   Parentheses
E   Exponents
MD Multiplication and Division
AS  Addition and Subtraction

程式範例

https://github.com/wjweng/marathon_python/blob/master/Day1_to_25/marathon_python_day3.py

留言
avatar-img
Wei-Jie Weng的沙龍
52會員
37內容數
Wei-Jie Weng的沙龍的其他內容
2022/07/13
對於程式的初學者而言,理解程式的流程、迴圈的進行、或是變數的變化會需要一定程度將程式在腦中進行運算的能力,要一段時間熟悉與適應,尤其是當程式執行的結果不如預期時,往往是計算的過程和自己所想像的不同,這時又更難靠自己的能力找出錯誤。因此,這邊要介紹的這個工具可以將程式執行的過程逐行將變數的變化視覺化地
Thumbnail
2022/07/13
對於程式的初學者而言,理解程式的流程、迴圈的進行、或是變數的變化會需要一定程度將程式在腦中進行運算的能力,要一段時間熟悉與適應,尤其是當程式執行的結果不如預期時,往往是計算的過程和自己所想像的不同,這時又更難靠自己的能力找出錯誤。因此,這邊要介紹的這個工具可以將程式執行的過程逐行將變數的變化視覺化地
Thumbnail
2022/07/13
在上一節介紹了 JSON 資料的基本架構後,我們將改寫並擴充密碼產生器程式,讓它能夠藉由 JSON 的資料結構完成帳密搜尋的功能。
Thumbnail
2022/07/13
在上一節介紹了 JSON 資料的基本架構後,我們將改寫並擴充密碼產生器程式,讓它能夠藉由 JSON 的資料結構完成帳密搜尋的功能。
Thumbnail
2022/06/23
JSON的全名叫JavaScript Object Notation,是由Douglas Crockford所設計的一種資料格式,最初應用在JavaScript程式語言中,做為一種資料交換的格式,而後被廣泛運用在Web開發與NoSQL資料庫,現今已成為一種重要的資料格式。
Thumbnail
2022/06/23
JSON的全名叫JavaScript Object Notation,是由Douglas Crockford所設計的一種資料格式,最初應用在JavaScript程式語言中,做為一種資料交換的格式,而後被廣泛運用在Web開發與NoSQL資料庫,現今已成為一種重要的資料格式。
Thumbnail
看更多
你可能也想看
Thumbnail
進入選擇敘述語法了。常用的選擇敘述語法,弄懂了就運用自如。
Thumbnail
進入選擇敘述語法了。常用的選擇敘述語法,弄懂了就運用自如。
Thumbnail
背景:從冷門配角到市場主線,算力與電力被重新定價   小P從2008進入股市,每一個時期的投資亮點都不同,記得2009蘋果手機剛上市,當時蘋果只要在媒體上提到哪一間供應鏈,隔天股價就有驚人的表現,當時光學鏡頭非常熱門,因為手機第一次搭上鏡頭可以拍照,也造就傳統相機廠的殞落,如今手機已經全面普及,題
Thumbnail
背景:從冷門配角到市場主線,算力與電力被重新定價   小P從2008進入股市,每一個時期的投資亮點都不同,記得2009蘋果手機剛上市,當時蘋果只要在媒體上提到哪一間供應鏈,隔天股價就有驚人的表現,當時光學鏡頭非常熱門,因為手機第一次搭上鏡頭可以拍照,也造就傳統相機廠的殞落,如今手機已經全面普及,題
Thumbnail
這是一場修復文化與重建精神的儀式,觀眾不需要完全看懂《遊林驚夢:巧遇Hagay》,但你能感受心與土地團聚的渴望,也不急著在此處釐清或定義什麼,但你的在場感受,就是一條線索,關於如何找著自己的路徑、自己的聲音。
Thumbnail
這是一場修復文化與重建精神的儀式,觀眾不需要完全看懂《遊林驚夢:巧遇Hagay》,但你能感受心與土地團聚的渴望,也不急著在此處釐清或定義什麼,但你的在場感受,就是一條線索,關於如何找著自己的路徑、自己的聲音。
Thumbnail
本文分析導演巴里・柯斯基(Barrie Kosky)如何運用極簡的舞臺配置,將布萊希特(Bertolt Brecht)的「疏離效果」轉化為視覺奇觀與黑色幽默,探討《三便士歌劇》在當代劇場中的新詮釋,並藉由舞臺、燈光、服裝、音樂等多方面,分析該作如何在保留批判核心的同時,觸及觀眾的觀看位置與人性幽微。
Thumbnail
本文分析導演巴里・柯斯基(Barrie Kosky)如何運用極簡的舞臺配置,將布萊希特(Bertolt Brecht)的「疏離效果」轉化為視覺奇觀與黑色幽默,探討《三便士歌劇》在當代劇場中的新詮釋,並藉由舞臺、燈光、服裝、音樂等多方面,分析該作如何在保留批判核心的同時,觸及觀眾的觀看位置與人性幽微。
Thumbnail
《轉轉生》(Re:INCARNATION)為奈及利亞編舞家庫德斯.奧尼奎庫與 Q 舞團創作的當代舞蹈作品,結合拉各斯街頭節奏、Afrobeat/Afrobeats、以及約魯巴宇宙觀的非線性時間,建構出關於輪迴的「誕生—死亡—重生」儀式結構。本文將從約魯巴哲學概念出發,解析其去殖民的身體政治。
Thumbnail
《轉轉生》(Re:INCARNATION)為奈及利亞編舞家庫德斯.奧尼奎庫與 Q 舞團創作的當代舞蹈作品,結合拉各斯街頭節奏、Afrobeat/Afrobeats、以及約魯巴宇宙觀的非線性時間,建構出關於輪迴的「誕生—死亡—重生」儀式結構。本文將從約魯巴哲學概念出發,解析其去殖民的身體政治。
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News