zoukankan      html  css  js  c++  java
  • numpy中的复合数组

    1.复合数组的创建

    # 复合数组,最重要的是定义dtype
    a = np.array([('ABC', [1, 2, 3])], dtype="U3, 3i4")
    print(a)
    # [('ABC', [1, 2, 3])]
    print(a[0]["f0"], a[0]["f1"][0])  # 默认的名称为f0, f1 .....
    # ABC 1

    2.如果不想用默认的名称,那就如下操作,得到的值和上面一样

    b = np.array([('ABC', [1, 2, 3])], dtype=[("fa", np.str_, 3), ("fb", np.int32, 3)])
    print(b)
    print(b[0]["fa"], b[0]["fb"][0])
    
    c = np.array([('ABC', [1, 2, 3])], dtype={"names": ["fa", "fb"], "formats":["U3", "3i4"]})
    print(c)
    print(c[0]["fa"], c[0]["fb"][0])

    3.由于复合数组,是不是有可能就会改变数组里面的值,因此也可以为某一段数组多有一些字节或位

    # 这里的0和16是偏移,以0位偏移基点,为数组预留空间
    d = np.array([('ABC', [1, 2, 3])], dtype={"fa": ("U3", 0),"fb": ("3i4", 16)})
    print(d)
    # [('ABC', [1, 2, 3])]
    print(d[0]["fa"], c[0]["fb"][0])
    # ABC 1
    print(c.itemsize)
    # 24
    # 获取数组元素的位数, 1字节 = 8位
    print(d.itemsize)
    # 28
  • 相关阅读:
    TcpClient
    文字识别
    halcon17.12 win7 64深度学框架搭建
    halcon多个形状模板匹配
    halcon 瓶盖定位
    halcol9点标定
    一个机械臂的正逆解
    Matlab robot-9.10(rvctools) 建模与正逆解
    16路舵机控制器USB访问
    C#二维码识别
  • 原文地址:https://www.cnblogs.com/zengsf/p/10060577.html
Copyright © 2011-2022 走看看