title: list和tuple
date: 2017年3月28日 18:55:33
categories: python
---python
查看數據類型的方法:app
help(類型):輸出該類型的全部方法,及其詳細的解釋。 dir(類型): 將類型的全部方法以列表的形式輸出。
list是python內置的一種列表。list是一種有序的集合,能夠隨時添加刪除修改其中的元素。code
例如用list存儲班級同窗的姓名:排序
>>>classname=["xiaoming","Michael","jeck"] >>>classname ["xiaoming","Michael","jeck"]
變量classname就是一個list,能夠用len()來得到list中有多少個元素。索引
>>>len(classname) 3
用索引來訪問list中的每個位置的元素,索引是從0開始:element
>>>classname[0] "xiaoming" >>>classname[1] "Michael" >>>classname[3] 超出範圍會報錯: IndexError:list index out of range
除了用正數索引外,還能夠用負數索引。rem
list[-1]:表示最後一個元素 list[-2]:表示倒數第二個元素
list是一個可變的序列表,因此能夠往list中追加元素。it
list.append:追加到尾部.class
>>>a = [1,2,3] >>>a.append(4) >>>a [1,2,3,4]
list.insert(index,element):追加到指定位置。變量
>>>a=[1,2,3,4,6] >>>a.insert(4,5) #4是列表中的位置6的位置,在他前面插入5 >>>a [1,2,3,4,5,6]
list.pop():刪除list末尾的元素。
>>>a=[1,2,3,4,5] >>>a.pop() >>>a [1,2,3,4]
list.pop(index):刪除指定位置的元素:
>>>a=[1,2,3,4,5] >>>a.pop(0) >>>a [2,3,4,5]
除此以外還有list.rmove(element):刪除指定的元素,若是有重複的則刪除左邊最近的。
>>>a = [1,2,3,4,5,1] >>>a.rmove(1) >>>a [2,3,4,5,1]
del list[index] :刪除指定位置的元素。
若是想要替換list中的某個元素。能夠直接賦值:
>>>a =[1,2,3,4,5] >>>a[4]=6 >>>a [1,2,3,4,6]
list.index(element) :返回index值。
list.count(element) : 返回重複元素的個數
list.clear():清空列表中元素。
del list :刪除整個列表。
a=[1,2,3] b=[4,5,6] a.exted(b) :將b中的元素加到a中。b中元素不變。 a=[1,2,3,4,5,6] b=[4,5,6]
a=[1,2,3,4] a.reverse() :反轉 a=[4,3,2,1] a=["a","c","b","d"] a.sort() :排序 a=["a","b","c","d"]
若是列表中既存在數字又存在字符,在python3中會報錯,因此數字須要用引號轉化成字符。
排列是按ASCII碼排列,依然是數字在前。
淺拷貝:
a=[1,2,3,4] b=a a=[1,2,3,4] b=[1,2,3,4] a.pop() #刪除最後一個元素 a=[1,2,3] b=[1,2,3] #b中的元素也會跟着改變
深拷貝:
copy()
a=[1,2,3,["a","b","c"]] b=a.copy() b=[1,2,3,["a","b","c"]] a.remove(1) a=[2,3,["a","b","c"]] b=[1,2,3,["a","b","c"] a[2][0]="A" a=[2,3,["A","b","c"]] b=[1,2,3,["A","b","c"]]
copy.deepcopy()
a=[1,2,3,4,["a","b"],5] b=copy.deepcopy(a) b=[1,2,3,4["a","b"],5] a.pop() #刪除最後一個元素 a=[1,2,3,4,["a","b"]] b=[1,2,3,4,["a","b"]] a[4][1]="A" a=[1,2,3,4,["A","b"]] b=[1,2,3,4,["a","b"]]
另外一種有序的列表叫元組,tuple和list很是類似,可是tuple一但初始化就不能再更改,好比:
>>>a = (1,2,3,4,5)
如今a就是一個tuple,他不能改變,因此沒有insert和append等方法。獲取元素的方法和list同樣。
若是要定義一個空的tuple能夠寫成:
>>>tuple=() >>>tuple ()
若是要定一個只有一個元素的tuple,能夠:
>>>tuple=(1,) >>>tuple (1,)
若是不加, 而只寫(1),這裏就會把括號當成運算來看。運算結果爲1.
>>>a=(1) >>>a 1
tuple的方法:count和index