最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

NumPy數(shù)據(jù)類型對象(dtype)的構(gòu)造方式

 更新時間:2026年05月25日 08:59:33   作者:峽谷的小魚  
這段文章詳細(xì)介紹了NumPy中的`numpy.dtype`類及其應(yīng)用用,涵蓋數(shù)據(jù)類型對象的創(chuàng)建、屬性及用示例,關(guān)鍵點包括:`numpy.dtype`類、數(shù)據(jù)類型對象、示例

一、數(shù)據(jù)類型對象

numpy.dtype 類的實例用來描述數(shù)組項的組成形式。包括內(nèi)存塊字節(jié)數(shù)、數(shù)據(jù)類型等等。

  • 在 NumPy 中描述標(biāo)量數(shù)據(jù)的類型,有整數(shù)、浮點數(shù)等不同精度的幾個內(nèi)置標(biāo)量類型。這些標(biāo)量類型不是 dtype 類的實例,但是在需要使用 dtype 對象的地方,也可以使用這些標(biāo)量。
  • 結(jié)構(gòu)化數(shù)據(jù)類型則是通過創(chuàng)建字段(包含其它數(shù)據(jù)類型的數(shù)據(jù)類型)類形成。每個字段都有一個名稱,可以用來訪問該字段。

數(shù)據(jù)類型對象描述了以下幾個方面:

  • 數(shù)據(jù)的類型(整型、浮點型、Python對象等);
  • 數(shù)據(jù)的大?。ǘ嗌賯€字節(jié));
  • 數(shù)據(jù)的順序(little-endian or big-endian);
  • 如果數(shù)據(jù)類型是子數(shù)組,它的形狀和數(shù)據(jù)類型是什么;
  • 如果數(shù)據(jù)類型對象是結(jié)構(gòu)化數(shù)據(jù)類型,則是其它數(shù)據(jù)類型的集合;集合的每個元素包括(字段名稱、字段數(shù)據(jù)類型,每個字段占用內(nèi)存塊的哪個部分);

二、numpy.dtype 類

1.numpy.dtype(dtype, align=False, copy=False)類

用于創(chuàng)建一個數(shù)據(jù)類型對象。NumPy 數(shù)組的元素是由dtype描述的。

數(shù)據(jù)類型對象可以由基本數(shù)字類型的不同組合構(gòu)成。

2. 類的參數(shù)

  1. dtype: 要轉(zhuǎn)換為的數(shù)據(jù)類型對象;
  2. align:bool, optional,如果為 true,填充字段使其類似 C 的結(jié)構(gòu)體;
  3. copy:bool,optional,復(fù)制 dtype 對象 ,如果為 false,則是對內(nèi)置數(shù)據(jù)類型對象的引用;

3. 類的屬性

  1. alignment:根據(jù)編譯器此數(shù)據(jù)類型所需的對齊(字節(jié));
  2. base:返回基本元素的數(shù)據(jù)類型;
  3. byteorder:指定此數(shù)據(jù)類型對象字節(jié)順序的字符,<小端,>大端,|不適;
  4. char:21種不同內(nèi)置類型中的每一種的唯一字符代碼;
  5. descr:PEP3118接口描述了數(shù)據(jù)類型;
  6. fields:此數(shù)據(jù)類型定義命名字段字典;
  7. itemsize:此數(shù)據(jù)類型對象的元素大??;
  8. kind:此數(shù)據(jù)類型的字符代碼;
  9. name:數(shù)據(jù)類型名稱;
  10. name:字段名稱組成的元組;
  11. str:此數(shù)據(jù)類型對象的數(shù)組協(xié)議類型字符串;

三、dtype數(shù)據(jù)類型對象構(gòu)造

每當(dāng)在 NumPy 函數(shù)或方法中需要數(shù)據(jù)類型時,需要提供 dtype 對象或可以轉(zhuǎn)換為 dtype 的對象。

