Python的基本類型——Number
Python中的number類型是用于存儲數(shù)值,number是不可變的數(shù)據(jù)類型
python支持三種不同的數(shù)值類型
- int(整型)
- float(浮點型)
- complex(復(fù)數(shù))
(int)整型和(float)浮點型的區(qū)別在于是否存在小數(shù)點
比如:5是整形 5.0就是浮點型
(complex)復(fù)數(shù)的寫法:x + yj或者complex(x,y),其中x和y是浮點數(shù),j(或J)表示-1的平方根(這是一個虛數(shù))。
實部是x,虛部是y
復(fù)數(shù)在Python中使用不多。
Python 數(shù)字運算
在Python中我們可以對數(shù)值進行加減乘除運算,這里和我們小學(xué)數(shù)學(xué)一樣,不一樣的是乘除法的符號不一樣
1+2 #輸出3
2-1 #輸出1
1*2 #輸出2
2/1 #輸出2.0。what?這里為什么是2.0呢,請看下面的分析
#python中使用 ** 操作來進行冪運算
3**2 #輸出 9,3的平方
3**5 #輸出 243,3的5次方
類型轉(zhuǎn)換
我們可以將一種數(shù)字類型強制轉(zhuǎn)換為另一種類型。
# int(x) 將x轉(zhuǎn)換為一個整數(shù)。
print(int(1.0))
#輸出1
# float(x) 將x轉(zhuǎn)換到一個浮點數(shù)。
print(float(1))
#輸出1.0
如果其中一個數(shù)值是浮點數(shù),通過加減乘除,結(jié)果會被強制轉(zhuǎn)為浮點數(shù)。
#加
1+1.0 #輸出結(jié)果 2.0
#減
2-1.0 #輸出結(jié)果 1.0
#乘
2*1.0 #輸出結(jié)果 2.0
#除
2/1.0 #輸出結(jié)果 2.0
#需要注意的一點是 除比較特殊 不論兩個對象是否包含浮點型,返還的結(jié)果永遠是浮點型
#比如:
2/2 #輸出結(jié)果 1.0
5/2 #輸出結(jié)果 2.5
0/2 #輸出結(jié)果 0.0
數(shù)學(xué)運算
| 函數(shù) | 描述 |
|---|---|
| abs(x) | 返回數(shù)字的絕對值,如abs(-10) 返回 10 |
| ceil(x) | 最小整數(shù)不小于x,如math.ceil(4.1) 返回 5 |
| fabs(x) | 返回數(shù)字的絕對值,如math.fabs(-10)返回10.0 |
| floor(x) | 返回數(shù)字的下舍整數(shù),如math.floor(4.9)返回 4 |
| log(x) | 如math.log(math.e)返回1.0,math.log(100,10)返回2.0 |
| log10(x) | 返回以10為基數(shù)的x的對數(shù),如math.log10(100)返回 2.0 |
| max(x1, x2,...) | 返回給定參數(shù)的最大值,參數(shù)可以為序列。 |
| min(x1, x2,...) | 返回給定參數(shù)的最小值,參數(shù)可以為序列。 |
| modf(x) | 返回x的整數(shù)部分與小數(shù)部分,兩部分的數(shù)值符號與x相同,整數(shù)部分以浮點型表示。 |
| pow(x, y) | x**y 運算后的值。 |
| round(x [,n]) | 返回浮點數(shù)x的四舍五入值,如給出n值,則代表舍入到小數(shù)點后的位數(shù)。 |
| sqrt(x) | 返回數(shù)字x的平方根。 |
怎么判斷一個數(shù)是什么數(shù)據(jù)類型?
可以使用Python提供的type()或者isinstance(),下面演示一下這兩個函數(shù)的使用方法
#把2賦值給變量a
a=2
#把2.0賦值給變量b
b=2.0
#定一個復(fù)數(shù)
c = 1 + 2j
#type判斷數(shù)據(jù)類型
print(type(a)) #輸出 int
print(type(b)) #輸出 float
print(type(c)) #輸出 complex
#isinstance
print(isinstance(c,complex)) #輸出 Ture
print(isinstance(b,int)) #輸出 False
True、False是Python的布爾類型,你可以先理解成真和假,后面章節(jié)會詳細介紹
思考一下 2=2.0?
# Python中 =是賦值的意思 == 是判斷 兩個值是否相等
a=2
b=2.0
# 我們現(xiàn)在已經(jīng)知道
# a是int類型
# b是float類型
# 他們類型不同,那么a==b???
print(a==b)
# 這里會輸出True
# 因為Python中2和2.0表示相同的數(shù)字
# Python在比較兩個對象時,不要求他們一定是相同類型,所以2==2.0 是True
總結(jié):本章節(jié)注意講解了三種不同的數(shù)值類型中兩種:整型(int)和浮點型(float)的相互轉(zhuǎn)化、數(shù)學(xué)運算以及判斷他們的數(shù)據(jù)類型,需要深入了解并熟練運用類型轉(zhuǎn)換。