列表数据类型
“列表”是一个值,它包含多个字构成的序列。
“列表值”指的是列表本身,而不是指列表中的值。
列表中的值称为表项,表项用逗号隔开。
列表用左括号开始,右括号结束,即[]。
注意,[]是一个空列表,不包含任何值。
列表操作
下标取得列表的单个值
列表后面方括号内的整数被称为“下标”。
下标只能是整数,不能是浮点数。
列表中第一个值的下标是0,列表中第二个值的下标为1,以此类推。
负数下标
虽然下标从0开始先上增长,但是也可以用负整数作为下标。
整数-1指的是列表中最后一个下标,整数-2指的是列表中倒数第二个下标,以此类推。
切片取得列表的子列表
“切片”可以从列表中取得多个值,结果是一个新列表。
切片输入在一对方括号中,它有两个冒号分隔的整数:
第一个整数是切片开始处的下标。如果省略,默认值即0,表示切片起始于列表的开始,。
第二个整数是切片结束处的下标。如果省略,默认值即列表的长度,表示切片结束于列表的末尾。
注意:切片向上增长,直到第二个下标的值,但是不包括它。
切片求值为一个新的列表值。
len函数取得列表长度
len函数将返回传递给它的列表中的值的个数。
列表连接+
+操作符可以连接两个列表,得到一个新列表。
列表复制*
*操作符可以用于一个列表和一个整数,实现列表的复制。
del语句删除列表中的单个值
del语句将删除列表中下标处的值,表中被删除值后面的所有值,都先向前移动一个下标。
in和not in操作符
利用In和not in操作符,可以确定一个值是否在列表中。
in和not in 操作符用在表达式中,连接两个值:
- 一个要在列表中查找的值。
- 一个待查找的列表。
这些表达式将求值为布尔值。
列表方法
每个数据类型都有它自己的一组方法。
index方法在列表中查找值
index方法接受一个值,
如果该值存在于列表中,就返回它的下标。
如果该值不在列表中,Python就报ValueError。
append方法在列表末尾添加值
append方法接受一个值,将其添加在列表的末尾。
insert方法在列表中添加值
insert方法可以在列表中任意下标处插入一个值。
insert方法接受两个参数:
第一个参数是新值的下标。
第二个参数是要插入的新值。
remove方法从列表中删除值
remove方法接受一个值,将其从被调用的列表中删除。
如果该值在列表中出现多次,只有第一次出现的值会被删除。
注意,试图删除列表中不存在的值,将导致ValueError错误。
sort方法将列表中的值排序
- sort方法当场对列表排序。
- 不要对既有数字又有字符串值的列表排序,因为python不知道如何比较它们。
- sort方法对字符串排序时,使用ASCII字符顺序,而不是实际的字典顺序。
sort方法存在以下关键字参数:
关键字参数reverse=True时,sort方法执行逆序排序。
关键字参数key=str.lower,sort方法按照普通的字典顺序来排序。