最近对python产生了兴趣,于是从网上下载了基本PYTHON的书和文档,开始了PYTHON的学习,发现PYTHON中的list对象的功能实在是非常强大,编程起来比其他的程序语言对列表的操作要方便的多。
在python中定义一个列表只需要如下语句
li = ["a","b","c","d"]
list有许多的函数可以用来进行对列表的操作,如extend,append,insert,remove,pop
如果要向列表中添加项目很方便,既可以单独添加一个项目,也可以添加整个列表li.append("f") 添加一个项目 a,b,c,d,f
li.extend(["f","g"]) 将另一个列表添加到列表末尾 a,b,c,d,f,g
还可以将项目添加到指定的位置
li.insert(2,"f") 将"f"添加到第二个位置 a,b,f,c,d,e
删除元素也可以通过函数进行
remove:删除元素
>>> li
['a', 'b', 'c']
>>> li.remove("a")
>>> li
['b', 'c']
可以直接将要删除的元素作为参数传递给函数,则会从列表中删除此元素
pop 是删除列表中的最后一个元素,并返回它的值
>>> li.pop()
'c'
python中的list和C语言中的数组一样,里边的元素都是从零开始计数的,同时在python中也可以采取同C语言获取数组元素同样的方法
来获取列表中的元素
li[0] "a"
如果指定的位置超出了索引的范围,则python会报错
li[10]
python会进行报错
Traceback (most recent call last):
File "<pyshell#2>", line 1, in <module>
li[10]
IndexError: list index out of range
在python中元素位置不仅可以是正数,还可以是负数,但元素位置是负数时代表从列表的末尾开始计算元素的位置
li a,b,c,d,e
如 li[-3] = li[5-3] = li[2] = c
但是获取列表中的最后一个元素时,应该写为li[-1]
python中的list最方便的地方也是最大的亮点在于对列表的截取,在C语言中如果要截取一个数组赋值给一个新数组,则程序员肯定要进行循环操作,而python中只需要一条指令就可以解决问题了
newli = li[0:3]
newli 的值为 ["a","b","c"]
只需要简单在中括号中指定起始位置和结束位置就可以截取列表了,但是有一点需要注意,返回的子列表包括起始位置的元素但是不包括结束位置的元素,也就是说指定的空间是前闭后开的,是不包含指定的结束位置的元素的。这一点在编程的时候很容易迷惑人,需要特别注意
当其实位置为空时代表0,当结束位置为空时代表列表中的最后一个元素
python中最方便的功能莫过于对列表的加法操作了,python中对列表重载了+,+=,×等操作符
>>> li1 = [1,2,"c"]
>>> li2 = [3,4,"a"]
>>> li1 += li2
>>> li1
[1, 2, 'c', 3, 4, 'a']
+操作符与列表的extend方法不同,extend方法是在原有列表的基础上添加新的列表中的元素,但是+操作符是将原有列表和添加的列表合并生成新的列表,所以+=的功能就等同于extend的功能。
本文仅仅对python中的列表对象进行了解释,以后随着对PYTHON学习的深入,还有其他博文与各位共享,希望各位不吝赐教