吉吉于

free

【Python】array.array

最近折腾numpy,又想起了array 数组,在python里以前常用list,array倒是没用过。

今天了解了一下区别,特此记录。

array文档:

http://docs.python.org/2/library/array.html

关于array:

Python 本身没有数组这个说法, 有的就是list和tuple, list就具有其他语言中的数组特性.

至于list和tuple的区别,在于list可以在运行时修改内容和大小,tuple在首次创建和赋值后, 不可以再次修改内部的内容

不过python 有提供一个array模块,用于提供基本数字,字符类型的数组.用于容纳字符号,整型,浮点等基本类型.

这种模块主要用于二进制上的缓冲区,流的操作

比如说修改MP3的ID3V1标签,就可以用到array

声明:

Screen Shot 2013 10 30 at 下午3 05 35

以下是array支持的初始化类型

Type code C Type Python Type Minimum size in bytes
'c' char character 1
'b' signed char int 1
'B' unsigned char int 1
'u' Py_UNICODE Unicode character 2 (see note)
'h' signed short int 2
'H' unsigned short int 2
'i' signed int int 2
'I' unsigned int long 2
'l' signed long int 4
'L' unsigned long long 4
'f' float float 4
'd' double float 8

 

使用demo:

创建一个interger类型的数组

myarr = array(“l”)  <——–创建数组

myarr.append(3)   <——–追加元素

myarr.append(1)

myarr.append(8)

删除最后一个

myarr.pop()

删除第一个指定的X

myarr.remove(x)

取数组的值,通过下标

num1 = myarr[0]   <———–第一个值

指定位置,插入值

myarr.insert(6,10)

6表示下标,10表示要插入的值

数组反序

myarr.reverse()

====================

下一节再写list和array内存分配的区别

转载请注明:于哲的博客 » 【Python】array.array