访问键和值

使用字典时,通常需要访问字典中的所有键和值,可以是 for 循环,列表理解,也可以是普通列表。

给出一个字典:

mydict = {
    'a': '1',
    'b': '2'
}

你可以使用 keys() 方法获取密钥列表:

print(mydict.keys())
# Python2: ['a', 'b']
# Python3: dict_keys(['b', 'a'])

如果你想要一个值列表,请使用 values() 方法:

print(mydict.values())
# Python2: ['1', '2']
# Python3: dict_values(['2', '1'])

如果要同时使用键及其对应的值,可以使用 items() 方法:

print(mydict.items())
# Python2: [('a', '1'), ('b', '2')]
# Python3: dict_items([('b', '2'), ('a', '1')])

注意: 因为 dict 未分类,keys()values()items() 没有排序顺序。如果你关心这些方法返回的顺序,请使用 sort()sorted()OrderedDict

Python 2/3 差异: 在 Python 3 中,这些方法返回特殊的可迭代对象,而不是列表,并且相当于 Python 2 iterkeys()itervalues()iteritems() 方法。尽管存在一些差异,但这些对象在大多数情况下都可以像列表一样使用。有关详细信息,请参阅 PEP 3106