Python 列表的基本操作、方法、解析
1. 列表的基本操作
列表是可变对象,可以修改的。
1.1 元素赋值(改变列表)
改变列表只需使用普通赋值语句即可,但不能直接用列表名赋值;而是使用索引来标记某个特定的,位置明确的元素赋值。
例子1:
从上面的例子可以看出,对列表赋值会改变列表原来中的值。
1.2 删除元素
删除元素使用 del 的方法实现。
删除列表中某个元素是不能直接删除元素的,而是通过元素中的索引号来进行的。
删除某元素后,原来的列表长度也会自动更新。
例子2:
1.3 分片赋值
分片是一个非常强大的特性,分片赋值操作则更显它的强大。
分片可以一次为多个元素赋值。
分片赋值语句可在不需要替换任何原有元素的情况下插入新元素。
例子3:
2. 列表方法
方法是作用于 Python 中特定类型对象的函数,每个对象都有自己的方法,这些方只能作用于本身对象,不能作用于其他对象。
2.1 append
append 方法是在列表中新增一些元素,增加后,列表的长度加 1。
例子4:
2.2 count
count 用于统计某个元素在列表中出现的次数。
例子5:
2.3 extend
extend 方法可在列表末尾一次性追加另一个序列中的多个值(可利用新序列扩展原有的序列)。
extend 方法修改了被扩展的序列,而连接操作则会返回一个新的列表。
例子 6:
2.4 index
index 方法是返回查找对象的索引位置,若没有这些对象就会抛出异常。
当搜索对象不存在是就会报错,抛出异常。
例子7:
2.5 insert
insert 用于把对象元素插入到指定的列表位置,列表也会增加多一个对象。
例子8:
2.6 pop
pop 方法会移除一个元素(默认最后一个元素),并且返回该元素的值。
也可用 pop 方法选择一个对象元素移除。
例子9:
2.7 remove
remove 方法用于移除来列表中某个值的第一个匹配项。
remove 移除了元素后,列表中的元素的位置都向前移了一步;remove 是个没有返回值的原位置改变方法。
例子10:
2.8 reverse
reverse 方法是将列表中的元素反向存放,该方法也是改变列表但无返回值。
例子11:
2.9 sort
sort 方法是对原列表进行排序,若指定参数,则按照参数的指定来比较函数;sort 方法用于在原位置对列表进行排序。在 “原位置排序” 意味着改变原来的列表,让列表中的元素按照一定的顺序排列,列表对象依然不变,而不是一个已排序的列表副本。
默认是从小到大进行排序,若想从大到小进行排序,修改 sort 中的 reverse 参数即可。
例子12:
2.10 split 与 join
当字符串 要用 split 是,需提供该方法的参数,若没有提供参数,就默认空格;也可应使用参数作为分隔符。
join 函数与 split 函数是相反的功能,split 函数将字符串分片,产色列表,join 函数以某种分割符作为主调对象,把列表中的字符连接起来。
例子 13:
3. 列表解析
列表解析是 Python 迭代机制的一种应用,常用于创建新的列表,表达形式如下所示:
[ expression for iter_val in iterable if cond_expr ]
列表解析也可用于字符串的应用,如要得到两个字符串的交集。
列表解析可创建一些可读性强、紧凑的代码,并且效率高。
例子14: