當返回正確的標誌時,numpy.require()函數對數組很有用,它滿足傳遞給已編譯代碼(可能通過ctypes)的要求。
用法:numpy.require(a, dtype=None, requirements=None)
參數:
a:數組
dtype:數據類型
requirements:str或str列表
需求列表可以是以下任意一項。
- ‘F’:‘F_CONTIGUOUS’-確保Fortran-contiguous陣列。
- ‘C’:‘C_CONTIGUOUS’-確保C-contiguous陣列。
- ‘A’:‘ALIGNED’-確保數據類型對齊的數組。
- 'W':'WRITEABLE'-確保可寫數組。
- 'O':'OWNDATA'-確保數組擁有自己的數據。
- “ E”:“ ENSUREARRAY”-確保基本數組而不是子類。
返回值:ndarray
Exception:ValueError-引發ValueError
代碼1:
Python3
# Python program explaining
# numpy.require() function
# importing numpy
import numpy as np
# creating 4 x 4 array
data = np.arange(16).reshape(4, 4)
data.flags
輸出:
C_CONTIGUOUS:True F_CONTIGUOUS:False OWNDATA:False WRITEABLE:True ALIGNED:True WRITEBACKIFCOPY:False UPDATEIFCOPY:False
代碼2:
Python3
import numpy as np
# Python program explaining
# numpy.require()
b = np.require(data, dtype=np.float32,
requirements=['A', 'W', 'O', 'C'])
b.flags
輸出:
C_CONTIGUOUS:True F_CONTIGUOUS:False OWNDATA:True WRITEABLE:True ALIGNED:True WRITEBACKIFCOPY:False UPDATEIFCOPY:False
注:本文由純淨天空篩選整理自kumar_satyam大神的英文原創作品 numpy.require() in Python。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。