1. 程式人生 > >python3基礎二——基本的數據類型二

python3基礎二——基本的數據類型二

隨機排序 意義 src -- and random模塊 bsp 限制 默認

一.數字(Number)

1.Python支持三種不同的數值類型:整型(int),浮點型(float),復數(complex)

2.Python數字數據類型用於存儲數值

3.數據類型是不允許改變的,這就意味著如果改變數字數據類型的值,將重新分配內存空間

4.可以通過使用del語句刪除數字對象、單個或多個對象的引用

5.數學常量:pi(圓周率)、e(自然常數)

6.Python數字類型轉換int() 、float()、 complex()

7.浮點數也就是小數,浮點數沒有大小限制,但是超出一定範圍就直接表示為 inf (無限大)

8.數值進制形式轉化:bin、oct、hex

技術分享圖片
 1 #2進制0b開頭   8進制0o開頭  16進制0x開頭  但是輸出大多是以十進制的形式
2 #而分別使用 bin,oct,hex 可輸出數字的二進制,八進制,十六進制形式 3 a=60 4 print(bin(a)) 5 print(oct(a)) 6 print(hex(a)) 7 -------------------------------------------------------------- 8 0b111100 9 0o74 10 0x3c
進制轉換

9.數學函數

技術分享圖片

二.隨機數

1.choice() :從序列的元素中隨機挑選一個元素

技術分享圖片
1 #choice()方法返回一個列表,元組或字符串的隨機項。
2 import random#choice()是不能直接訪問的,需要導入random模塊,然後通過random靜態對象調用該方法
3 print(random.choice([1,5,6,7,8,8,7])) 4 print(random.choice(strrr)) 5 ------------------------------------------------------------ 6 7 7 s
choice()

2.uniform(x,y):隨機生成下一個實數,它在[x,y]範圍內

技術分享圖片
1 #uniform() 方法將隨機生成下一個實數,它在[x,y]範圍內,返回一個浮點數。
2 import random
3 print(random.uniform(5, 10))#uniform()是不能直接訪問的,需要導入 random 模塊,然後通過 random 靜態對象調用該方法。
4 ------------------------------------------------------------- 5 6.2984129789696635
uniform(x,y)

3.shuffle():將序列的所有元素隨機排序

技術分享圖片
1 #shuffle()方法將序列的所有元素隨機排序。
2 import random#shuffle()是不能直接訪問的,需要導入 random 模塊,然後通過 random 靜態對象調用該方法。
3 list=[20,15,38,22,7]
4 random.shuffle(list)
5 print(list)
6 ---------------------------------------------------------------
7 [22, 20, 15, 38, 7]
sguffle()

4.seed([]):改變隨機數生成器的種子seed

技術分享圖片
1 #seed() 方法改變隨機數生成器的種子,可以在調用其他隨機模塊函數之前調用此函數。。
2 import random
3 random.seed()
4 print(random.random())
5 ----------------------------------------------------
6 0.6603979368318968
seed()

5.random():隨機生成下一個實數,它在[0,1)範圍內

技術分享圖片
1 #random()方法返回隨機生成的一個實數,它在[0,1)範圍內。
2 import random
3 print(random.random())
4 -----------------------------------------------
5 0.5614309674610323
random()

6.ranrange():從指定範圍內,按指定基數遞增的集合中獲取一個隨機數,基數缺省值為1

技術分享圖片
 1 import random
 2 #random.randrange ([start,] stop [,step])
 3 #start -- 指定範圍內的開始值,包含在範圍內,
 4 #stop -- 指定範圍內的結束值,不包含在範圍內。
 5 #step -- 指定遞增基數。
 6 print(random.randrange(1,100,2))# 從 1-100 中選取一個奇數
 7 print(random.randrange(100))# 從 0-99 選取一個隨機數
 8 --------------------------------------------------------------------------------------
 9 23
10 44
randrange

7.random.randint(x,y):隨機生一個整數int類型,可以指定這個整數的範圍

技術分享圖片
1 import random
2 print(random.randint(1000,9999))
3 --------------------------------------------
4 6656
randint()

8.random.sample(sequence,length) 可以從指定的序列中,隨機的截取指定長度的片斷,不修改原序列。

