列表
当需要处理一组数据时,我们不可能用很多个变量去表示这些数据,这样处理起来很不方便,如
name1 = 'zhangsan'
name2 = 'lisi'
name3 = 'wangwu'
... ...
这意味着我们需要一种新的数据类型去处理一组数据,这就接下来所说的列表。
如果学过C
语言或者其他的话,那么会发现python
的列表与其他语言的数组很相似,但是有不同的地方。
那么如何声明一个列表,如下
names = ['zhangsan','lisi','wangwu']
上面names
就是一个列表类型,一个列表用方括号([]
)给括起来,但是与其他语言数组不同的是,列表中的数据类型可以是不同的,在其他语言中,如果数组是整数类型,那么只能放整数类型的数据,但是在python
的列表中,可以放不同类型的数据。
下面介绍有关列表的一些操作,其实一般的操作也就那四种:增、删、改、查。
返回目录
查
通过下面的语法去查询列表中的元素:
print(names[1])
上面的程序是打印出列表names
的第二个元素,同其他语言一样,列表也是从0
开始计数的。
从上面就知道了如何去查询列表中的元素了,那就是列表名[index]
。
返回目录
切片
下面我要介绍一个比较重要的概念,那就是切片,如果你学过MATLAB
的话,那么你将会理解的很轻松,没学过也没有关系。什么是切片,这个概念我讲不清楚,但是给你看看例子体会一下:
print(names[0:2])
上面程序的意思是打印出names[0]
和names[1]
。
names[0:2]
就是切片,它表示names[0]~names[2]
的内容,但是只包括左边,不包括右边,也就是说,包括names[0]
,不包括names[2]
。
切片的完整表示应该如下:
names[初始index:终止index:步进长度step]
需要注意的是,不包括names[终止index]
,如果步长省略的话,默认为1
。比如names[0:5:2]
的初始位置是0
,结束位置是5
,步长为2
,即每两个选一个,所以names[0:5:2]
表示names[0],names[2],names[4]
。
比较需要注意的切片
names[0:] 表示从第一个取到最后一个,最后一个是可以取到的
names[0:-1] 表示从第一个取到倒数第一个(-1),倒数第一个是取不到的
names[-1::-1] 表示从倒数第一个开始,以-1(倒着数)取到第一个,可以取到第一个
上面需要注意的是,如果终止位置缺省的话,就是什么都不写,如names[0:]
和names[-1::-1]
,表示一直取下去,取完为止,所以可以取到最后一个和第一个,而在起始位置或者终止位置的-1
表示倒数第一个,在步长位置的-1
表示以步长为1
倒着数。那么这些位置的-2,-3
想必自己可以意会。
返回目录
增
向列表中添加新的元素有两种方法,一个是ap