中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python?NumPy之數據類型對象怎么構造

發布時間:2022-08-29 11:14:55 來源:億速云 閱讀:110 作者:iii 欄目:開發技術

這篇文章主要介紹“Python NumPy之數據類型對象怎么構造”,在日常操作中,相信很多人在Python NumPy之數據類型對象怎么構造問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Python NumPy之數據類型對象怎么構造”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

每個 ndarray 都有一個關聯的數據類型 (dtype) 對象。這個數據類型對象(dtype)告訴我們數組的布局。這意味著它為我們提供了以下信息:

  • 數據類型(整數、浮點數、Python 對象等)

  • 數據大小(字節數)

  • 數據的字節順序(小端或大端)

  • 如果數據類型是子數組,它的形狀和數據類型是什么。

ndarray 的值存儲在緩沖區中,可以將其視為連續的內存字節塊。所以這些字節將如何被解釋由dtype對象給出。  

構造數據類型(dtype)對象

數據類型對象是 numpy.dtype 類的一個實例,可以使用numpy.dtype.

參數:

obj: 要轉換為數據類型對象的對象。

align : [bool, optional] 向字段添加填充以匹配 C 編譯器為類似 C 結構輸出的內容。

copy : [bool, optional] 制作數據類型對象的新副本。如果為 False,則結果可能只是對內置數據類型對象的引用。

# Python 程序創建數據類型對象
import numpy as np
 
# np.int16 被轉換為數據類型對象。
print(np.dtype(np.int16))

輸出:

int16

# Python 程序創建一個包含 32 位大端整數的數據類型對象
import numpy as np
 
# i4 表示大小為 4 字節的整數
# > 表示大端字節序和
# < 表示小端編碼。
# dt 是一個 dtype 對象
dt = np.dtype('>i4')
 
print("Byte order is:",dt.byteorder)
 
print("Size is:", dt.itemsize)
 
print("Data type is:", dt.name)

輸出:

Byte order is: >
Size is: 4
Name of data type is: int32

類型說明符(在上述情況下為 i4)可以采用不同的形式:

b1、i1、i2、i4、i8、u1、u2、u4、u8、f2、f4、f8、c8、c16、a(表示字節、整數、無符號整數、浮點數、指定字節長度的復數和定長字符串)

int8,...,uint8,...,float16, float32, float64, complex64, complex128(這次是大小)

注意:  dtype 與 type 不同。

# 用于區分類型和數據類型的 Python 程序。
import numpy as np
 
a = np.array([1])
 
print("type is: ",type(a))
print("dtype is: ",a.dtype)

輸出:

type is:    
dtype is:  int32

具有結構化數組的數據類型對象

數據類型對象對于創建結構化數組很有用。結構化數組是包含不同類型數據的數組。可以借助字段訪問結構化數組。

字段就像為對象指定名稱。在結構化數組的情況下,dtype 對象也將是結構化的。

# 用于演示字段使用的 Python 程序
import numpy as np
 
# 一種結構化數據類型,包含一個 16 字符的字符串(在“name”字段中)和兩個 64 位浮點數的子數組(在“grades”字段中)
 
dt = np.dtype([('name', np.unicode_, 16),
               ('grades', np.float64, (2,))])
 
# 具有字段等級的對象的數據類型
print(dt['grades'])
 
# 具有字段名稱的對象的數據類型
print(dt['name'])

輸出:

('<f8', (2,))

# Python 程序演示了數據類型對象與結構化數組的使用。
import numpy as np
 
dt = np.dtype([('name', np.unicode_, 16),
               ('grades', np.float64, (2,))])
 
# x 是一個包含學生姓名和分數的結構化數組。
# 學生姓名的數據類型是np.unicode_,分數的數據類型是np.float(64)
x = np.array([('Sarah', (8.0, 7.0)),
              ('John', (6.0, 7.0))], dtype=dt)
 
print(x[1])
 
print("Grades of John are: ", x[1]['grades'])
print("Names are: ", x['name'])

輸出:

('John', [ 6.,  7.])
Grades of John are:  [ 6.  7.]
Names are:  ['Sarah' 'John']

到此,關于“Python NumPy之數據類型對象怎么構造”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

沭阳县| 长岭县| 门头沟区| 东至县| 镇沅| 江孜县| 松江区| 灵璧县| 霸州市| 资中县| 鄂托克前旗| 建湖县| 高雄县| 蒙阴县| 靖边县| 兰西县| 松潘县| 屯门区| 恭城| 尤溪县| 九江市| 崇左市| 陈巴尔虎旗| 美姑县| 延吉市| 阳城县| 丰县| 班玛县| 临高县| 来宾市| 敦化市| 大港区| 南岸区| 河西区| 永川市| 梅河口市| 临漳县| 祁阳县| 石河子市| 屏南县| 中西区|