數(shù)據(jù)類型對象的轉(zhuǎn)換由dtype構(gòu)造函數(shù)完成,可以轉(zhuǎn)換為數(shù)據(jù)類型對象的內(nèi)容有:

1. dtype 對象

按原樣使用.

2. None

使用默認(rèn)的數(shù)據(jù)類型 float_.

3. Array-scalar 類型:

24鐘內(nèi)置數(shù)組標(biāo)量類型對象,都轉(zhuǎn)換為關(guān)聯(lián)的 dtype 對象;

示例:

# 包含 32 位 big-endia 整數(shù)的簡單的數(shù)據(jù)類型。
>>>dt = np.dtype(np.int32)
>dtype('int32')

>>>dt = np.dtype(np.complex128)
>dtype('complex128')

4. 泛型類型

泛型分層類型對象根據(jù)關(guān)聯(lián)轉(zhuǎn)換為相應(yīng)的類型對象:

類型類型
number, inexact, floatingfloat
complexfloatingcfloat
integer, signedintegerint_
unsignedintegeruint
characterstring
generic, flexiblevoid

5. 內(nèi)置Python類型

Python內(nèi)置類型在用于生成dtype對象時,等效于對應(yīng)的數(shù)組標(biāo)量類型:

類型類型
intint_
boolbool_
floatfloat_
complexcfloat
bytesbytes_
strunicode_
unicodeunicode_
buffervoid
all othersobject_

示例:

# 內(nèi)置數(shù)據(jù)類型轉(zhuǎn)換。
>>>dt = np.dtype(float)
>dtype('float64')

>>>dt = np.dtype(int)
>dtype('int32')

6. 帶有.dtype的類型

具有 dtype 屬性的任何類型對象:將直接訪問和使用該屬性。

該屬性必須返回可轉(zhuǎn)換為dtype對象的內(nèi)容。

7.單字符串(One-character strings)

每個內(nèi)置數(shù)據(jù)類型都有一個字符代碼,用于唯一的標(biāo)識,參考《NumPy中的24種不同類型的標(biāo)量》。

示例:

# 使用字符代碼定義數(shù)據(jù)類型對象。
>>>dt = np.dtype('?')
>dtype('bool')
>
>>>dt = np.dtype('>H')
>dtype('>u2')

8. Array-protocol類型字符串

格式說明:第一個字符用于指定數(shù)據(jù)的類型,后面的字符用于指定每個項目的字節(jié)數(shù),如果第一個字符指定的是Unicode,則后面的字符標(biāo)識字符數(shù)。

字符代碼與指代的類型:

代碼類型
‘?’boolean
‘b’signed byte
‘B’unsigned byte
isigned intege
‘u’unsigned integer
‘f’floating-point
‘c’complex-floating point
‘m’timedelta
‘M’datetime
‘O’Python objects
‘S’, ‘a’zero-terminated bytes
‘U’Unicode string
‘V’raw data (void)

示例:

>>>dt = np.dtype('i4')
>dtype('int32')
>
>>>dt = np.dtype('c16')
>dtype('complex128')

>>>dt = np.dtype('a25')
>dtype('S25')

9. 帶有逗號分隔字段的字符串

用于指定格式化數(shù)據(jù)類型的簡寫表示法,生成的數(shù)據(jù)類型的字段命名為 ‘f0’、‘f1’、···、‘fN’ 。 

示例:

# 如果字段的形狀需要多個維度,則需要寫在數(shù)據(jù)類型前并在形狀上加括號。
>>>dt = np.dtype("a3, 3u8, (2,4)U10")
>dtype([('f0', 'S3'), ('f1', '<u8', (3,)), ('f2', '<U10', (2, 4))])

10. 類型字符串

可以使用 numpy.sctypeDict.keys() 中包含的任何字符串來生成數(shù)據(jù)類型對象。

示例:

>>>dt = np.dtype("uint32")
>dtype('uint')

11. 使用(flexible_dtype, itemsize)格式設(shè)定靈活數(shù)據(jù)類型

