列表: 列表由一系列按特定顺序排列的元素组成。你可以创建包涵字母表中所有字母、数字0~9或所有家庭成员姓名的列表;也可以将任何东西加入列表中,其中的元素之间可以没有任何关系。
列表
在Python中,用方括号([ ])来表示列表,并用逗号来分割其中的元素。
如:
bicycles=['trek','cannondale','redline','spcialized']
访问控制列表:
列表是有序集合,因此要访问列表的任何元素,只需要将该元素的位置或索引告诉Python即可。 要访问列表元素,可指出列表的名称,再指出元素的索引,并将其放在方括号内。
如:
bicycles=['trek','cannondale','redline','specialized'] print(bicycles[0])
索引从 0 而不是1开始。 将索引指定为-1,可让Python返回最后一个列表元素; 以此类推,索引-2返回倒数第二个列表元素,索引-3返回倒数第三个列表元素。
修改列表元素
修改列表元素的语法于访问列表元素的语法类似。要修改列表元素,可指定列表名和要修改的元素的索引,再指定该元素的新值。
如:
motorcycles=['honda','yamaha','suzuki'] motorcycles[0]='ducati'
在列表中添加元素
在列表中添加新元素时,最简单的方式是将元素附加到列表末尾。
方法append()将元素添加到列表末尾。
如:
motorcycles=['honda','yamaha','suzuki'] motorcycles.append('ducati')
方法insert( )可在列表的任何位置添加新元素。
如:
motorcycles=['honda','yamaha','suzuki'] motorcycles.insert(2,'ducati')
从列表中删除元素
如果知道要删除的元素在列表中的位置,可使用 del 语句。
如:
guests=['wang','zhang','chen','meng'] del guests[1]
方法pop( ) 可删除列表末尾的元素,并让你能够接着使用它。术语弹出(pop)源自这样的类比:列表就像一个栈,而删除列表末尾的元素相当于弹出栈顶元素。
如:
motorcycles=['honda','yamaha','suzuki'] popped_motorcycles=motorcycles.pop() print(popped_motorcycles)
pop( )可以用来删除列表中任何位置的元素,只需在括号中指定要删除的元素索引即可。
PS:如果你要从列表中删除一个元素,切不再以任何方式使用它,就使用del语句;如果你要在删除元素后还能继续使用它,就使用方法pop( )。
如果你只知道要删除的元素的值,可使用方法remove()。
如:
motorcycles=['honda','yamaha','suzuki'] motorcycles.remove('yamaha')
使用remove( )从列表中删除元素时,也可接着使用它的值,但是需要提前将值存到变量中。
如:
motorcycles=['honda','yamaha','suzuki'] too_expensive='yamaha' motorcycles.remove(too_expensive)
PS:方法remove( ) 只删除第一个指定的值。如果要删除的值可能在列表中出现多次,就需要使用循环来判断是否删除了所有这样的值。
对列表进行永久排序
Python方法sort()能够较为轻松地对列表进行排序。 这种排序方式是永久性地修改了列表元素的排列顺序,再也无法恢复到原来的排列顺序。
如:
cars=['bmw','audi','toyota','subaru'] cars.sort()
也可以进行与字母相顺序反的顺序排列列表元素,为此,只需向sort()方法传递参数reverse=True。
如:
cars=['bmw','audi','toyota','subaru'] cars.sort(reverse=True)
对列表进行临时排序
要保留列表元素原来的排列顺序,同时以特定的顺序呈现它们,可使用函数sorted()。
如:
cars=['bmw','audi','toyota','subaru'] print(cars) print('Here is the original list:') print(sorted(cars))
如果要按与字母顺序相反的顺序显示列表,也可向函数sorted()传递函数reverse=True
如:
cars=['bmw','audi','toyota','subaru'] print(sorted(cars,reverse=True))
倒着打印列表
要反转列表元素的排列顺序,可以使用方法reverse()。 注意:reverse()不是指按与字母相反的顺序排列元素,而只是反转列表元素的排列顺序。
如:
cars=['bmw','audi','toyota','subaru'] cars.reverse()
方法reverse()永久性地修改列表元素的排列顺序,但可随时恢复到原来的排列顺序,为此,只需对列表再次调用reverse()即可。
确定列表长度
使用函数len()可快速获悉列表的长度。
如:
cars=['bmw','audi','toyota','subaru'] print(len(cars))
Python计算列表元素数时从1开始,因此确定列表长度时,不会遇到差一错误。