上QQ阅读APP看书,第一时间看更新
2.11.2 插入元素
通过append方法,我们可以在list的队尾插入一个新的元素。
>>> work_days ['Mon', 'Tue', 'Wed', 'Thu', 'Fri'] >>> work_days.append('Sat') >>> work_days ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']
能不能一次插入多个元素呢?我们试试看。
>>> work_days = ['Mon', 'Tue', 'Wed', 'Thu', 'Fri'] >>> work_days.append('Sat', 'Sun') Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: append() takes exactly one argument (2 given)
从结果看是不行的,append方法只接受一个参数。
如果我们把想插入的元素放在一个list里面做append的操作呢?
>>> work_days.append(['Sat', 'Sun']) >>> work_days ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', ['Sat', 'Sun']]
语法上没有问题,只是结果是list作为一个子元素被整体插入,也不是我们所期望的。
如果想一次插入多个元素,我们不应该用append方法,而是应该用extend方法。
>>> numbers = [1, 2] >>> numbers [1, 2] >>> numbers.append(3) >>> numbers [1, 2, 3] >>> numbers.extend([4, 5, 6]) >>> numbers [1, 2, 3, 4, 5, 6]
如果想在队首或者队列的其他位置插入元素,我们需要用到insert方法,用这个方法的第一个参数指定待插入的位置。
>>> numbers = [10, 20, 30] >>> numbers [10, 20, 30] >>> numbers.insert(1, 15) >>> numbers [10, 15, 20, 30]