(flexible_dtype, itemsize)
  • flexible_dtype:靈活數(shù)據(jù)類型對象;
  • itemsize:所需項大小的整數(shù)

示例:

>>>dt = np.dtype("uint32")
>dtype('V10')

>>>dt = np.dtype(('U', 10))
>dtype('<U10')

12. 使用(fixed_dtype, shape)格式為固定大小的數(shù)據(jù)類型設(shè)定形狀

(fixed_dtype, shape)
  • fixed_dtype:固定大小的數(shù)據(jù)類型;
  • shape:為整數(shù),表示對應(yīng)大小的一維數(shù)組;為元組,表示對應(yīng)形狀的子數(shù)組;

示例:

>>>dt = np.dtype(('i8', 3))
>dtype(('<i8', (3,)))

>>>dt = np.dtype(('i4, (2,3)f8, f4', (2,3)))
>dtype(([('f0', '<i4'), ('f1', '<f8', (2, 3)), ('f2', '<f4')], (2, 3)))

13. 使用[(field_name, field_dtype, field_shape), ...]格式

[(field_name, field_dtype, field_shape), ...]
  • field_name:字段名稱;
  • field_dtype:數(shù)據(jù)類型;
  • field_shape:數(shù)組形狀;

示例:

>>>dt = np.dtype([('big', '>i4'), ('little', '<i4')])
>dtype([('big', '>i4'), ('little', '<i4')])

14. 使用{'names': ..., 'formats': ..., 'offsets': ..., 'titles': ..., 'itemsize': ...}格式

{'names': ..., 'formats': ..., 'offsets': ..., 'titles': ..., 'itemsize': ...}
  • names:必選,字段名稱列表;
  • formats:必選,數(shù)據(jù)類型列表,必須與字段名稱列表等長;
  • offsets:可選,每個字段的字節(jié)偏移量的列表
  • titles:可選,標(biāo)題列表;
  • itemsize:可選,設(shè)置dtype的總大?。?/li>

示例:

>>>dt = np.dtype({'names': ['r','b'], 'formats': ['u1', 'u1'],
                'offsets': [0, 2],
               'titles': ['Red pixel', 'Blue pixel']})
>dtype({'names':['r','b'], 'formats':['u1','u1'], 'offsets':[0,2], 'titles':['Red pixel','Blue pixel'], 'itemsize':3})

15. 使用{'field1': ..., 'field2': ..., ...}格式

{'field1': ..., 'field2': ..., ...}

示例:

>>>dt = np.dtype({'col1': ('U10', 0), 'col2': (np.float32, 10),
    'col3': (int, 14)})
>dtype({'names':['col1','col2','col3'], 'formats':['<U10','<f4','<i4'], 'offsets':[0,10,14], 'itemsize':40})

16. 使用(base_dtype, new_dtype)格式

這種方法是將 base_dtype 解釋為結(jié)構(gòu)化的dtype。 

示例:

# 將32位整數(shù)解釋位兩個16位整數(shù)
>>>dt = np.dtype((np.int32,{'real':(np.int16, 0),'imag':(np.int16, 2)}))
>dtype((numpy.int32, [('real', '<i2'), ('imag', '<i2')]))

