list和tuple


title: list和tuple
date: 2017年3月28日 18:55:33
categories: python
---python

查看數據類型的方法:app

help(類型):輸出該類型的全部方法,及其詳細的解釋。
dir(類型): 將類型的全部方法以列表的形式輸出。

list:列表[]

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:元組()

另外一種有序的列表叫元組,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

相關文章
相關標籤/搜索