Python標準資料型別-數字

Patrick_Meng發表於2019-02-16

Python內建了整數、複數、浮點數三種數字型別。

整數

整數是沒有小數部分的數值,與數學上的一樣:

>>> 1
1
>>> -1
-1

整數沒有大小限制,只要你的記憶體足夠大,就可以建立任意大小的整數:

>>> 1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111

除了十進位制外,Python還允許你使用二進位制、八進位制和十六進位制建立整數:

#二進位制:
>>> 0b10
2
>>> 0B10
2
#八進位制:
>>> 0o10
8
>>> 0O10
8
#十六進位制:
>>> 0x10
16
>>> 0X10
16

如果你不明白什麼是進位制,可以去查閱其他資料,或者直接略過就好了。

浮點數

浮點數是帶有小數部分的數值,類似於數學上的小數:

>>> 1.1
1.1

如果你要建立的浮點數的小數部分或整數部分是0,那麼可以省略不寫,Python會自動幫你填上:

>>> .1
0.1
>>> 1.
1.0

與整數不同的是,浮點數的有效長度只有17位,對於超出的部分,Python會進行四捨五入操作:

>>> 1111.1111111111111111111111111111111111111
1111.111111111111
>>> 1111.8888888888888888888888888888888888888
1111.888888888889

需要注意的是,浮點數的運算不精確,請儘量不要使用浮點數進行運算:

>>> 1.75 * 2.3
4.0249999999999995

算數運算子

Python提供了一些基本的算數運算子,你可以通過這些運算子進行算數運算:

>>> 5 + 1
6
>>> 5 - 1
4
>>> 5 * 2
10
>>> 5 / 2
2.5
>>> 5 // 2
2
>>> 5 % 2
1
>>> 5 ** 2
25

需要注意除法操作,/我們稱作真除法,對於真除操作,Python始終會得到浮點數:

>>> 1 / 2
0.5
>>> 1 / 1
1.0

//我們稱作整除,對於整除操作,如果有小數部分的話,Python會省略小數向下取整:

>>> 5 // 2
2
>>> 5.0 // 2.0
2.0

比較運算子

除了算數運算子外,Python還提供了比較運算子,比較運算子會返回TrueFalse

>>> 1 < 5
True
>>> 1 > 5
False
>>> 1 <= 5
True
>>> 1 >= 5
False
>>> 5 == 5
True
>>> 5 != 5
False

TrueFalse很好理解,如果比較的條件滿足,就返回True,否則返回False

相關文章