Python(列表)
在Python中,用方括号([ ])来表示列表,并用逗号来分割其中的元素。下面是一个简单的列表示例,这个列表包含几种自行车:
bicycles.py
bicycles = ['trek','cannondale','redline','specialized']
print(bicycles) # ['trek','cannondale','redline','specialized']
列表元素的访问:
列表是有序集合,因此要访问列表的任何元素,只需将该元素的位置或索引告诉Python即可。要访问列表元素,可指出列表的名称,再指出元素的索引,并将其放在方括号内。
例如:
bicycles = ['trek','cannondale','redline','specialized']
print(bicycles[0]) # trek
也可对任意列表元素调用字符串方法:
bicycles = ['trek','cannondale','redline','specialized']
print(bicycles[0].title()) # Trek
注:索引从0而不是1开始
例:
bicycles = ['trek','cannondale','redline','specialized']
print(bicycles[1]) # cannondale
print(bicycles[3]) # specialized
Python为访问最后一个列表元素提供了一种特殊语法。通过将索引指定为-1,可让Python返回最后一个列表元素:
bicycles = ['trek','cannondale','redline','specialized']
print(bicycles[-1]) # specialized
这些代码返回‘specialized’。这种语法很有用,因为你经常需要在不知道列表长度的情况下访问最后的元素。这种约定也适用于其他负数索引,例如,索引-2返回倒数第二个列表元素,索引-3返回倒数第三个列表元素,以此类推。
修改、添加和删除元素
修改
motorcycle.py
motorcycles = ['honda','yamaha','suzuki']
print(motorcycles) # ['honda','yamaha','suzuki']
motorcycles[0] = 'ducati'
print(motorcycles) # ['ducati','yamaha','suzuki']
注:可以修改任何列表元素的值,而不仅仅是第一个元素的值
添加
1、在列表末尾添加元素
motorcycles = ['honda','yamaha','suzuki']
print(motorcycles) # ['honda','yamaha','suzuki']
motorcycles.append('ducati')
print(motorcycles) # ['honda','yamaha','suzuki','ducati']
方法append()将元素‘ducati’添加到了列表元素末尾,而不影响列表中的其他所有元素
方法append()让动态地创建列表易如反掌,例如,你可以先创建一个空列表,再使用一系列的append()语句添加元素。下面来创建一个空列表,再在其中添加元素‘honda’,'yamaha'和'suzuki':
motorcycles = []
motorcycles.append('honda')
motorcycles.append('yamaha')
motorcycles.append('suzuki')
print(motorcycles) # ['honda','yamaha','suzuki']
2、在列表中插入元素
使用方法insert()可在列表的任何位置添加新元素。为此,你需要指定新元素的索引和值。
motorcycles = ['honda','yamaha','suzuki']
motorcycles.insert(0,'ducati')
print(motorcycles) # ['ducati','honda','yamaha','suzuki']
3、extend() 将一个列表中每个元素分别添加到另一个列表中,只接受一个参数;extend()相当于是将list B 连接到list A上。
list1 = ['a', 'b', 'c']
list1.extend('d')
print(list1) # ['a', 'b', 'c', 'd']
4、+ 加号,将两个list相加,会返回到一个新的list对象,注意与前三种的区别。前面三种方法(append, extend, insert)可对列表增加元素的操作,他们没有返回值,是直接修改了原数据对象。
list1 = ['a', 'x', 'b', 'c', 'd']
list2 = ['y','z']
list3 = list1 + list2
print(list3) # ['a', 'x', 'b', 'c', 'd', 'y', 'z']
注意:将两个list相加,需要创建新的list对象,从而需要消耗额外的内存,特别是当list较大时,尽量不要使用“+”来添加list,而应该尽可能使用List的append()方法。
从列表中删除元素
1、使用del语句删除元素
如果知道要删除的元素在列表中的位置,可以使用del语句。
motorcycles = ['honda','yamaha','suzuki']
print(motorcycles) # ['honda','yamaha','suzuki']
del motorcycles[0]
print(motorcycles) # ['yamaha','suzuki']
使用del可删除任何位置处的列表元素,条件是知道其索引。
2、使用方法pop()删除元素(删除列表末尾的元素)
motorcycles = ['honda','yamaha','suzuki']
print(motorcycles) # ['honda','yamaha','suzuki']
poped_motorcucles = motorcycles.pop()
print(motorcycles) # ['honda','yamaha']
print(poped_motorcucles) # suzuki
3、弹出列表中任何位置处的元素
实际上,你可以使用pop()来删除列表中任何位置的元素,只需在括号中指定要删除的元素的索引即可。
motorcycles = ['honda','yamaha','suzuki']
first_owned = motorcycles.pop(0)
print(first_owned) # honda
print(motorcycles) # ['yamaha','suzuki']

浙公网安备 33010602011771号