python中字典(dict)的常用操作
dict1 = {'Alice': '2341', 'Bech': 9102, 'Cecll': '3258'}
dict2 = {'abc': 456}
dict3 = {'abc': 123, 98.6: 37}
print dict1['Bech']
print dict3[98.6]
print dict1.keys()
print dict1.values()
9102
37
['Bech', 'Cecll', 'Alice']
[9102, '3258', '2341']
print len(dict1)
type(dict1)
3
dict
dict1['Meringue'] =9999
dict1['Alice'] = 666
print dict1
{'Bech': 9102, 'Cecll': '3258', 'Alice': 666, 'Meringue': 9999}
print dict1.get('Alice','None')
print dict1.get('Jack','None')
print dict1.has_key('Alice')
print dict1.has_key('Jack')
dict1.setdefault('Alice','None')
print dict1
dict1.setdefault('Jack','None')
print dict1
666
None
True
False
{'Bech': 9102, 'Cecll': '3258', 'Alice': 666, 'Meringue': 9999}
{'Bech': 9102, 'Cecll': '3258', 'Alice': 666, 'Meringue': 9999, 'Jack': 'None'}
del dict1['Cecll']
print dict1
dict3.clear()
print dict3
del dict2
print dict2
{'Bech': 9102, 'Alice': 666, 'Meringue': 9999, 'Jack': 'None'}
{}
--------------------------------------------------------------
NameError Traceback (most recent call last)
<ipython-input-6-0c120f18cfe4> in <module>()
9 # 删除字典(字典不再存在)
10 del dict2
---> 11 print dict2 # 此时会报错
NameError: name 'dict2' is not defined
dict4= {'a':1,'b':2,'c':3,'a':4}
print dict4
{'a': 4, 'c': 3, 'b': 2}
dict5 = {['a']:1, 'b':2, 'c':3}
print dict5
--------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-8-cbdf7e62504e> in <module>()
1 # 字典的键不可变,可以为数字,字符或元祖,但不能用列表
----> 2 dict5 = {['a']:1, 'b':2, 'c':3}
3 print dict5 # 此时会报错
TypeError: unhashable type: 'list'
dict6 ={'a':1, 'b':2};
dict7 ={'a':1,'b':2}
dict8 = {'a':1, 'b':3}
print cmp(dict6,dict7)
print cmp(dict6,dict8)
0
-1
dict9 = {'a':1, 'b':2}
dict10 = {'c':3, 'd':4}
dict9.update(dict10)
print dict9
{'a': 1, 'c': 3, 'b': 2, 'd': 4}
dict11 = {'a':1, 'b':2, 'c':3, 'd':4}
for key in dict11:
print (key,dict11[key])
print '----------------------'
for key, value in dict11.items():
print key,value
for key, value in dict11.items():
print (key,value)
for key_value in dict11.items():
print key_value, type(key_value)
('a', 1)
('c', 3)
('b', 2)
('d', 4)
----------------------
a 1
c 3
b 2
d 4
('a', 1)
('c', 3)
('b', 2)
('d', 4)
('a', 1) <type 'tuple'>
('c', 3) <type 'tuple'>
('b', 2) <type 'tuple'>
('d', 4) <type 'tuple'>