列表适用于序列的操作,如索引、分片、连接和乘法等,本节介绍改变列表的方法。
基本的列表操作
1.元素赋值
使用索引标记为某个特定、位置明确的元素赋值,如x[1]=2,不能为一个位置不存在的元素进行赋值。
>>> x=[1,1,1]
>>> x[1]=2
>>> x
[1,2,1]
>>> x[3]=0
Traceback(most recent call last):
File "<pyshell#5>",line 1,in<module>
x[3]=0
IndexError:list assignment index out of range
>>>
2.删除元素
列表中删除元素用del 语句。
>>> num=[1,2,3,4,5]
>>> del num[2]
>>> num
[1,2,4,5]
>>>
3.分片赋值
list函数:根据字符串建立列表。
>>> list('wang')
['w','a','n','g']
>>>
join函数:将由字符串组成的列表转化为字符串。
>>> ''.join(['w','a','n','g'])
'wang'
>>>
- 分片替换插入元素
>>> name=list('wang')
>>> name
['w','a','n','g']
>>> name[2:]=list('ui')
>>> name
['w','a','u','i']
>>> name[2:]=list('cuihan')
>>> name
['w','a','c','u','i','h','a','n']
>>>
用序列[‘u’,’i’]替换等长原序列[‘n’,’g’]。还可以用于原序列不等长的序列将分片替换,用序列[‘c’,’u’,’i’,’h’,’a’,’n’]替换序列[‘n’,’g’] 。
- 分片不替换插入元素
>>> name=list('wa')
>>> name
['w','a']
>>> name[2:2]=list('ng')
>>> name
['w','a','n','g']
>>>
不替换任何元素,只是在索引号为2的元素前插入序列[‘n’,’g’]。
- 分片赋值删除元素
>>> num=[1,2,3,4,5]
>>> num[1:4]=[]
>>> num
[1,5]
>>> num=[1,2,3,4,5]
>>> del num[1:4]
>>> num
[1,5]
>>> num=[1,2,3,4,5]
>>> del num[1:4:2]
>>> num
[1,3,5]
>>> num=[1,2,3,4,5]
>>> del num[-1:0:-2]
>>> num
[1,2,4]
>>>