Python 基本資料結構

2021-07-03 11:27:15 字數 3874 閱讀 5699

列表是python裡的內建的型別之一,可以新增和刪除其中的元素。如>>>role = [['sam',33],['dean'],37]],可以列表中包含列表,同一列表中包含不同型別的資料。下面介紹列表的一些通用操作,關於list的其他用法,可以通過help(list)檢視。

>>>a = [2,13,12,41,17,23]

>>>a[1] #列表從0開始

13>>>a[-1] #索引為負,從列表末開始

23>>>a[2:4] #分片操作

[12,41]

>>>a[:3]

[2,13,12]

>>>a[1:6:2] #分片步進

[12,41,23]

>>>a[6::-2] #步進為負,從列表尾部開始取

[23,41,13]

>>>[2,11,3] + [12,31,4]

[2,11,3,12,31,4]

>>>[1,2] * 3

[1,2,1,2,1,2]

>>>num = [1,2,3,4]                #刪除單個元素

del num[2]

>>>num

[1,2,4]

>>>num = [1,2,3,4] #分片刪除

del num[2:]

>>>num

[1,2]

>>>name = list('python')

>>>name[1:] = list('erl') #可以替換原有的值

>>>name #也可以在原有列表中插入值

['p','e','r','l'] #也可以刪除元素(分片賦空值)

呃,關於方法和函式的區別,可以這麼說函式是通用的,大家都可以用,而方法是僅用於某一具體物件的函式。一般方法是這麼呼叫的物件.方法(引數)

>>>num = [1,2,3]             #追加元素至末尾

>>>num

[1,2,3,4]

>>>[3,[1,41],1,2,3,1].count(1)

2#復合列表統計出現次數,只算最外面一層

>>>a = [1,2,3]               #追加多個值至末尾

>>>b = [4,5,6]

>>>a.extend(b)

>>>a

[1,2,3,4,5,6]

>>>a = [1,2,3,2,4]

>>>a.index(2) #l.insert(value,[start,[stop]])

1#返回某個值的第乙個匹配項的索引

>>>a = [1,2,4]

>>>a.insert(2,3) #l.insert(index,object)

>>>a #在列表任何位置插入元素,且插入索引(index)前

[1,2,3,4]

>>>a = [1,2,3]           #l.pop(index)  預設是最後乙個元素

>>>a.pop() #與新增插入操作相反

>>>a = [1,2,3,2,11]       #移除列表中的第乙個匹配項

>>>a.remove(2)

>>>a

[1,3,2,11]

>>>a = [1,2,3]

>>>a.reverse()

>>>a

[3,2,1]

>>>a = [5,1,2,6,8]

>>>a.sort()

>>>a

[1,2,5,6,8]

以上的這些操作,有的並不會改變原列表的值,如連線操作(a + b),乘法([1,2] * 3)。

元組(tuple)與列表一樣也是一種序列,兩者形式上的差別僅僅是列表為[1,2,3],而元組為(1,2,3)。實際使用中,元組也僅僅比列表多了不可更改的特性。

對於元組的基本操作,與前面提到的幾種列表的操作完全一樣(除了會改變元素的操作)。

>>>(1,2,3)              #建立元組

(1,2,3)

>>>a = 1, #建立單個元素的元組,只需在末尾加上逗號即可

>>>type(a)

(type

'tuple')

這是一種通過名字(鍵,key)來尋找值的資料結構。類似於字典的構造,通過字的拼音首字母來尋找對於的一類字。

注意

>>>d = 

>>>d['a'] #整個字典由大括號包起來,字典由鍵與其對應的值組成

('about','at') #鍵-值間用冒號隔開,單個鍵可以對於多個值

d[k]            #返回關聯到鍵k上的值

d[k] = v #將值v關聯到鍵k上

del d[k] #刪除鍵為k的項

k in d #檢查字典中是否有鍵為k的項

>>>d = 

>>>d.clear() #用於清空整個字典

>>>d

{}

>>>d = 

>>>y = d.copy()

>>>y

#這裡要注意

>>>y['a'] = ['abandon]

>>>y['b'].remove('but')

>>>y

#替換副本的值並不會影響原來的字典

>>>x #但是修改某個值,原始字典的值也會改變

>>>

>>>d.items() #以列表的形式返回字典的《鍵,值》對

[('a',['about','at']),('b',['but','blue')]

>>>

>>>y = a.iteritems() #與items的作用差不多,只不過返回的是乙個迭代器

>>>y

object at 0x0000000002758f48>

>>>list(y)

[('a',['about','at']),('b',['but','blue')]

與這兩個作用類似的還有,keys和iterkeys,values和itervalues。

本作品採用知識共享署名-非商業性使用-相同方式共享 3.0 中國大陸許可協議進行許可。

python 基本資料結構

1.切片 sname start?step sname 為序列名稱 start 不指定 預設為0 包含 end 不包含 step 不指定 預設為1 2.序列可以通過 相加 song1 a,b song2 c,d print song1 song2 3.序列相乘 song1 a print song1...

Python基本資料結構 列表

有序的集合 通過偏移來索引,從而讀取資料 支援巢狀 可變的型別 舉例說明 a 1,2,3,4,5,6,7 正向索引 a 0 4 1 1,2,3,4 反向索引 a 1 4 1 7,6,5 預設索引 a 1 2,3,4,5,6,7 列表的拷貝 傳值 b a 生成乙個新的列表。c a b extend 接...

Python入門 基本資料結構

python裡面的資料結構,基本的有下面幾種,列表,集合,元組,對於不同的資料結構當然有不同的表現形式,操作方法了,先來看看各種資料結構的表示方式 列表 1,2,3,4,5,6 元組 1,2,3,4,5,6 集合 字典 列表 列表的特點是,它是乙個可變的集合,不僅僅是結構可變,裡面還可以放型別不一樣...