在Python中,NumPy庫是一個很強大的數值計算庫。np.empty是其中的一個函數,主要用於創建一個指定大小、數據類型的數組,並且不初始化數組中的元素。下面我們將從多個方面詳細講述np.empty函數。
一、np.empty()
1、np.empty()函數的作用是什麼?
np.empty()函數的作用是創建一個指定大小、數據類型的數組,並且不初始化數組中的元素。這個會在後面的代碼實例中詳細說明。
2、np.empty()函數的用法是什麼?
np.empty()函數的用法形如下方所示:
numpy.empty(shape, dtype = float, order = 'C')
其中,shape參數可以是整數,元組或列表,代表要創建的數組的形狀;dtype參數可以是字元串或numpy.dtype類型,代表數組的數據類型,默認為float64;order參數可以是’C’或’F’,代表用C-style或者Fortran-style的順序存儲多維數組中的元素。這裡的順序是指在內存中數組元素存儲的順序。
3、在NumPy中,np.empty()和np.zeros()的區別是什麼?
np.empty()和np.zeros()的區別在於:
np.zeros()用於創建指定形狀的全0數組;而np.empty()創建一個指定大小、數據類型的數組,並且數組中元素的初始值是隨機的。這個不同之處在程序實例中也會有更詳細的說明。
二、np.empty_like()
1、np.empty_like()函數的作用是什麼?
np.empty_like()函數的作用是創建一個大小與給定的數組形狀相同、數據類型相同的空數組,但不初始化數組中的元素。
2、np.empty_like()函數的用法是什麼?
np.empty_like()函數的用法形如下例所示:
numpy.empty_like(prototype, dtype = None, order = 'K', subok = True, shape = None)
其中,prototype參數可以是數組、元組或列表。若prototype是數組x,那麼np.empty_like(x)就代表創建一個和x大小、數據類型相同的空數組;dtype、order、shape和subok參數和np.empty()函數的一樣。
三、np.empty函數
1、np.empty函數的作用是什麼?
np.empty函數和np.empty()函數的作用是一樣的,都是創建指定大小、數據類型的數組,並且不初始化數組中的元素。
2、np.empty函數格式是怎樣的?
np.empty函數的格式和np.empty()函數完全一致,格式如下:
numpy.empty(shape, dtype = float, order = 'C')
其中,shape參數可以是整數,元組或列表,代表要創建的數組的形狀;dtype參數可以是字元串或numpy.dtype類型,代表數組的數據類型,默認為float64;order參數可以是’C’或’F’,代表用C-style或者Fortran-style的順序存儲多維數組中的元素。這裡的順序是指在內存中數組元素存儲的順序。
3、np.empty函數的語法是怎樣的?
np.empty函數的語法如下:
numpy.empty(shape, dtype = float, order = 'C')
這裡,shape參數是數組的形狀,是一個整數、元組或列表。
四、np.empty函數數值全為空
1、np.empty函數創建出來的數組的元素都是什麼值?
np.empty函數所創建出來的數組元素不是0,也不是1,而是隨機的,取決於存儲在特定內存位置上的值。
2、np.empty函數為什麼不初始化數組元素?
np.empty函數之所以不初始化數組元素,是因為在許多情況下,初始化數組元素是不必要的,因為這會浪費計算資源。
五、np.empty((2, 3, 2))選取
1、np.empty((2, 3, 2))是什麼意思?
np.empty((2, 3, 2))表示創建一個形狀為(2, 3, 2,即2個2維數組,每個2維數組都有3行2列)的、數據類型為默認浮點型的空數組。但它的元素並不是0。
2、np.empty((5,2))會報錯嗎?
不會。因為語法正確,只是np.empty((5,2))所創建的數組元素,是不確定的隨機值。
六、代碼實例
下面,我們將用代碼來說明np.empty(), np.empty_like, np.empty函數的操作以及使用方法。
1、np.empty()的使用方法:
import numpy as np
arr = np.empty((2, 2))
print('arr =', arr)
這段代碼中,我們導入了numpy庫,並用np.empty()函數創建了一個形狀為(2,2)的空數組arr,最後輸出這個數組arr。
輸出結果為:
arr = [[ 0.00000000e+000 0.00000000e+000]
[ 0.00000000e+000 0.00000000e+000]]
從輸出結果中可以看出,數組的元素值都是0,這是因為這些值未被初始化。
2、np.empty_like的使用方法:
import numpy as np
arr1 = np.array([[1,2,3], [4,5,6]])
arr2 = np.empty_like(arr1)
print('arr2 =', arr2)
這段代碼中,我們首先創建了一個形狀為(2, 3)的二維數組arr1,然後用np.empty_like()函數創建了一個和arr1相同大小的空數組arr2,最後輸出arr2。
輸出結果為:
arr2 = [[0 0 0]
[0 0 0]]
可以看到,輸出結果顯示arr2也是一個形狀為(2, 3)的二維數組。此時,數組的元素都為0,這也說明了,np.empty_like()函數默認使用dtype=float。
3、np.empty()的使用方法:
import numpy as np
arr3 = np.empty((2, 3), dtype = int)
print('arr3 =', arr3)
這段代碼中,我們創建了一個形狀為(2, 3)的整型空數組arr3,然後輸出它。
輸出結果為:
arr3 = [[0 0 0]
[0 0 0]]
這個輸出結果和arr2相同,但注意到我們給np.empty()加入了一個dtype參數,它表示在用np.empty()創建數組時指定數組的數據類型,這裡我們指定了dtype=’int’表示數組數據類型為整型。
七、總結
本文從多個方面詳細講述了np.empty函數的使用方法和相關知識。它是一個創建指定大小、數據類型的數組,且不初始化數組中元素的函數,適用於對空間效率較為敏感的情況。np.empty_like函數是一個創建空數組的函數,而它要求創建的空數組大小與現有的數組的大小相同。numpy.empty函數是numpy庫中的一個創建指定大小和數據類型的數組但不初始化的函數。在使用np.empty函數時,要注意到所創建的數組元素都是隨機值而不是0或者1。最後,本文通過代碼實例展示了np.empty(),np.empty_like()和np.empty函數的使用方法,希望能幫助讀者更好地了解和掌握numpy庫中的這些函數。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/307175.html