一、Python數據類型介紹
- Python數據類型可分為:數字型和非數字型
-
數字型
- 整型(int)
- 浮點型(float)
-
布爾型(bool)
- 真(True)
- 假(False)
-
復數型(complex)
- 主要用于科學計算
-
非數字型
- 字符串(str)
- 列表(list)
- 元組(tuple)
- 字典(dict)
-
在Python中,所有的非數字類型變量,都有一個共同的特點:
- 都是一個序列,可以理解為容器
二、數字類型
2.1 數字類型的創建
1 # !/usr/bin/env python3 2 # -*-coding:utf-8-*- 3 4 """ 5 @author:fyh 6 @time:2019/5/31 7 """ 8 # int類型創建 9 a = 10 10 b = 666 11 12 print (a) # 10 13 print (b) # 666 14 print (type(a)) #15 16 # float類型創建 17 c = 3.14 18 print (c) 19 print (type(c)) # 20 21 # complex類型創建 22 d = 3 + 4j 23 print (d) 24 print (type(d)) # 25 26 # 布爾型 27 flag = True 28 print (flag) 29 print (type(flag)) #
ps:type(obj) 函數可以查看變量的類型
2.2 數字類型轉換
有時候,我們需要對數據內置的類型進行轉換,數據類型的轉換,你只需要將數據類型作為函數名即可。
- int(x) 將x轉換為一個整數
- float(x) 將x轉換到一個浮點數
- complex(x) 將x轉換到一個復數,實數部分為 x,虛數部分為 0
- complex(x, y) 將 x 和 y 轉換到一個復數,實數部分為 x,虛數部分為 y。x 和 y 是數字表達式
- bool(x) 將x轉換為bool類型,非0為True,0為False
1 # !/usr/bin/env python3 2 # -*-coding:utf-8-*- 3 4 """ 5 @author:fyh 6 @time:2019/5/31 7 """ 8 9 # int(x) 10 var1 = 3.14 11 print (int(var1)) # 3 12 13 # float(x) 14 var2 = 3 15 print (float(var2)) # 3.0 16 17 # complex(x) 18 var3 = 4 19 var4 = 2 20 print (complex(var3)) # (4+0j) 21 # complex(x, y) 22 print (complex(var3, var4)) # (4+2j) 23 24 # bool(x) 25 var5 = 1 26 print (bool(var5)) # True 27 var6 = 0 28 print (bool(var6)) # False
?
ps:數字類型轉換時,x只能是數字類型相互轉換,若是其它的類型會報錯
str1 = " a " print (int(str1)) # 會報錯
2.3 數學運算
1 # !/usr/bin/env python3 2 # -*-coding:utf-8-*- 3 4 """ 5 @author:fyh 6 @time:2019/5/31 7 """ 8 9 print (2 + 2) # 4 10 11 print (50 - 5*5) # 25 12 13 print (8 / 5) # 1.6 14 # 在整數除法中,除法 / 總是返回一個浮點數,如果只想得到整數的結果,丟棄可能的分數部分,可以使用運算符 // 15 print (17 / 3) # 5.666666666666667 16 17 print (17 // 3) # 5 18 19 # 注意:// 得到的并不一定是整數類型的數,它與分母分子的數據類型有關系。 20 print (7.0 // 2) # 3.0 21 print (7 // 2.0) # 3.0 22 23 # %操作符返回除法的余數 24 print (17 % 3) # 2 25 26 # Python 可以使用 ** 操作來進行冪運算 27 print (5 ** 2) # 25 28 print (2 ** 7) # 128
2.3 數字類型相關的函數
數學相關的函數在math包中
# abs(x) 返回數字的絕對值,如abs(-10) 返回 10 # ceil(x) 返回數字的上入整數,如math.ceil(4.1) 返回 5 # cmp(x, y) 如果 x < y 返回 -1, 如果 x == y 返回 0, 如果 x > y 返回 1 # exp(x) 返回e的x次冪(ex),如math.exp(1) 返回2.718281828459045 # fabs(x) 返回數字的絕對值,如math.fabs(-10) 返回10.0 # floor(x) 返回數字的下舍整數,如math.floor(4.9)返回 4 # log(x) 如math.log(math.e)返回1.0,math.log(100,10)返回2.0 # log10(x) 返回以10為基數的x的對數,如math.log10(100)返回 2.0 # max(x1, x2,...) 返回給定參數的最大值,參數可以為序列。 # min(x1, x2,...) 返回給定參數的最小值,參數可以為序列。 # modf(x) 返回x的整數部分與小數部分,兩部分的數值符號與x相同,整數部分以浮點型表示。 # pow(x, y) x**y 運算后的值。 # round(x [,n]) 返回浮點數x的四舍五入值,如給出n值,則代表舍入到小數點后的位數。 # sqrt(x) 返回數字x的平方根,數字可以為負數,返回類型為實數,如math.sqrt(4)返回 2.0
?2.4 小整數對象池
1 >>> a = 5 2 >>> b = 5 3 >>> id(a),id(b) 4 (1892969616, 1892969616 ) 5 >>> c = 500 6 >>> d = 500 7 >>> id(c),id(d) 8 (2499230475376, 2499234158160 ) 9 >>>
小整數對象池: CPython 中整數 -5 到 256 ,永遠存在小整數對象池中,不會釋放。
對象池:緩存的機制。
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
