將兩個整數相加

使用 Python 處理數值資料是很容易的,打開 Python 環境執行下列程式碼:

print( 2+3 )

當 Python 直譯器執行這段程式後,便會在螢幕上輸出 5,這段程式碼做了兩件事: 計算

 2+3

使用 print2+3 的結果印在螢幕上 如此一來,你已經使用 Python 程式語言完成了一個簡單的程式囉。

整數其它運算

在前面的例子裡,我們將兩個整數做了相加的動作,在 Python 中還支援其它的數值運算,比方說你可以執行下面這段程式碼:

print (3+5)
print (100-50)
print (13*14)
print (5/2)
print (8**2)
print (13 % 2)

便會得到這樣的結果:

8
50
182
2
64
1

整理一下,運算符號及運算方式如下表所示:

運算符號 運算方式
+
-
*
/ 除(整數除法)
** 次方運算
% 模運算(取餘數)

其中要特別注意的是 / 這個運算符號,若是運算的數值為整數,則結果也是整數。以上述的程式碼為例,5 / 2 的結果為 2 而不是 2.5,若要計算出 2.5 這樣的結果,下一節會介紹如何使用浮點數作運算。

認識浮點數

在前面的例子中,我們都是使用整數做運算,如果要表示帶有小數點的資料,可以使用 Python 程式語言中的浮點數(floating-point number)來表示,支援的運算符號與整數相同,如:

print (3.25 + 5.5)

則會得到 8.75 這樣的結果,而上一節中 5 / 2 的例子若改為

print(5.0 / 2.0)

則會印出 2.5 的結果。 使用浮點數可能會有數值誤差的問題,比方說 3.2 + 5.4 的答案是 8.6000000000000014 而不會剛好是 8.6(雖然使用 print 輸出時會印出 8.6,但實際上卻是有誤差的數值),所以在使用浮點數運算時要十分小心。相關資訊可以參考: IEEE 754 浮點數運算標準

科學表示法

在 Python 中也可以使用科學表示法來處理數值資料,比如說:

print (1.5e2 + 10)

會得到 160.0,其中1.5e2便相當於 1.5 * 10**2,也就是說 e 表示 10 的次方(也可以是 E),而用科學表示法的數值皆為浮點數。 長整數

一般程式語言裡的整數長度是有限制的,例如說常見的整數範圍是 -2147483648 到 2147483647。 不過在 Python 裡面內建有長整數的型別:

print (1234567890*1234567890)

的結果就是:1524157875019052100L 所以你也可以自己在一個整數後面添加一個 L 字元,使它成為長整數。

使用複數

除了整數、浮點數之外,Python 也可以處理複數(complex number),它是以 x + yj的方式表示一個複數的實部(x)及虛部(y),所以你可以做這樣的運算:

print (1+2j**2)

如此一來你便會得到 (-3+0j) 的資料。

試試看

1.以 2+3*4+6 為例,觀察運算符號彼此的優先順序關係。

2.要將整數轉型為浮點數,只需要加上float就可以,比方說 float(3) 就相當於是 3.0 的數值, 試試看若使用 int浮點數轉型成整數,小數點後的資料會被如何處理?

3.試著運算大數字的運算(如:2**100),看看數值結果會如何,數字多大的時候會出現不一樣的狀況呢?

results matching ""

    No results matching ""