list和tuple区别:
相同:均为有序集合
异同:list可变,tuple一旦初始化则不可变
list
>>>L=['A','B','C','D'] #给列表赋值 >>>L ['A','B','C','D'] >>>L[0] 'A' >>>L[1] 'B' #根据索引下标输出值,下标索引从0开始 >>>L[-1] #下标-1,直接获取列表倒数第一个元素,倒数从-1开始 'D' >>>L.append('E') #append():在列表末尾添加元素 >>>L ['A','B','C','D','E'] >>>L.insert(5,'F') #insert(索引,待插入元素):指定元素插入的位置 >>>L ['A','B','C','D','E','F'] >>>L.pop(0) #pop():通过索引删除列表元素,并返回元素 'A' #返回删除的元素 >>>L ['B','C','D','E','F'] >>>del L[0] >>>L ['C','D','E','F'] #del通过索引删除元素,但与pop()区别的是不返回删除的元素 >>>L.remove('C') #remove():删除指定的元素,不是通过索引删除的 >>>L ['D','E','F'] >>>len(L) #len():获取列表L的长度 3 >>>L.append([1,2]) #append():列表中可以嵌套列表,也可以保存不同的数据类型 >>>L ['D','E','F',[1,2]] >>>L[3][0] #获取列表中嵌套列表的值可以通过维数取得,此处为二维 1 >>>L[0]='K' #想要替换对应索引的值,可以直接赋值覆盖
>>>L
['K','E','F',[1,2]]
切片:
>>> L ['K', 'E', 'F', [1, 2]] >>> L[0:3] #利用切片取得子列表[起始索引(0开始):结束索引(不包含):间隔],从0开始到3结束,但不包含索引3,默认间隔为0 ['K', 'E', 'F'] >>> L[:] #取全部 ['K', 'E', 'F', [1, 2]] >>> L[:2] #从索引0开始到2,不包含2 ['K', 'E'] >>> L[:1:2] #从索引0开始到1,不包含1,每间隔一个数取 ['K'] >>> L[-1:] #倒数切片[结束索引:开始索引(默认-1)],从索引-1开始到-1 [[1, 2]] >>> L[-2:] #从索引-2到-1 ['F', [1, 2]] >>> '123456'[:3] #可用字符串切片取得所需列表 '123'
tuple
>>>t=('a',1,3,'g')
>>>t
('a',1,3,'g')
>>>t[0]='k'
Traceback (most recent call last):
File "<pyshell#65>", line 1, in <module>
t[0]='k'
TypeError: 'tuple' object does not support item assignment #tuple元组不能改变元组元素,不能覆盖