Pythona 2.7
dict views: Obsługuje bezpośrednie operacje Set, itp
>>> dic1 = {'a':'a','b':'c','c':'d'}
>>> dic2 = {'b':'a','a':'c','c':'d'}
>>> dic1.viewkeys() == dic2.viewkeys()
True
>>> dic1.viewkeys() - dic2.viewkeys()
set([])
>>> dic1.viewkeys() | dic2.viewkeys()
set(['a', 'c', 'b'])
podobnie w 3.x: (thx @lennart)
>>> dic1 = {'a':'a','b':'c','c':'d'}
>>> dic2 = {'b':'a','a':'c','c':'d'}
>>> dic1.keys() == dic2.keys()
True
>>> dic1.keys() - dic2
set()
>>> dic1.keys() | dic2
{'a', 'c', 'b'}
pyton 2.4+
set operation: bezpośredni iteracja nad klawiszami DICT do zestawu
>>> dic1 = {'a':'a','b':'c','c':'d'}
>>> dic2 = {'b':'a','a':'c','c':'d'}
>>> set(dic1) == set(dic2)
True
Nie sortowania klucze(), jeśli to możliwe. – user469652
Dlaczego nie? To * prawdopodobnie * nie sortuje klucza, ale jest to dziwne i arbitralne ograniczenie. Czy to zadanie domowe? –
"dic1 i dic2 mają te same klucze, ale w innej kolejności." - w słowniku Pythona nie ma sensu - klucze nie są uporządkowane. – eumiro