Python之数组模块——array

发布时间:2019-08-28 09:24:24编辑:auto阅读(2570)

    该模块定义了一个对象类型,可以表示一个基本值的数组:整数、浮点数、字符。


    数组模块array的大部分属性及方法的应用:
    import array
    
    #array.array(typecode,[initializer])——typecode:元素类型代码;initializer:初始化器,若数组为空,则省略初始化器。
    arr = array.array('i',[0,1,1,2,3])
    print(arr)
    
    #array.typecodes——模块属性
    print('\n输出一条 包含所有可用类型代码的字符串:')
    print(array.typecodes)#注意,调用者是模块名,不是某个对象
    
    #array.typecode——对象属性
    print('\n输出 用于创建数组的类型代码字符:')
    print(arr.typecode)
    
    #array.itemsize——对象属性
    print('\n输出 数组中一个元素的字节长度')
    print(arr.itemsize)
    
    #array.append(x)——对象方法
    print('\n将一个新值附加到数组的末尾:')
    arr.append(4)
    print(arr)
    
    #array.buffer_info()——对象方法
    print('\n获取数组在存储器中的地址、元素的个数,以元组形式(地址,长度)返回:')
    print(arr.buffer_info())
    
    #array.count(x)——对象方法
    print('\n获取某个元素在数组中出现的次数:')
    print(arr.count(1))
    
    #array.extend(iterable)——对象方法:将可迭代对象的元素序列附加到数组的末尾,合并两个序列
    print('\n将可迭代对象的元素序列附加到数组的末尾,合并两个序列:')
    #注意:附加元素数值类型必须与调用对象的元素的数值类型一致
    _list = [5,6,7]
    arr.extend(_list)
    print(arr)
    
    '''
    #错误示例
    _dict = {'1801':'邓','1802':'杜'}
    arr.extend(_dict)
    print(arr)
    '''
    #array.fromlist(list)——对象方法:将列表中的元素追加到数组后面,相当于for x in list: a.append(x)
    print('\n将列表中的元素追加到数组后面,相当于for x in list: a.append(x):')
    arr.fromlist(_list)
    print(arr)
    
    #array.index(x)——对象方法:返回数组中x的最小下标
    print('\n返回数组中1的最小下标:')
    print(arr.index(1))
    
    #array.insert(i,x)——对象方法:在下标i(负值表示倒数)之前插入值x
    print('\n在下标1(负值表示倒数)之前插入值0:')
    arr.insert(1,0)
    print(arr)
    
    #array.pop(i)——对象方法:删除索引为i的项,并返回它
    print('\n删除索引为4的项,并返回它:')
    print(arr.pop(4))
    print(arr)
    
    #array.remove(x)——对象方法:删除第一次出现的元素x
    print('\n删除第一次出现的元素3:')
    arr.remove(3)
    print(arr)
    
    #array.reverse()——对象方法:反转数组中元素的顺序
    print('\n将数组arr中元素的顺序反转:')
    arr.reverse()
    print(arr)
    
    #array.tolist():将数组转换为具有相同元素的列表(list)
    print('\n将数组arr转换为一个具有相同元素的列表:')
    li = arr.tolist()
    print(li)
    
    
    输出结果:
    array('i', [0, 1, 1, 2, 3])
    
    输出一条 包含所有可用类型代码的字符串:
    bBuhHiIlLqQfd
    
    输出 用于创建数组的类型代码字符:
    i
    
    输出 数组中一个元素的字节长度
    4
    
    将一个新值附加到数组的末尾:
    array('i', [0, 1, 1, 2, 3, 4])
    
    获取数组在存储器中的地址、元素的个数,以元组形式(地址,长度)返回:
    (2503098677248, 6)
    
    获取某个元素在数组中出现的次数:
    2
    
    将可迭代对象的元素序列附加到数组的末尾,合并两个序列:
    array('i', [0, 1, 1, 2, 3, 4, 5, 6, 7])
    
    将列表中的元素追加到数组后面,相当于for x in list: a.append(x):
    array('i', [0, 1, 1, 2, 3, 4, 5, 6, 7, 5, 6, 7])
    
    返回数组中1的最小下标:
    1
    
    在下标1(负值表示倒数)之前插入值0:
    array('i', [0, 0, 1, 1, 2, 3, 4, 5, 6, 7, 5, 6, 7])
    
    删除索引为4的项,并返回它:
    2
    array('i', [0, 0, 1, 1, 3, 4, 5, 6, 7, 5, 6, 7])
    
    删除第一次出现的元素3:
    array('i', [0, 0, 1, 1, 4, 5, 6, 7, 5, 6, 7])
    
    将数组arr中元素的顺序反转:
    array('i', [7, 6, 5, 7, 6, 5, 4, 1, 1, 0, 0])
    
    将数组arr转换为一个具有相同元素的列表:
    [7, 6, 5, 7, 6, 5, 4, 1, 1, 0, 0]

    所有数值类型的字符代码表:


    参考地址:

关键字