美文网首页
Y19M4W3-numpy.ndarray简易打包法

Y19M4W3-numpy.ndarray简易打包法

作者: memset | 来源:发表于2019-04-18 23:52 被阅读0次
def pack_ndarray(x):
    ss = struct.pack('<I{}I'.format(len(x.shape)), len(x.shape), *x.shape)
    dr = bytes(repr(x.dtype.descr), 'ascii')
    ds = struct.pack('<I{}s'.format(len(dr)), len(dr), dr)
    xr = x.tobytes()
    xs = struct.pack('<I{}s'.format(len(xr)), len(xr), xr)
    return ss + ds + xs

def unpack_ndarray(s):
    sl, s = struct.unpack('<I', s[:4])[0], s[4:]
    _shape, s = struct.unpack('<{}I'.format(sl), s[:4*sl]), s[4*sl:]
    dl, s = struct.unpack('<I', s[:4])[0], s[4:]
    _descr, s = struct.unpack('<{}s'.format(dl), s[:dl])[0], s[dl:]
    _descr = eval(str(_descr, 'ascii'))
    xl, s = struct.unpack('<I', s[:4])[0], s[4:]
    _x, s = struct.unpack('<{}s'.format(xl), s[:xl])[0], s[xl:]
    _x = np.frombuffer(_x, np.dtype(_descr)).reshape(_shape)
    return _x, s

相关文章

  • Y19M4W3-numpy.ndarray简易打包法

  • 2017-10-16

    道不易,法简易,术常易

  • 三七生饮食起居法

    简易饮食起居调病法(王誉霖 整理 三七生 语录) 简易饮食起居调病法(王誉霖 整理 三七生 语录) 早晨 中午 下...

  • 简易法

    持续中,可是差点没坚持住。

  • 简易占卜法

    1.随机(比如翻书,抽扑克,看时间,随心报数...)取三个数,可以是三个均一位的数,也可以是三个多位数。然后以第一...

  • 《心即是佛》

    问:怎样理解“自心简易难信之秘密”? 答:大圆满法是最究竟的法,“自心简易难信之秘密”,我们的心性就是佛性,这是最...

  • vue项目中不打包库文件

    目的:将所有的库文件提出来,项目打包时不打包这些库文件。以一个简易 项目举例: 1.将库文件放入 static文件...

  • 简易观人法

    比手划脚,喋喋不休的人: 1. 性格明爽快2.好谈3.有人缘好的面孔4.言而不尽不愿休5.有自己知道的事情急着要在...

  • 简易读经法

    第三课 简易读经法例证 耶利米书 1 今天晚上我们一起来学习圣经文脉第三期课程《简易读经法》。圣经一共是1189章...

  • 简易估值法

    最近流行指数估值,有各种各样的估值办法,看的眼花缭乱,那么有没有一目了然的方法可以估值呢? 有,就是收益率对比。 ...

网友评论

      本文标题:Y19M4W3-numpy.ndarray简易打包法

      本文链接:https://www.haomeiwen.com/subject/dpqfgqtx.html