列表由一系列按特定顺序排列的元素组成。可以将任何东西加入列表中,其中的元素之间可以没有任何关系。
在Python中,用方括号([])表示列表,并用逗号分隔其中的元素。
>>> bicycles = ['trek','cannondale','redline','specialized']>>> print(bicycles)['trek', 'cannondale', 'redline', 'specialized']一. 访问列表元素
列表是有序集合,因此要访问列表的任意元素,只需将该**元素的位置(索引)**告诉Python即可。
# 索引从0而不是1开始>>> print(bicycles[0])trek元素再调用方法
>>> print(bicycles[0].title())Trek通过将索引指定为-1,可让Python返回最后一个列表元素:
>>> print(bicycles[-1].title())Specialized索引-2返回倒数第二个列表元素,索引-3返回倒数第三个列表元素,依此类推。
二. 使用列表中的各个值
可以像使用其他变量一样使用列表中的各个值
>>> message=f"my first bicycle was a {bicycles[-2].title()}">>> print(message)my first bicycle was a Redline三. 修改、添加和删除元素 1. 修改列表元素
要修改列表元素,可指定列表名和要修改的元素的索引,再指定该元素的新值。
motorcycles = ['honda', 'yamaha', 'suzuki']motorcycles[0] = 'ducati'print(motorcycles)# ['ducati', 'yamaha', 'suzuki'] 2. 在列表中添加元素在列表末尾添加元素 在列表中添加新元素时,最简单的方式是将元素附加(append)到列表。
motorcycles = ['honda', 'yamaha', 'suzuki']motorcycles.append('ducati')print(motorcycles)
在列表中插入元素 使用方法insert()可在列表的任何位置添加新元素。为此,你需要指定新元素的索引和值。
motorcycles = ['honda', 'yamaha', 'suzuki']motorcycles.insert(0, 'ducati')print(motorcycles)方法insert()在索引0处添加空间,并将值’ducati’存储到这个地方。这种操作将列表中既有的每个元素都右移一个位置.
方法insert()在索引0处添加空间,并将值’ducati’存储到这个地方。这种操作将列表中既有的每个元素都右移一个位置.
3. 从列表中删除元素
可以根据位置或值来删除列表中的元素。
使用del语句删除元素
motorcycles = ['honda', 'yamaha', 'suzuki']del motorcycles[0]print(motorcycles)# ['yamaha', 'suzuki']使用方法pop()删除元素
假设列表中的摩托车是按购买时间存储的,就可使用方法pop()打印一条消息,指出最后购买的是哪款摩托车:
motorcycles = ['honda', 'yamaha', 'suzuki']last_owned = motorcycles.pop()print(f"The last motorcycle I owned was a {last_owned.title()}.")弹出列表中任何位置处的元素 可以使用pop()来删除列表中任意位置的元素,只需在圆括号中指定要删除元素的索引即可。
motorcycles = ['honda', 'yamaha', 'suzuki']first_owned = motorcycles.pop(0)print(f"The first motorcycle I owned was a {first_owned.title()}.")根据值删除元素
motorcycles = ['honda', 'yamaha', 'suzuki', 'ducati']motorcycles.remove('ducati')print(motorcycles)四.组织列表 1. sort()对列表永久排序 cars = ['bmw', 'audi', 'toyota', 'subaru']cars.sort()print(cars)cars = ['bmw', 'audi', 'toyota', 'subaru']cars.sort(reverse=True)print(cars)
2. sorted()对列表临时排序 cars = ['bmw', 'audi', 'toyota', 'subaru']print("\nHere is the sorted list:")print(sorted(cars))print("\nHere is the original list again:")print(cars)
如果要按与字母顺序相反的顺序显示列表,也可向函数sorted()传递参数reverse=True。
3. 倒着打印列表
要反转列表元素的排列顺序,可使用方法reverse()。 reverse()不是按与字母顺序相反的顺序排列列表元素,而只是反转列表元素的排列顺序:
cars = ['bmw', 'audi', 'toyota', 'subaru']print(cars)cars.reverse()print(cars)#['bmw', 'audi', 'toyota', 'subaru']#['subaru', 'toyota', 'audi', 'bmw']4. 确定列表的长度 >>> cars = ['bmw', 'audi', 'toyota', 'subaru']>>> len(cars)4
参考:《Python编程:从入门到实践(第二版)》