Python当中的array数组对象实例详解


Posted in Python onJune 12, 2019

计算机为数组分配一段连续的内存,从而支持对数组随机访问;

由于项的地址在编号上是连续的,数组某一项的地址可以通过将两个值相加得出,即将数组的基本地址和项的偏移地址相加。
数组的基本地址就是数组的第一项的机器地址。一个项的偏移地址就等于它的索引乘以数组的一个项所需要的内存单元数目的一个常量表示(在python中,这个值总是1)

import array
#array模块是python中实现的一种高效的数组存储类型。它和list相似,但是所有的数组成员必须是同一种类型,在创建数组的时候,就确定了数组的类型
#array.array(typecode,[initializer]) --typecode:元素类型代码;initializer:初始化器,若数组为空,则省略初始化器
arr = array.array('i',[0,1,1,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获取元素1在数组中出现的次数:')
print(arr.count(1))
#array.extend(iterable) -- 对象方法:将可迭代对象的袁旭序列附加到数组的末尾,合并两个序列
print('\n将可迭代对象的元素序列附加到数据的末尾,合并两个序列:')
#注意:附加元素数值类型必须与调用对象的元素的数值类型一致
_list = [5,6,7]
arr.extend(_list)
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(1) --对象方法:在下表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删除第一次出现的元素5:')
arr.remove(5)
print(arr)
#array.reverse() --对象方法:反转数组中的元素值
print('\n将数组arr中元素的顺序反转:')
arr.reverse()
print(arr)
#array.tolist():将数组转换为具有相同元素的列表(list)
print('\n将数组arr转换为已给具有相同元素的列表:')
li = arr.tolist()
print(li)

输出结果:

D:\python\test0611\venv\Scripts\python.exe D:/python/test0611/test.py
array('i', [0, 1, 1, 3])
输出一条 包含所有可用类型代码的字符串:
bBuhHiIlLqQfd
 输出 用于创建数组的类型代码字符:
i
输出 数组的元素个数:
4
将一个新值附加到数组的末尾:
array('i', [0, 1, 1, 3, 4])
获取数组在存储器中的地址、元素的个数,以元组形式(地址、长度)返回:
(2325235347184, 5)
获取元素1在数组中出现的次数:
2
将可迭代对象的元素序列附加到数据的末尾,合并两个序列:
array('i', [0, 1, 1, 3, 4, 5, 6, 7])
将列表中的元素追加到数组后面,相当于for x in list:a.append(x):
array('i', [0, 1, 1, 3, 4, 5, 6, 7, 5, 6, 7])
返回数组中1的最小下标:
1
在下表1(负值表示倒数)之前插入值0:
array('i', [0, 0, 1, 1, 3, 4, 5, 6, 7, 5, 6, 7])
删除索引为4的项,并返回它:
3
array('i', [0, 0, 1, 1, 4, 5, 6, 7, 5, 6, 7])
删除第一次出现的元素5:
array('i', [0, 0, 1, 1, 4, 6, 7, 5, 6, 7])
将数组arr中元素的顺序反转:
array('i', [7, 6, 5, 7, 6, 4, 1, 1, 0, 0])
将数组arr转换为已给具有相同元素的列表:
[7, 6, 5, 7, 6, 4, 1, 1, 0, 0]
Process finished with exit code 0

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

Python当中的array数组对象实例详解

总结

以上所述是小编给大家介绍的Python当中的array数组对象 ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
Python中使用select模块实现非阻塞的IO
Feb 03 Python
介绍Python中内置的itertools模块
Apr 29 Python
python通过post提交数据的方法
May 06 Python
python简单读取大文件的方法
Jul 01 Python
python中join()方法介绍
Oct 11 Python
python PyAutoGUI 模拟鼠标键盘操作和截屏功能
Aug 04 Python
如何用Python来理一理红楼梦里的那些关系
Aug 14 Python
Python3进制之间的转换代码实例
Aug 24 Python
利用Python校准本地时间的方法教程
Oct 31 Python
Python 矩阵转置的几种方法小结
Dec 02 Python
python实现斗地主分牌洗牌
Jun 22 Python
Python importlib模块重载使用方法详解
Oct 13 Python
Django模型序列化返回自然主键值示例代码
Jun 12 #Python
pandas实现将dataframe满足某一条件的值选出
Jun 12 #Python
python 列表输出重复值以及对应的角标方法
Jun 11 #Python
使用python list 查找所有匹配元素的位置实例
Jun 11 #Python
python找出一个列表中相同元素的多个索引实例
Jun 11 #Python
三步实现Django Paginator分页的方法
Jun 11 #Python
python-tkinter之按钮的使用,开关方法
Jun 11 #Python
You might like
利用php_imagick实现复古效果的方法
2016/10/18 PHP
如何优雅的使用 laravel 的 validator验证方法
2018/11/11 PHP
可以将word转成html的js代码
2010/04/11 Javascript
纯js分页代码(简洁实用)
2013/11/05 Javascript
使用javascript为网页增加夜间模式
2014/01/26 Javascript
基于Phantomjs生成PDF的实现方法
2016/11/07 Javascript
图片懒加载插件实例分享(含解析)
2017/01/09 Javascript
利用transition实现文字上下抖动的效果
2017/01/21 Javascript
js实现横向拖拽导航条功能
2017/02/17 Javascript
nodejs构建本地web测试服务器 如何解决访问静态资源问题
2017/07/14 NodeJs
vue 设置路由的登录权限的方法
2018/07/03 Javascript
微信{"errcode":48001,"errmsg":"api unauthorized, hints: [ req_id: 1QoCla0699ns81 ]"}
2018/10/12 Javascript
微信小程序实现省市区三级地址选择
2020/06/21 Javascript
javascript实现前端成语点击验证
2020/06/24 Javascript
[01:04:39]OG vs Mineski 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/18 DOTA
Python内置函数bin() oct()等实现进制转换
2012/12/30 Python
《Python之禅》中对于Python编程过程中的一些建议
2015/04/03 Python
用Python代码来绘制彭罗斯点阵的教程
2015/04/03 Python
Python基础入门之seed()方法的使用
2015/05/15 Python
Python减少循环层次和缩进的技巧分析
2016/03/15 Python
Python与R语言的简要对比
2017/11/14 Python
python实现随机漫步算法
2018/08/27 Python
Python远程视频监控程序的实例代码
2019/05/05 Python
简单介绍django提供的加密算法
2019/12/18 Python
keras实现theano和tensorflow训练的模型相互转换
2020/06/19 Python
演讲比赛获奖感言
2014/02/02 职场文书
酒店采购员岗位职责
2014/03/14 职场文书
建筑院校毕业生求职信
2014/06/13 职场文书
党员学习党的群众路线思想汇报(5篇)
2014/09/10 职场文书
贷款承诺书
2015/01/20 职场文书
监考失职检讨书
2015/01/26 职场文书
水电工岗位职责
2015/02/14 职场文书
入党积极分子个人总结
2015/03/02 职场文书
2015年妇联工作总结范文
2015/04/22 职场文书
2015年幼师工作总结
2015/04/28 职场文书
采购部2015年度工作总结
2015/07/24 职场文书