[TOC]
列表由一系列按特定顺序排列的元素组成.你可以创建包含字母表中所有字母,数字0~9或者所有家庭成员姓名的列表;也可以将任何东西加入列表中,其中的元素可以没有任何关系.
*在Python中,用方括号([])来表示列表,并用逗号分隔其中的元素.
访问列表元素
列表是有序集合,因此要访问列表中的任何元素,只需将该元素的位置或者索引告诉Python即可.要访问列表元素,可指出列表的名称,在指出元素的索引,并将其放在方括号内
>>> bicycles = ['trek','cannondale','redline','specialized']
>>> print(bicycles[0].title())
Trek
索引
在Python中,第一个列表元素的索引是0,而不是1.
Python中为访问最后一个列表元素提供了一种特殊语法.通过将索引指定为-1,可让Python返回最后一个列表元素(-2,返回倒数第二个,以此类推):
>>> bicycles = ['trek','cannondale','redline','specialized']
>>> print(bicycles[-1].title())
Specialized
修改、添加和删除元素
修改列表元素
利用索引值将要修改的赋值
添加元素
1.末尾添加(append()方法)
>>> bicycles
['trek', 'cannondale', 'redline', 'specialized']
>>> bicycles.append('suzuki')
>>> bicycles
['trek', 'cannondale', 'redline', 'specialized', 'suzuki']
插入元素(insert())
使用方法insert()可在列表的任何位置添加新元素.为此,你需要指定新的索引和值.
motorcycles = ['honda','yamaba','suzuki']
motorcycles.insert(0,'ducati')
print(motorcycles)
输出结果:
['ducati',honda','yamaba','suzuki']
删除元素
1.使用del语句:知道要删除的元素在列表中的位置,即索引值
motorcycles = ['honda','yamaba','suzuki']
del motorcycles[0]
print(motorcycles)
输出结果:
[yamaba','suzuki']
2.使用pop():删除列表末尾的元素
方法pop()可删除列表末尾的元素,并能够接着使用它.实际上,在括号中指定要删除的元素可加上索引.
motorcycles = ['honda','yamaba','suzuki']
popped_motorcycles = motorcycles.pop()
print(motorcycles)
print(popped_motorcycles)
输出结果:
['honda', 'yamaha']
suzuki
3.根据值删除元素:不知道索引,知道要删除元素的值,使用remove()
组织列表(排序)
1.使用sort()对列表进行永久性排序
可以向方法传递参数reverse=True.列表将按字母顺序相反的顺序排列
cars = ['bmw','audi','toyota','subaru']
cars.sort(reverse=True)
print(cars)
2.使用函数sorted()对列表进行临时排序
调用函数sorted()后,列表元素排列顺序并没有真正改变.
cars = ['bmw','audi','toyota','subaru']
print(sorted(cars))
3.倒着打印列表(方法打点调用,函数传参使用)
反转列表元素的排列顺序,可使用方法reverse().
4.确定列表长度
使用函数len()可获悉列表长度.
避免索引错误
操作列表
1.用for循环来遍历列表
cars = ['bmw','audi','toyota','subaru']
for love_car in cars:
print(love_car)
2.避免缩进错误
Python通过使用缩进让代码更易读,根据缩进来判断代码行与前一个代码行的关系.
创建数值列表
1.使用函数range()
for value in range(1,5):
print(value)
*函数range()让Python从你指定的第一个值开始数,并在你指定的第二个值后停止,因此输出并不包括第二个值.<左闭右开>
2.使用函数rnage()创建数字列表
numbers = list(range(1,5))
print(numbers)
使用range()还可以指定步长.
numbers = list(range(1,10,2))
print(numbers)
3.对数字列表进行简单的统计计算
有几个专门用于处理数字列表的Python函数.最大值,最小值和总和
min(list_name)
max(list_name)
sum(list_name)
4.列表解析
列表解析将for循环和创建新元素的代码合并成一行,并自动添加新元素.
squares = [value**2 for value in range(1,11)]
print(squares)
输出:
[1,4,9,16,25,36,49,64,81,100]
当你觉得编写三四行代码繁复时,就应考虑列表解析.
5.切片(左开右闭)
list_names[value_start,value_end]value_ start和value_end可以为空,即切片列表首尾
6.for循环遍历切片
7.复制列表
利用切片:value_start和value_end都为空