python的list算法不是通常的单项表,也不是通常的数组。
具体可以看这里:http://wiki.python.org/moin/TimeComplexity(卧槽)
创建并赋值
pythonlist = ['张三', '李四', '王五']
取值:python的list可以以倒数作为下标取值,如要去倒数第一个即pythonlist[-1] (长姿势了)
插入:pythonlist.insert(1, '张飞')
删除末尾:pythonlist.pop() (此处有队列的赶脚)
删除指定位置元素:pythonlist.pop(i)
list里面数据元素可以是不同的类型,如 pythonlist = ['张三',18,true] (动态语言就是不一样啊)
python中还有另一种有序数据集合叫元组tuple
tuple的特点是创建时就必须确定所有元素,创建完后就不能再被修改了(如插入删除修改等),但可以像list一样正常访问(如pythonlist[-1])。
tuple的创建方法:pythontuple = (1,"老王",false)
啰嗦一下,由于tuple的创建方式为(),因此如果只有一个元素的时候也要打上逗号(如pythontuple =(5,)),以免和数学上的()混淆产生歧义(没有逗号python解释器会默认将其看做数学上的括号)
pythontuple = (1,"老王",false,["小张",8])
如上所示,tuple中是可以放入list作为元素的,(是不是很爽),并且list元素可以正常执行修改操作,但tuple中指向list的地址是作为tuple元素固定的(想起了C++的一些内容。。),如此便一定程度上解决了tuple过于死板的问题。因此在可以的情况下应当尽量的使用tuple而不是list(更安全)
聒噪一句,对多维度的操作和其它语言一样(当然,IDL例外)。