python OrderedDict類(有序字典)

2021-10-13 21:31:06 字數 3932 閱讀 1431

建立有序字典

import collections

dic = collections.ordereddict(

)dic[

'k1']=

'v1'

dic[

'k2']=

'v2'

dic[

'k3']=

'v3'

print

(dic)

#輸出:ordereddict([('k1', 'v1'), ('k2', 'v2'), ('k3', 'v3')])

clear(清空有序字典)

'''

'''import collections

dic = collections.ordereddict(

)dic[

'k1']=

'v1'

dic[

'k2']=

'v2'

dic.clear(

)print

(dic)

#輸出:ordereddict()

copy(拷貝)

import collections

dic = collections.ordereddict(

)dic[

'k1']=

'v1'

dic[

'k2']=

'v2'

new_dic = dic.copy(

)print

(new_dic)

#輸出:ordereddict([('k1', 'v1'), ('k2', 'v2')])

fromkeys(指定乙個列表,把列表中的值作為字典的key,生成乙個字典)

'''

'''import collections

dic = collections.ordereddict(

)name =

['tom'

,'lucy'

,'sam'

]print

(dic.fromkeys(name)

)print

(dic.fromkeys(name,20)

)#輸出:ordereddict([('tom', none), ('lucy', none), ('sam', none)])

# ordereddict([('tom', 20), ('lucy', 20), ('sam', 20)])

items(返回由「鍵值對組成元素「的列表)

import collections

dic = collections.ordereddict(

)dic[

'k1']=

'v1'

dic[

'k2']=

'v2'

print

(dic.items())

#輸出:odict_items([('k1', 'v1'), ('k2', 'v2')])

keys(獲取字典所有的key)

import collections

dic = collections.ordereddict(

)dic[

'k1']=

'v1'

dic[

'k2']=

'v2'

print

(dic.keys())

# 輸出:odict_keys(['k1', 'k2'])

move_to_end(指定乙個key,把對應的key-value移到最後)

'''

'''import collections

dic = collections.ordereddict(

)dic[

'k1']=

'v1'

dic[

'k2']=

'v2'

dic[

'k3']=

'v3'

dic.move_to_end(

'k1'

)print

(dic)

# 輸出:ordereddict([('k2', 'v2'), ('k3', 'v3'), ('k1', 'v1')])

pop(獲取指定key的value,並在字典中刪除)

import collections

dic = collections.ordereddict(

)dic[

'k1']=

'v1'

dic[

'k2']=

'v2'

dic[

'k3']=

'v3'

k = dic.pop(

'k2'

)print

(k,dic)

# 輸出:v2 ordereddict([('k1', 'v1'), ('k3', 'v3')])

popitem(按照後進先出原則,刪除最後加入的元素,返回key-value)

import collections

dic = collections.ordereddict(

)dic[

'k1']=

'v1'

dic[

'k2']=

'v2'

dic[

'k3']=

'v3'

print

(dic.popitem(

),dic)

print

(dic.popitem(

),dic)

# 輸出:('k3', 'v3') ordereddict([('k1', 'v1'), ('k2', 'v2')])

# ('k2', 'v2') ordereddict([('k1', 'v1')])

setdefault(獲取指定key的value,如果key不存在,則建立)

'''

'''import collections

dic = collections.ordereddict(

)dic[

'k1']=

'v1'

dic[

'k2']=

'v2'

dic[

'k3']=

'v3'

val = dic.setdefault(

'k5'

)print

(val,dic)

# 輸出:none ordereddict([('k1', 'v1'), ('k2', 'v2'), ('k3', 'v3'), ('k5', none)])

values(獲取字典所有的value,返回乙個列表)

import collections

dic = collections.ordereddict(

)dic[

'k1']=

'v1'

dic[

'k2']=

'v2'

dic[

'k3']=

'v3'

print

(dic.values())

# 輸出:odict_values(['v1', 'v2', 'v3'])

有序陣列(類模板

實現乙個類模板,它可以接受一組資料,能對資料排序,也能輸出陣列的內容。每行輸入的第乙個數字為0,1,2或3 為0時表示輸入結束 為1時表示將輸入整數,為2時表示將輸入有一位小數的浮點數,為3時表示輸入字元。如果第乙個數字非0,則接下來將輸入乙個正整數,表示即將輸入的資料的數量。從每行第三個輸入開始,...

PTA 有序陣列(c ,類模板)

實現乙個類模板,它可以接受一組資料,能對資料排序,也能輸出陣列的內容。每行輸入的第乙個數字為0,1,2或3 為0時表示輸入結束 為1時表示將輸入整數,為2時表示將輸入有一位小數的浮點數,為3時表示輸入字元。如果第乙個數字非0,則接下來將輸入乙個正整數,表示即將輸入的資料的數量。從每行第三個輸入開始,...

Python有序鍊錶 類的宣告

class node 這裡不用加括號,具體引數都在init函式裡,這也是和函式區別的一部分,函式的公升級和高階有序集合 def init self,val self.data val self.next none def getdata self return self.data def getne...