“列表”是一个值,它包含多个字构成的序列。术语“列表值”指的是列表本身(它作为一个值,可以保存在变量中,或传递给函数,像所有其他值一样), 而不是指列表值之内的那些值。
列表值看起来像这样:['cat', 'bat', 'rat', 'elephant']。就像字符串值用引号来标记字符串的起止一样,列表用左方括号开始,右方括号结束, 即[ ]。列表中的值也称为“表项”。表项用逗号分隔(就是说,它们是“逗号分隔的”)。
一、用下标取得列表中的单个值
二、负数下标
三、利用切片取得子列表
四、用 len()取得列表的长度
五、用下标改变列表中的值
六、列表连接和列表复制
+操作符可以连接两个列表,得到一个新列表,就像它将两个字符串合并成一个新字符串一样。*操作符可以用于一个列表和一个整数,实现列表的复制。
七、用 del 语句从列表中删除值
del 语句将删除列表中下标处的值,表中被删除值后面的所有值,都将向前移动一个下标。
八、列表用于循环
九、in 和 not in 操作符
十、用 index()方法在列表中查找值
十一、用 append()方法在列表中添加值 (没有返回值)
十二、用 insert()方法在列表中添加值 (没有返回值)
十三、用 remove()方法从列表中删除值 (没有返回值)
十四、用 sort()方法将列表中的值排序 (没有返回值)
类似列表的类型:字符串和元组
字符串和列表实际上很相似, 只要你认为字符串是单个文本字符的列表。对列表的许多操作,也可以作用于字符 串:按下标取值、切片、用于 for 循环、用于 len(),以及用于 in 和 not in 操作符。
列表是“可变的”数据类型,它的值可以添加、删除或改变。但是,字符串是“不可变的”, 它不能被更改。尝试对字符串中的一个字符重新赋值,将导致 TypeError 错误。“改变”一个字符串的正确方式,是使用切片和连接。构造一个“新的”字符串,从老的字符串那里复制一些部分。
“元组”数据类型几乎与列表数据类型一样。首先,元组输入时用圆括号(),而不是用方括号[]。但元组与列表的主要区别还在于,元组像字符串一样,是不可变的。元组不能让它们的值被修改、添加或删除。可以用元组告诉所有读代码的人,不打算改变这个序列的值。如果需要一 个永远不会改变的值的序列,就使用元组。
如果元组中只有一个值,你可以在括号内该值的后面跟上一个逗号,表明这种 情况。否则,Python 将认为,你只是在一个普通括号内输入了一个值。
可以用 list()和 tuple()函数来转换类型