技術分享圖片
1 import random
2 lst = random.sample(abcd1234,4)
3 print(lst)
4 
5 -----------------------------------------------
6 [d, c, 3, b]
random.sample()

9.range()函數:生成數

技術分享圖片
 1 #range(start, stop,[step])   start<=###<stop
 2 #start: 開始,默認是從0開始。例如range(5)等價於range(0,5);
 3 #stop: 計數到 stop 結束,但不包括 stop。例如:range(0,5)是[0, 1, 2, 3, 4]沒有5
 4 #step:步長,默認為1。例如:range(0, 5) 等價於 range(0, 5, 1)
 5 #Python3 range() 函數返回的是一個可叠代對象(類型是對象),而不是列表類型, 所以打印的時候不會打印列表。
 6 #Python3 list() 函數是對象叠代器,可以把range()返回的可叠代對象轉為一個列表,返回的變量類型為列表
 7 print(range(0,5))
 8 for i in range(0,5):
 9     print(i)
10 print(list(range(0,5)))
11 print(list(range(100,5,-10)))
12 --------------------------------------------------------------------------------------------range(0, 5)
13 0
14 1
15 2
16 3
17 4
18 [0, 1, 2, 3, 4]
19 [100, 90, 80, 70, 60, 50, 40, 30, 20, 10]
range()

三.int整型

1.Python可以處理任意大小的整數,當然包括負整數,整數沒有大小限制,而某些語言的整數根據其存儲長度是有大小限制的

2.創建:(1)n1=123 (2) n1=int(123)

3.int()

技術分享圖片
 1 #1.創建int類對象
 2 n2=int(1123)
 3 print(type(n2))
 4 
 5 
 6 #2.轉化str類數字為int類型
 7 n1=132
 8 print(type(n1))
 9 a2=int(n1)#轉換為整型,只能是數字轉換
10 print(type(a2))
11 print(a2)
12 
13 3.轉化編碼
14 a2=int(0b100,2)#二進制轉換十進制
15 print(a1,a2)
16 print(int(014,8))#八進制轉十進制
17 print(int(0xc,16))#十六進制轉十進制
18 ----------------------------------------------------------
19 <class int>
20 
21 <class str>
22 <class int>
23 132
24 
25 4
26 12
27 12
int()

4.bit_length(self):返回表示該數字的時占用的最少位數

技術分享圖片
1 n1=4#00000100
2 print(n1.bit_length())
3 
4 --------------------------------------------
5 3
bit_length()

5.整數運算結果是精確的

6.int()將小數轉換為整數,對於正數結果是向下取整,對於負數結果是向上取整

技術分享圖片
 1 a=int(5.9)
 2 b=int(-5.9)
 3 print(a)
 4 print(b)
 5 
 6 c=5/4
 7 print(c)
 8 
 9 d=5.5/4.0
10 print(d)
11 -------------------------------------------
12 5
13 -5
14 1.25
15 1.375
取整

四.復數

技術分享圖片
1 var3=3+4j         #Python支持復數,復數由實數部分和虛數部分構成,可以用a + bj,
2 var4=complex(6,7) #或者complex(a,b)表示,
3 print(var3,var4)  #復數的實部a和虛部b都是浮點型。
4 ----------------------------------------------------------------------------------
5 (3+4j) (6+7j)
復數

五.布爾值

1.True/False表示真假,行或不行,是或不是

2.布爾類型是int類型的一個子類

3.非布爾類型的值,如果作為真假來判定,一般都是非0即真,非空即真

4.判斷為False:(1)本身不符合條件 (2)None,0,0.0, ,[],(),{},set()

5.如果布爾值作為數字參與運算,那麽所有非0的數字都為True,但是,反之如果True作為數字參與運算的時候,True表示1

6.Python3 中,把 True 和 False 定義成關鍵字了,但它們的值還是 1 和 0,它們可以和數字相加

技術分享圖片
1 >>>True*3
2 3
3 >>>False+8
4 8
True

六.空值None

1.一個特殊的常量,不表示任何類型

2.用於占位,或者變量解除綁定,

3.None不能理解為0,因為0是有意義的

3.None於任何其他的類型進行比較永遠返回False

技術分享圖片
1 a=343
2 print(a)
3 b=None
4 print(b)
5 --------------------------------
6 343
7 None
None

python3基礎二——基本的數據類型二