python生成一定間隔的數字列表
阿新 • • 發佈:2022-05-20
NumPy 從數值範圍建立陣列 | 菜鳥教程 (runoob.com)
NumPy 從數值範圍建立陣列
這一章節我們將學習如何從數值範圍建立陣列。
numpy.arange
numpy 包中的使用 arange 函式建立數值範圍並返回 ndarray 物件,函式格式如下:
numpy.arange(start, stop, step, dtype)
根據 start 與 stop 指定的範圍以及 step 設定的步長,生成一個 ndarray。
引數說明:
引數 | 描述 |
---|---|
start |
起始值,預設為0
|
stop |
終止值(不包含) |
step |
步長,預設為1
|
dtype |
返回ndarray |
例項
生成 0 到 5 的陣列:
例項
import numpy as np x = np.arange(5) print (x)輸出結果如下:
[0 1 2 3 4]
設定返回型別位 float:
例項
import numpy as np # 設定了 dtype x = np.arange(5, dtype = float) print (x)輸出結果如下:
[0. 1. 2. 3. 4.]
設定了起始值、終止值及步長:
例項
import numpy as np x = np.arange(10,20,2)輸出結果如下:
[10 12 14 16 18]
numpy.linspace
numpy.linspace 函式用於建立一個一維陣列,陣列是一個等差數列構成的,格式如下:
np.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None)
引數說明:
引數 | 描述 |
---|---|
start |
序列的起始值 |
stop |
序列的終止值,如果endpoint 為true ,該值包含於數列中 |
num |
要生成的等步長的樣本數量,預設為50
|
endpoint |
該值為 true 時,數列中包含stop |
retstep |
如果為 True 時,生成的陣列中會顯示間距,反之不顯示。 |
dtype |
ndarray 的資料型別 |
以下例項用到三個引數,設定起始點為 1 ,終止點為 10,數列個數為 10。
例項
import numpy as np a = np.linspace(1,10,10) print(a)輸出結果為:
[ 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.]
設定元素全部是1的等差數列:
例項
import numpy as np a = np.linspace(1,1,10) print(a)輸出結果為:
[1. 1. 1. 1. 1. 1. 1. 1. 1. 1.]
將 endpoint 設為 false,不包含終止值:
例項
import numpy as np a = np.linspace(10, 20, 5, endpoint = False) print(a)輸出結果為:
[10. 12. 14. 16. 18.]
如果將 endpoint 設為 true,則會包含 20。
以下例項設定間距。
例項
import numpy as np a =np.linspace(1,10,10,retstep= True) print(a) # 拓展例子 b =np.linspace(1,10,10).reshape([10,1]) print(b)輸出結果為:
(array([ 1., 2., 3., 4., 5., 6., 7., 8., 9., 10.]), 1.0)
[[ 1.]
[ 2.]
[ 3.]
[ 4.]
[ 5.]
[ 6.]
[ 7.]
[ 8.]
[ 9.]
[10.]]
numpy.logspace
numpy.logspace 函式用於建立一個於等比數列。格式如下:
np.logspace(start, stop, num=50, endpoint=True, base=10.0, dtype=None)
base 引數意思是取對數的時候 log 的下標。
引數 | 描述 |
---|---|
start |
序列的起始值為:base ** start |
stop |
序列的終止值為:base ** stop。如果endpoint 為true ,該值包含於數列中 |
num |
要生成的等步長的樣本數量,預設為50
|
endpoint |
該值為 true 時,數列中中包含stop 值,反之不包含,預設是True。 |
base |
對數 log 的底數。 |
dtype |
ndarray 的資料型別 |
例項
import numpy as np # 預設底數是 10 a = np.logspace(1.0, 2.0, num = 10) print (a)輸出結果為:
[ 10. 12.91549665 16.68100537 21.5443469 27.82559402
35.93813664 46.41588834 59.94842503 77.42636827 100. ]
將對數的底數設定為 2 :
例項
import numpy as np a = np.logspace(0,9,10,base=2) print (a)輸出如下:
[ 1. 2. 4. 8. 16. 32. 64. 128. 256. 512.]