python的对象数组_Python当中的array数组对象实例详解
计算机为数组分配一段连续的内存,从而支持对数组随机访问;
由于项的地址在编号上是连续的,数组某一项的地址可以通过将两个值相加得出,即将数组的基本地址和项的偏移地址相加。
数组的基本地址就是数组的第一项的机器地址。一个项的偏移地址就等于它的索引乘以数组的一个项所需要的内存单元数目的一个常量表示(在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数组对象实例详解
本文地址: http://www.cppcns.com/jiaoben/python/262016.html
python的对象数组_Python当中的array数组对象实例详解相关推荐
- python控制nao机器人_python控制nao机器人身体动作实例详解
本文实例为大家分享了python控制nao机器人身体动作的具体代码,供大家参考,具体内容如下 今天读的代码,顺便写了出来,与文档的对比,差不多. import sys import motion im ...
- python画椭圆-python opencv圆、椭圆与任意多边形的绘制实例详解
圆形的绘制 : OpenCV中使用circle(img,center,radius,color,thickness=None,lineType=None,shift=None)函数来绘制圆形 impo ...
- python字库转文字图片_对Python生成汉字字库文字,以及转换为文字图片的实例详解...
对Python生成汉字字库文字,以及转换为文字图片的实例详解 发布时间:2020-10-05 17:20:03
- python类是实例的工厂_Python设计模式之工厂方法模式实例详解
本文实例讲述了Python设计模式之工厂方法模式.分享给大家供大家参考,具体如下: 工厂方法模式(Factory Method Pattern):定义一个用于创建对象的接口,让子类决定实例化哪一个类, ...
- python教程三角函数_Python入门之三角函数tan()函数实例详解
描述 tan() 返回x弧度的正弦值. 语法 以下是 tan() 方法的语法: import math math.tan(x) 注意:tan()是不能直接访问的,需要导入 math 模块,然后通过 m ...
- python算术运算符详解_Python中关于算术运算符的实例详解
这篇文章主要介绍了Python算术运算符实例详解的相关资料,需要的朋友可以参考下 Python算术运算符 以下假设变量a为10,变量b为20: 运算符 描述 实例 + 加 - 两个对象相加 a + b ...
- python format函数实例_python中强大的format函数实例详解
python中format函数用于字符串的格式化 自python2.6开始,新增了一种格式化字符串的函数str.format(),此函数可以快速处理各种字符串. 语法 它通过{}和:来代替%. 请看下 ...
- python生成二维码_python生成二维码的实例详解
python生成二维码的实例详解 版本相关 操作系统:Mac OS X EI Caption Python版本:2.7 IDE:Sublime Text 3 依赖库 Python生成二维码需要的依赖库 ...
- 用python编写nao机器人舞蹈_python控制nao机器人身体动作实例详解
python控制nao机器人身体动作实例详解 发布时间:2020-10-23 09:18:22 来源:脚本之家 阅读:89 本文实例为大家分享了python控制nao机器人身体动作的具体代码,供大家参 ...
最新文章
- asp.net中显示DataGrid控件列序号的几种方法
- 每日一笑 | 终于知道为什么胖了之后气质会垮了
- Android笔记 消息机制handler+http之 网络图片浏览器demo
- 后端-SpringBoot MySql 连接语句
- 使用批处理文件删除所有子文件夹?
- 随机分组c语言,用C/C++进行随机分组的实现教程,分组教程
- Windows 7 插件KB4474419安装 Symantec Endpoint Protection 只能安装在具有SHA-2代码签名支持更新(KB4474419)的系统上
- dah计算机原理,计算机原理
- 30岁学习编程晚么?
- 工控安全之系统加固篇
- 条形码的正确使用方法和技巧
- 分布式高可用高并发物联网(车联网-JT808协议)平台架构方案
- LCD1602显示总结
- 日文输入常见问题解决
- 机器学习损失函数 / 激活函数 / 优化算法 总览
- 计算机音乐花之舞谱,花之舞钢琴谱
- 计算机一指弹360安全中心,360安全中心-360系统急救箱 _360安全中心
- 黄永刚单晶塑性知识点汇总
- 防火墙 | ARP欺骗攻击
- virtuoso根据原理图绘制版图并联接_版图绘制及VIRTUOSO的使用.ppt
热门文章
- FreePBX修改IP地址与web端口号
- 学python可以考什么证_不限专业年级!寒假学Python,收获高含金量证书+大厂实习offer!...
- 字符串逆序(数组倒序输出)
- Skywalking调用链监控系统 及 日志采集
- BI-LSTM,BILSTM-CRF,Lattice-LSTM基本原理以及在NER中的应用
- 什么是装箱(boxing)和拆箱(unboxing)?
- SpringBoot集成SwaggerUI
- windows10环境下QtCreator中出现skipping incompatible xxx when searching for xxx 问题解决办法
- LiguerUi 和EasyUI的区别
- 小习题:n进制转换为十进制