4.7 字典

字典是一種可變容器模型,能夠存儲任意類型對象,也就是所謂的 "來者是客"。python


k={'name':'zhouyuyao','age':21,'sex':'female'}ide

print(k)spa

print(type(k))對象

# 返回結果:排序

# {'name': 'zhouyuyao', 'age': 21, 'sex': 'female'}ip

# <class 'dict'>get



k1=dict(a=1,b=2,c=3)it

print(k1)class

# 返回結果:test

# {'a': 1, 'b': 2, 'c': 3}



# 元組裏面一個列表,列表裏面兩個元組

d=dict([('name','list'),('age',20)])

print(d)

# 返回結果:

# {'name': 'list', 'age': 20}



# 字典的經常使用方法

k1.clear()    # clear 至關於把 k1 裏面的值清除

print(k1)

# get方法

print(k.get('name'))

print(k.get('age'))

# 返回結果:

# zhouyuyao

# 21



# setdefault

print(k.setdefault('name'))

print(k.setdefault('age','changsha'))

print(k.setdefault('address','changsha'))

# 返回結果:

# zhouyuyao

# 21

# changsha



# keys

print(k.keys())

# 返回結果:

# dict_keys(['name', 'age', 'sex', 'address'])



# values

print(k.values())



# iteritems

print(k.items())    #在 python3 裏面用 items() 替換 iteritems()

# 返回結果:

# dict_items([('name', 'zhouyuyao'), ('age', 21), ('sex', 'female'), ('address', 'changsha')])


for x,y in k.items():

   print(x,y)

# 返回結果:

# name zhouyuyao

# age 21

# sex female

# address changsha



# Python 3.0 內的另外一個重大改變是字典內dict.iterkeys(),dict.itervalues(),dict.iteritems()方法的刪除。

# 取而代之的是:dict.keys(),dict.values(),dict.items(),

# 它們被進行了修補,能夠返回輕量的、相似於集的容器對象,而不是鍵和值的列表。

# 這樣的好處是在不進行鍵和條目複製的狀況下,就能在其上執行set操做。

# dict.has_key()一樣被移除。



l=['a','b','c','d']

m={}

n=m.fromkeys(l,123)

n=dict.fromkeys(l,123)

print(n)

# 返回結果:

# {'a': 123, 'b': 123, 'c': 123, 'd': 123}


l1=['a','b','c','d']

l2=[1,2,3,4]

dict_test=dict(zip(l1,l2))    #應該爲字典

print(dict_test)

print(k)

# 返回結果:

# {'a': 1, 'b': 2, 'c': 3, 'd': 4}

# {'name': 'zhouyuyao', 'age': 21, 'sex': 'female', 'address': 'changsha'}



# 將 dict_test 和 k 合併

dict_test.update(k)

print(dict_test)

# 返回結果:

# {'a': 1, 'b': 2, 'c': 3, 'd': 4, 'name': 'zhouyuyao', 'age': 21, 'sex': 'female', 'address': 'changsha'}



# 對字典進行排序

mm=dict(a=1,b=10,c=3,d=9)

print(mm)

print(sorted(mm.items(),key=lambda d: d[1],reverse=True))

# 返回結果:

# {'a': 1, 'b': 10, 'c': 3, 'd': 9}

# [('b', 10), ('d', 9), ('c', 3), ('a', 1)]

相關文章
相關標籤/搜索