python基础之列表

Posted 重案组之虎曹达华

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python基础之列表相关的知识,希望对你有一定的参考价值。

1.1 列表是什么

列表是由一系列按特定顺序排列的元素组成,鉴于列表通常包含多个元素,给列表指定一个复数的名称(如:names、citys)是个不错的习惯

1.1.1 访问列表

列表是有序集合,要访问列表元素,可指出列表的名称,再指出元素的索引,并将其放在方括号内

>>> citys = [beijing, shanghai,shenzhen‘,‘chongqing‘]
>>> print(citys[0])
beijing

1.1.2 列表索引从0开始而不是1

在Python中,第一个列表元素的索引为0,而不是1,即要访问列表的任何元素,都可将其位置减1,并将结果作为索引,如访问第三个元素,可用索引2

>>> print(citys[1])
shanghai
>>> print(citys[2])
shenzhen

python为访问最后一个列表元素提供一种特殊语法,通过将索引指定为-1,可返回列表中最后一个元素,这种约定也适用于其他负数索引,例如索引-2返回倒数第二个元素,

索引-3返回倒数第三个元素,以此类推

>>> print(citys[-1])
chongqing
>>> print(citys[-2])
shenzhen

1.2 修改、添加和删除元素

1.2.1修改列表元素

修改元素语法与访问元素语法类似,指定列表名和要修改的元素索引,再指定该元素的新值

>>> citys = [beijing, shanghai,shenzhen,chongqing]
>>> print(citys[0])
beijing
>>> citys[0] = "hangzhou"
>>> print(citys[0])
hangzhou
>>> print(citys)
[hangzhou, shanghai, shenzhen, chongqing]

1.2.2在列表中添加元素

1.在列表末尾添加元素 使用方法append()

>>> citys = [beijing, shanghai,shenzhen,chongqing]
>>> citys.append(guangzhou)
>>> print(citys)
[beijing, shanghai, shenzhen, chongqing, guangzhou]

2.在列表中插入元素 使用方法insert()可在列表任意位置添加新元素,因此需要指定新元素的索引和值

>>> citys = [beijing, shanghai,shenzhen,chongqing]
>>> citys.insert(1, guangzhou)
>>> print(citys)
[beijing, guangzhou, shanghai, shenzhen, chongqing]

1.2.3从列表中删除元素

1.如果知道将要删除的元素在列表中的位置,可使用del语句

>>> citys = [beijing, shanghai,shenzhen,chongqing]
>>> del citys[0]
>>> print(citys)
[shanghai, shenzhen, chongqing]

使用del可删除任意位置处的列表元素,条件是知道索引

2.有时候,你要将元素从列表中删除,并接着使用它的值,比如,飞机大战游戏中你将敌机击杀,将敌机从存活敌机列表中删除时,还要获取敌机的x、y轴坐标,以便在相应的位置

显示爆炸效果;或者web应用程序中将活跃用户删除,并将他加入到非活跃用户中

方法pop()可删除列表末尾的元素,并让你可以接着使用它,pop(弹出)源自于这样的类比:列表就像一个栈,而删除列表末尾的元素相当于弹出栈顶的元素(类似手枪弹夹或羽毛球筒)

>>> citys = [beijing, shanghai,shenzhen,chongqing]
>>> pop_city = citys.pop()
>>> print(pop_city)
chongqing
>>> print(citys)
[beijing, shanghai, shenzhen]
pop()也可以用来删除列表中任意位置的元素,只要在括号中指定要删除元素的索引即可
>>> index_pop =citys.pop(1)
>>> print(index_pop)
shanghai
>>> print(citys)
[beijing, shenzhen]

当不确定使用del还是pop()时, 有一个很简单的判断标准:如果你要从列表中删除一个元素并不再以任何方式使用它,就使用del语句;如果你要在删除元素后还能继续使用它,就使用pop()方法。

3.根据值删除元素

有时候你不知道要从列表中删除的值的所在位置。如果你知道要删除的元素的值,可使用remove()方法

使用remove()方法删除元素时,你也可以接着使用它的值,因为知道元素的值,可事先将元素的值赋值给变量,虽然元素已被删除,但它的值还存储在变量中
>>> citys = [beijing, shanghai,shenzhen,chongqing]
>>> rm_city = "beijing"
>>> citys.remove(rm_city)
>>> print(citys)
[shanghai, shenzhen, chongqing]

注意:remove()只删除第一个指定的值,如果要删除的值在列表中多次出现,就需要使用循环判断是否删除了所有这样的值

 

以上是关于python基础之列表的主要内容,如果未能解决你的问题,请参考以下文章

python 3 基础之各种推导式(列表字典集合)

python之基础篇——模块与包

13 个非常有用的 Python 代码片段

python基础之数据类型

python基础之序列类型的方法——列表&元组

python基础之列表