【转】python之模块array
>>> import array#定义了一种序列数据结构
>>> help(array)
#创建数组,相当于初始化一个数组,如:d={},k=[]等等
array(typecode [, initializer]) -- create a new array
#a=array.array('c'),决定着下面操作的是字符,并是单个字符
#a=array.array('i'),决定着下面操作的是整数
| Attributes:
|
| typecode -- the typecode character used to create the array
| itemsize -- the length in bytes of one array item
|
| Methods defined here:
| •append(...)
| append(x)
| #向array数组添加一个数值value
| Append new value x to the end of the array.
>>> a=array.array('i')#整数,b与i类似
>>> a.append(8)
>>> a.append(81)
>>> a
array('i', [8, 81])#构成list
>>> a=array.array('c')#单个字符
>>> a.append('g')
>>> a.append('g')
>>> a
array('c', 'gg')#单个字符连接
>>> a=array.array('u')#Unicode character,意味着下面将要输入的是unicode字符串.
>>> a.append(u'x')#不要漏掉u
>>> a.append(u'x')
>>> a
array('u', u'xx')
|
| •buffer_info(...)
| buffer_info() -> (address, length)#当前内存地址和数组长度
#返回一个元组(地址,长度),给出了当前的内存地址和用于存储数组内容的缓冲区的长度
>>> a.buffer_info()
(19225728, 7)
| Return a tuple (address, length) giving the current memory address and
| the length in items of the buffer used to hold array's contents
| The length should be multiplied by the itemsize attribute to calculate
| the buffer length in bytes.
|
| byteswap(...)
| byteswap()
|
| Byteswap all items of the array. If the items in the array are not 1, 2,
| 4, or 8 bytes in size, RuntimeError is raised.
|
| •count(...)
| count(x) #统计array数组中某个元素(x)的个数.
>>> a
array('i', [9, 2, 9, 4, 10, 10, 10])
>>> a.count(10)
3
>>> a.count(9)
2
| Return number of occurrences of x in the array.
|
| •extend(...)
| extend(array or iterable) #参数接受 数组和可迭代对象
>>> a
array('i', [9, 2, 9, 4, 10, 10, 10])
>>> a.extend([3,5])
>>> a
array('i', [9, 2, 9, 4, 10, 10, 10, 3, 5])
#如果添加整数会出现什么错误?
>>> a.extend(10)
Traceback (most recent call last):
File "<pyshell#131>", line 1, in <module>
a.extend(10)
TypeError: 'int' object is not iterable #int不是可迭代对象
| Append items to the end of the array.#在末尾添加数组或可迭代对象
|
| fromfile(...)
| fromfile(f, n)
|
| Read n objects from the file object f and append them to the end of the
| array. Also called as read.
|
| fromlist(...)
| fromlist(list)
|
| Append items to array from list.
|
| fromstring(...)
| fromstring(string)
|
| Appends items from the string, interpreting it as an array of machine
| values,as if it had been read from a file using the fromfile() method).
|
| fromunicode(...)
| fromunicode(ustr)
|
| Extends this array with data from the unicode string ustr.
| The array must be a type 'u' array; otherwise a ValueError
| is raised. Use array.fromstring(ustr.decode(...)) to
| append Unicode data to an array of some other type.
|
| index(...)
| index(x)
|
| Return index of first occurrence of x in the array.
|
| •insert(...)
| insert(i,x) #在i的位置插入一个新的item在array中
|
| Insert a new item x into the array before position i.
|
| •pop(...)
| pop([i])
>>> a=array.array('i')
>>> a.append(2)
>>> a.append(9)
>>> a.append(3)
>>> a
array('i', [2, 9, 3])
>>> a.pop()#默认删除索引为-1的元素,最后一个元素,如果传参数则按参数索引来删除元素.
3
>>> a
array('i', [2, 9])
| Return the i-th element and delete it from the array. i defaults to -1.
|
| read(...)
| fromfile(f, n)
|
| Read n objects from the file object f and append them to the end of the
| array. Also called as read.
|
| •remove(...)
| remove(x)#删除指定元素,x为需要删除的元素.
| Remove the first occurrence of x in the array.
|
| reverse(...)
| reverse()
|
| Reverse the order of the items in the array.
|
| tofile(...)
| tofile(f)
|
| Write all items (as machine values) to the file object f. Also called as
| write.
|
| •tolist(...)
| tolist() -> list
a=array('i', [9, 2, 9, 4, 10, 10, 10, 3, 5])
>>> a.list()
a.list()
AttributeError: 'array.array' object has no attribute 'list'#array.array没有list属性
>>> a.tolist()
[9, 2, 9, 4, 10, 10, 10, 3, 5]
| Convert array to an ordinary list with the same items.
|
| •tostring(...)
| tostring() -> string
array('i', [9, 2, 9, 4])
>>> a.tostring() #转化为string
'\t\x00\x00\x00\x02\x00\x00\x00\t\x00\x00\x00\x04\x00\x00\x00'
| •tounicode(...)
| tounicode() -> unicode #将unicode的array数组,转化为unicode string字符串。
>>> a=array.array('u')
>>> a.append(u'xiaodeng')
a.append(u'xiaodeng')
TypeError: array item must be unicode character
>>> a.append(u'x')
>>> a.append(u'i')
>>> a.tounicode()
u'xi'
|
| write(...)
| tofile(f)
|
| Write all items (as machine values) to the file object f. Also called as
| write.
|
| ----------------------------------------------------------------------
| Data descriptors defined here:
|
| itemsize
| the size, in bytes, of one array item
|
| typecode
| the typecode character used to create the array
|
| ----------------------------------------------------------------------
Type code C Type Minimum size in bytes#最小字节大小
'c' character (字符,单个字符) 1
'b' signed integer 1
'B' unsigned integer 1
'u' Unicode character 2
'h' signed integer 2
'H' unsigned integer 2
'i' signed integer 2
'I' unsigned integer 2
'l' signed integer 4
'L' unsigned integer 4
'f' floating point 4
'd' floating point 8
【转】python之模块array的更多相关文章
- python之模块array
>>> import array#定义了一种序列数据结构 >>> help(array) #创建数组,相当于初始化一个数组,如:d={},k=[]等等 array( ...
- python序列化模块json和pickle
序列化相关 1. json 应用场景: json模块主要用于处理json格式的数据,可以将json格式的数据转化为python的字典,便于python处理,同时也可以将python的字典或列表等对象转 ...
- Python常用模块之sys
Python常用模块之sys sys模块提供了一系列有关Python运行环境的变量和函数. 常见用法 sys.argv 可以用sys.argv获取当前正在执行的命令行参数的参数列表(list). 变量 ...
- python 各模块
01 关于本书 02 代码约定 03 关于例子 04 如何联系我们 1 核心模块 11 介绍 111 内建函数和异常 112 操作系统接口模块 113 类型支持模块 114 正则表达式 115 语言支 ...
- Python常用模块之json模块
常用模块: 一个Python文件就是一个模块 import xxx 1. 标准模块,Python自带的,如time/random 2. 第三方模块,如连接mysql,需要安装 3. 自己写的Pytho ...
- python 序列化模块之 json 和 pickle
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,支持不同程序之间的数据转换.但是只能转换简单的类型如:(列表.字典.字符串. ...
- (转)python collections模块详解
python collections模块详解 原文:http://www.cnblogs.com/dahu-daqing/p/7040490.html 1.模块简介 collections包含了一些特 ...
- 5.Python使用模块
1.模块的 作用 2.模块的含义 3.模块的 导入 因此模块能够划分系统命名空间,避免了不同文件的变量重名的问题. Python的模块使得独立的文件连接成了一个巨大 ...
- python multiprocessing模块
python multiprocessing模块 原文地址 multiprocessing multiprocessing支持子进程.通信和共享数据.执行不同形式的同步,提供了Process.Queu ...
随机推荐
- 【3D动画建模设计工具】Maxon Cinema 4D Studio for Mac 20.0
图标 Icon 软件介绍 Description Maxon Cinema 4D Studio R20 ,是由德国公司Maxon Computer一款适用于macOS系统的3D动画建模设计工具,是 ...
- nginx配置打印请求响应内容
#放在http{}里面 log_format kyh ' [$time_local] "$request" $status \n' 'req_header:"$req_h ...
- 运维监控-基于yum的方式部署Zabbix Server 4.0 版本
运维监控-基于yum的方式部署Zabbix Server 4.0 版本 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.如何选择zabbix版本 1>.打开zabbix官方 ...
- Zookeeper+Kafka完全分布式实战部署
Zookeeper+Kafka完全分布式实战部署 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 其实我之前部署过kafak和zookeeper的完全分布式,集群是可以正常使用没错, ...
- OS + Linux RedHat 7 / redhat 7 configuration
s redhat 7.2 tracker-store CPU消耗高的问题 http://www.cnblogs.com/exiahan/archive/2013/07/08/3177971.html ...
- 利用 JMetal 实现大规模聚类问题的研究(一)JMetal配置
研究多目标优化问题,往往需要做实验来对比效果,所以需要很多多目标方面的经典代码,比如NSGA-II, SPEA, MOEA,MOEA/D, 或者PSO等等. 想亲自实现这些代码,非常浪费时间,还有可能 ...
- ssm的架构及整合说明
SSM,即 SpringMVC.Spring 与 MyBatis 三个框架 它们在三层架构中所处的位置是不同的,即它们在三层架构中的功能各不相同,各司其职 SpringMVC:作为 View 层的实现 ...
- ubuntu主题收集
ubuntu主题收集 一些cmd常用命令: 任务栏底部,进入Dash并打开终端,命令最后一个是参数可选 ( Left | Bottom ) gsettings set com.canonical.Un ...
- ArcGis 制图——地图图框整饰的插件式实现(一)C#
如有插件定制需求或技术交流,欢迎联系QQ 975601416 写完了自己瞅了一眼都不想看,希望有需要的你能看懂. 先摆一张效果图: 下面进入主题,本篇先讲一下地图布局中的对象,正文中会对一些关键词用英 ...
- 细说tomcat之集群session共享方案
1. Tomcat Cluster官网:http://tomcat.apache.org/tomcat-7.0-doc/cluster-howto.htmlTomcat原生支持的集群方案,通过组播消息 ...