當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python numpy records.fromstring用法及代碼示例


本文簡要介紹 python 語言中 numpy.core.records.fromstring 的用法。

用法:

core.records.fromstring(datastring, dtype=None, shape=None, offset=0, formats=None, names=None, titles=None, aligned=False, byteorder=None)

從二進製數據創建記錄數組

請注意,盡管有此函數的名稱,但它不接受 str 實例。

參數

datastring bytes-like

二進製數據的緩衝區

dtype 數據類型,可選

所有數組的有效 dtype

shape int 或整數元組,可選

每個數組的形狀。

offset 整數,可選

緩衝區中要開始讀取的位置。

formats, names, titles, aligned, byteorder :

如果 dtype None ,則這些參數將傳遞給 numpy.format_parser 以構造數據類型。有關詳細文檔,請參閱該函數。

返回

np.recarray

將數組視圖記錄到數據字符串中的數據中。如果數據字符串是隻讀的,這將是隻讀的。

例子

>>> a = b'\x01\x02\x03abc'
>>> np.core.records.fromstring(a, dtype='u1,u1,u1,S3')
rec.array([(1, 2, 3, b'abc')],
        dtype=[('f0', 'u1'), ('f1', 'u1'), ('f2', 'u1'), ('f3', 'S3')])
>>> grades_dtype = [('Name', (np.str_, 10)), ('Marks', np.float64),
...                 ('GradeLevel', np.int32)]
>>> grades_array = np.array([('Sam', 33.3, 3), ('Mike', 44.4, 5),
...                         ('Aadi', 66.6, 6)], dtype=grades_dtype)
>>> np.core.records.fromstring(grades_array.tobytes(), dtype=grades_dtype)
rec.array([('Sam', 33.3, 3), ('Mike', 44.4, 5), ('Aadi', 66.6, 6)],
        dtype=[('Name', '<U10'), ('Marks', '<f8'), ('GradeLevel', '<i4')])
>>> s = '\x01\x02\x03abc'
>>> np.core.records.fromstring(s, dtype='u1,u1,u1,S3')
Traceback (most recent call last)
   ...
TypeError: a bytes-like object is required, not 'str'

相關用法


注:本文由純淨天空篩選整理自numpy.org大神的英文原創作品 numpy.core.records.fromstring。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。