# 將32位整數(shù)解釋為包含8位整數(shù)的子數(shù)組
>>>dt = np.dtype((np.int32, (np.int8, 4)))
>dtype('int32')

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python數(shù)據(jù)分析從入門到進階之分類算法全面教程

    Python數(shù)據(jù)分析從入門到進階之分類算法全面教程

    數(shù)據(jù)分析是處理和解釋數(shù)據(jù)以發(fā)現(xiàn)有用信息和洞察的過程,其中,分類算法是數(shù)據(jù)分析領(lǐng)域的一個重要組成部分,它用于將數(shù)據(jù)分為不同的類別或組,本文將介紹分類算法的基本概念和進階技巧,以及如何在Python中應(yīng)用這些算法,包括示例代碼和實際案例
    2023-11-11
  • python編程scrapy簡單代碼實現(xiàn)搜狗圖片下載器

    python編程scrapy簡單代碼實現(xiàn)搜狗圖片下載器

    這篇文章主要為大家介紹了使用python scrapy簡單代碼實現(xiàn)搜狗圖片下載器示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助
    2021-11-11
  • Pycharm Tkinter安裝失敗的解決過程

    Pycharm Tkinter安裝失敗的解決過程

    文章主要講解了在Pycharm中安裝Tkinter時遇到的問題及解決方法,指出可能Pycharm已自帶Tkinter,無需單獨安裝;可通過python-mtkinter檢查是否安裝;若需要安裝,可在終端輸入pip install tkinter進行安裝
    2026-04-04
  • 將labelme格式數(shù)據(jù)轉(zhuǎn)化為標(biāo)準(zhǔn)的coco數(shù)據(jù)集格式方式

    將labelme格式數(shù)據(jù)轉(zhuǎn)化為標(biāo)準(zhǔn)的coco數(shù)據(jù)集格式方式

    今天小編就為大家分享一篇將labelme格式數(shù)據(jù)轉(zhuǎn)化為標(biāo)準(zhǔn)的coco數(shù)據(jù)集格式方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-02-02
  • python中remove函數(shù)的踩坑記錄

    python中remove函數(shù)的踩坑記錄

    這篇文章主要給大家介紹了關(guān)于python中remove函數(shù)的踩坑記錄,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • python使用matplotlib畫出的圖怎樣放到word中

    python使用matplotlib畫出的圖怎樣放到word中

    這篇文章主要介紹了python使用matplotlib畫出的圖怎樣放到word中問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • Python對時間序列進行數(shù)據(jù)分析與可視化的實戰(zhàn)指南

    Python對時間序列進行數(shù)據(jù)分析與可視化的實戰(zhàn)指南

    掌握時間序列分析技術(shù),能幫助我們從數(shù)據(jù)中挖掘出隱藏的趨勢,周期和異常,本文將以股票價格數(shù)據(jù)為例,通過Python實現(xiàn)從數(shù)據(jù)加載到可視化分析的全流程,有需要的可以了解下
    2025-11-11
  • 使用Python+Flask開發(fā)博客項目并實現(xiàn)內(nèi)網(wǎng)穿透

    使用Python+Flask開發(fā)博客項目并實現(xiàn)內(nèi)網(wǎng)穿透

    Flask是一個使用python編寫的輕量級Web框架,這篇文章我們將使用這個框架編寫一個屬于自己的博客網(wǎng)站!并教你如何通過使用內(nèi)網(wǎng)穿透工具處理項目,讓本地的項目可以在公網(wǎng)訪問,感興趣的可以了解一下
    2021-11-11
  • 使用python統(tǒng)計文件行數(shù)示例分享

    使用python統(tǒng)計文件行數(shù)示例分享

    當(dāng)文件的尺寸非常大的時候(10G之上吧),想知道行數(shù)是個問題,提供一個使用python統(tǒng)計文件行數(shù)的示例,需要的朋友可以參考下
    2014-02-02
  • Python實現(xiàn)動態(tài)循環(huán)輸出文字功能

    Python實現(xiàn)動態(tài)循環(huán)輸出文字功能

    這篇文章主要介紹了Python實現(xiàn)動態(tài)循環(huán)輸出文字功能,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-05-05

最新評論

海南省| 百色市| 邹平县| 东乌| 宁晋县| 江山市| 喜德县| 峨山| 包头市| 深泽县| 甘肃省| 泾阳县| 吐鲁番市| 沂南县| 巴里| 松原市| 桃园市| 红桥区| 当阳市| 敦化市| 宣武区| 益阳市| 北辰区| 顺平县| 罗田县| 城固县| 二手房| 黎川县| 闻喜县| 东平县| 名山县| 墨江| 杭锦后旗| 呈贡县| 布尔津县| 沂源县| 中超| 务川| 乌拉特后旗| 富阳市| 利辛县|