Python 包括三種表示數字的數字類型:整數、浮點數和複數。
整數類型
在 Python 中,整數是沒有小數部分的零、正或負整數,並且具有無限的精度,例如 0、100、-10。以下是 Python 中有效的整數文字。
>>>0 0 >>>100 100 >>>-10 -10 >>>1234567890 1234567890 >>>y=5000000000000000000000000000000000000000000000000000000 5000000000000000000000000000000000000000000000000000000
整數可以是二進位、八進位和十六進位值。
>>>0b11011000#二進位 216 >>>0o12#八進位 10 >>>0x12#十六進位 15
所有整數文字或變數都是int
類的對象。使用type()
方法獲取類名,如下圖。
>>>type(100) <class'int'>#返回整數類型 >>>x=1234567890 >>>type(x) <class'int'>#返回整數類型 >>>y=5000000000000000000000000000000000000000000000000000000 >>>type(y)#返回整數類型 <class'int'>
非零整數中不允許在最前面出現0,例如 000123 是無效數字,0000 是 0。
>>>x=01234567890 SyntaxError:invalidtoken
Python 不允許逗號作為數字分隔符。請使用下劃線_
作為分隔符。
>>>x=1_234_567_890 >>>x 1234567890
請注意,整數必須不帶小數部分(小數點)。如果包含了小數點,那它就是一個浮點數。
>>>x=5 >>>type(x) <class'int'> >>>x=5.0 >>>type(x) <class'float'>#這裡返回是浮點型
int()
函數將字元串或浮點數轉換為整數。
>>>int('100') 100 >>>int('-10') -10 >>>int('5.5') 5 >>>int('100',2) 4
二進位的
在 Python 中,0 和 1 的組合中有八位數字的數字 0b 代表二進位數。 例如,0b11011000 是相當於整數 216 的二進位數。
>>>x=0b11011000 >>>x 216 >>>x=0b_1101_1000 >>>x 216 >>>type(x) <class'int'>
八進位的
以 0o 或 0O 為前綴的數字代表一個八進位數字。 例如 0O12 相當於整數 10。
>>>x=0o12 >>>x 10 >>>type(x) <class'int'>
十六進位的
以 0x 或 0X 為前綴的數字表示十六進位號。 例如 0x12 相當於整數 18。
>>>x=0x12 >>>x 18 >>>type(x) <class'int'>
浮點數
在 Python 中,浮點數(float)是正負實數,小數部分由十進位符號.
或科學符號E
或e
、 表示,例如 1234.56、3.142、-1.55、0.23。
>>>f=1.2 >>>f 1.2 >>>type(f) <class'float'>
浮點數可以用下劃線_
分隔,例如123_42.222_013
是有效的浮點數。
>>>f=123_42.222_013 >>>f 12342.222013
浮動的最大大小取決於您的系統。超出其最大大小的浮動稱為「inf」、「Inf」、「infinity」或「INFINITY」。對於大多數系統來說,Float 2e400
將被認為是無窮大。
>>>f=2e400 >>>f inf
科學記數法被用作表示有許多數字的浮點數的簡短表示法。例如:345.56789 表示為 3.4556789e2 或 3.4556789E2
>>>f=1e3 >>>f 1000.0 >>>f=1e5 >>>f 100000.0 >>>f=3.4556789e2 >>>f 345.56789
使用float()
函數將字元串、int 轉換為 float。
>>>float('5.5') 5.5 >>>float('5') 5.0 >>>float('-5') -5.0 >>>float('1e3') 1000.0 >>>float('-Infinity') -inf >>>float('inf') inf
複數
複數是有實部和虛部的數。例如,5 + 6j 是複數,其中 5 是實部,6 乘以 j 是虛部。
>>>a=5+2j >>>a (5+2j) >>>type(a) <class'complex'>
你必須用 J 或 J 作為虛部。使用其他字元會引發語法錯誤。
>>>a=5+2k SyntaxError:invalidsyntax >>>a=5+j SyntaxError:invalidsyntax >>>a=5i+2j SyntaxError:invalidsyntax
算術運算符
下表列出了整數值的算術運算符:
操作員 | 描述 | 例子 |
---|---|---|
+(加法) | 在運算符的兩側添加操作數。 | > > > a = 10b = 20 |
T2>T4>a+b
T6】30 |
| -(減法) | 從左側操作數中減去右側操作數。 | > > > a = 10b = 20
複數的算術運算
複數的加法和減法很簡單。實部和虛部相加/相減得到結果。
>>>a=6+4j >>>a+2 (8+4j) >>>a*2 (12+8j) >>>a/2 (3+2j) >>>a**2 (20+48j) >>>b=3+2j >>>a+b (9+6j) >>>a-b (3+2j)
算術運算符也可以用於兩個複數,如下所示。
>>>a=6+4j >>>b=3+2j >>>a+b (9+6j) >>>a-b (3+2j) >>>a*b (10+24j)
這兩個複數相乘的過程非常類似於兩個二項式相乘。將第一個數字中的每個項乘以第二個數字中的每個項。
a=6+4j b=3+2j c=a*b c=(6+4j)*(3+2j) c=(18+12j+12j+8*-1) c=10+24j
內置函數
可以使用以下函數將一種類型的數值對象轉換為另一種類型:
內置函數 | 描述 |
---|---|
int | 從浮點數或包含數字的字元串中返回整數對象。 |
float | 從包含帶小數點或科學表示法的數字的數字或字元串中返回浮點數對象。 |
complex | 返回一個有實部和虛部的複數。 |
hex | 將十進位整數轉換為前綴為 0x 的十六進位數。 |
oct | 將十進位整數轉換為前綴為 0o 的八進位表示形式。 |
pow | 返回指定數字的冪。 |
abs | 返回一個數字的絕對值,不考慮它的符號。 |
round | 返回四捨五入的數字。 |
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/279726.html