字典类似于你通过联系人名字查找地址和联系人详细情况的地址簿,即,我们把键(名字)和
值(详细情况)联系在一起。注意,键必须是唯一的,就像如果有两个人恰巧同名的话,你无
法找到正确的信息。
注意,你只能使用不可变的对象(比如字符串)来作为字典的键,但是你可以把不可变或可变
的对象作为字典的值。基本说来就是,你应该只使用简单的对象作为键。
键值对在字典中以这样的方式标记:d = {key1 : value1, key2 : value2 }。注意它们的键/值对用冒
号分割,而各个对用逗号分割,所有这些都包括在花括号中。
记住字典中的键/值对是没有顺序的。如果你想要一个特定的顺序,那么你应该在使用前自己
对它们排序。
字典是dict类的实例/对象。
#!/usr/bin/python
# Filename: using_dict.py
# 'ab' is short for 'a'ddress'b'ook
ab = { 'Swaroop' : 'swaroopch@byteofpython.info',
'Larry' : 'larry@wall.org',
'Matsumoto' : 'matz@ruby-lang.org',
'Spammer' : 'spammer@hotmail.com'
}
print "Swaroop's address is %s" % ab['Swaroop']
# Adding a key/value pair
ab['Guido'] = 'guido@python.org'
# Deleting a key/value pair
del ab['Spammer']
print '\nThere are %d contacts in the address-book\n' % len(ab)
for name, address in ab.items():
print 'Contact %s at %s' % (name, address)
if 'Guido' in ab: # OR ab.has_key('Guido')
print "\nGuido's address is %s" % ab['Guido']
输出$ python using_dict.py
Swaroop's address is
swaroopch@byteofpython.infoThere are 4 contacts in the address-book
Contact Swaroop at
swaroopch@byteofpython.infoContact Matsumoto at
matz@ruby-lang.orgContact Larry at
larry@wall.orgContact Guido at
guido@python.orgGuido's address is
guido@python.org