自学Python标准库(3)

array---高效的数值数组

        此模块定义了一种对象类型,可以紧凑地表示基本类型值的数组:字符、整数、浮点数等。 数组属于序列类型,其行为与列表非常相似,不同之处在于其中存储的对象类型是受限的。 类型在对象创建时使用单个字符的 类型码 来指定。 已定义的类型码如下:

类型码Python类型以字节标示的最小尺寸
‘b’int        1
‘B’int1
‘u’Unicode字符2
‘h’int2
‘H’int2
‘i’int2
‘I’int        2
‘l’int4
‘L’int        4
‘q’int8
‘Q’int8
‘f’float4
‘F’float8

array.array(typecode,initializer):一个包含typecode限制类型的新数组,并由可以选择的initializer值进行初始化,该值必须是一个列表、bytes-like object或包含正确类型的可迭代对象。

        如果给定一个列表或字符串,该 initializer 会被传给新数组的 fromlist()frombytes() 或 fromunicode() 方法(见下文)以将初始条目添加到数组中。 否则会将可迭代对象作为 initializer 传给 extend() 方法。

引发一个 审计事件 array.__new__ 附带参数 typecodeinitializer

1、方法和属性

        1)array.typecodes:包含所有可用类型码的字符串。

        数组对象支持普通的序列操作如索引、切片、拼接和重复等。 当使用切片赋值时,所赋的值必须为具有相同类型码的数组对象;所有其他情况都将引发 TypeError。 数组对象也实现了缓冲区接口,可以用于所有支持 字节类对象 的场合

        2)array.typecode:用于创建数组的类型码字符。

        3)array.itemsize:在内部表示一个数组项的字节长度

        4)array.append(x):添加一个值为x的新项到数组末尾

        5)array.buffer_info():返回一个元组以给出,用于存放数组内容的缓冲区元素的内存地址和长度

        6)array.byteswap:字节对调所有数组项

        7)array.count(x):返回x在数组中的出现次数

        8)array.extend(iterable):将来自 iterable 的项添加到数组末尾。 如果 iterable 是另一个数组,它必须具有 完全 相同的类型码;否则将引发 TypeError。 如果 iterable 不是一个数组,则它必须为可迭代对象并且其元素必须为可添加到数组的适当类型。

        9)array.frombytes(s):添加来自字节串的项,将字节解读为机器值的数组

        10)array.fromfile(f,n):从 file object f 中读取 n 项并将它们添加到数组末尾。 如果可用数据少于 n 项,则会引发 EOFError,但可用的项仍然会被插入数组。

        11)array.fromlist(list):添加来自 list 的项。 这等于 for x in list: a.append(x),区别在于如果发生类型错误,数组将不会被改变。

        12)array.fromunicode(s):使用来自给定 Unicode 字符串的数组扩展数组。 数组必须是类型为 'u' 的数组;否则将引发 ValueError。请使用用 array.frombytes(unicodestring.encode(enc)) 来将 Unicode 数据添加到其他类型的数组。

        13)array.index(x):返回最小的i使得i为x在数组中的首次出现的序号。

        14)array.insert(i,x):将值x作为新项插入到数组的i之前,负值被视为相对于数组末尾的位置。

        15)array.pop(x):从数组中移除序号为x的项并返回,默认移除并返回末尾项。

        16)array.remove(x):从数组中移除首次出现的x。

        17)array.reverse():反转数组中的各项的顺序。

        18)array.tobytes():将数组转换为一个机器值数组并返回字节表示。

        19)array.tofile(f):将所有项写入到file object f。

        20)array.tolist():将数组转换为包含相同项的普通列表。

        21)array.tounicode():将数组转换为一个Unicode字符串,

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值