Разница питон упорядоченный словарь с обычным словарем
Последнее Джанго используется в упорядоченном развитии словаря, поэтому исследование немного, или меньше.
Пример:
Как правило Словарь заказал словарь и тому подобное, но она может записывать последовательность, в которой вставлен элемент, и словарь будет в основном произвольный порядок итераций.
Обычный словарь:
1 d1={}
2 d1['a']='A'
3 d1['b']='B'
4 d1['c']='C'
5 d1['d']='D' #此时的d1 = {'a':'A','b':'B','c':'C','d':'D'}
6 for k,v in d1.items():
7 print k,v
Выход:
1 a A
2 c C
3 b B
4 d D
Как видно из результатов выше обычного словаря проходится выход неупорядоченный.
Ниже упорядоченный словарь (необходимо импортировать коллекции пакет):
1 import collections
2 d1={}
3 d1=collections.OrderedDict() #将普通字典转换为有序字典
4 d1['a']='A'
5 d1['b']='B'
6 d1['c']='C'
7 d1['d']='D'
8 for k,v in d1.items():
9 print k,v
Выход:
1 a A
2 b B
3 c C
4 d D
Сравнение двух выходов, не трудно найти, заказать словарь словарь порядок вставки может быть выходным элементом .
Причина, почему указанные выше два примера элементы словаря вставки, а не хороший словарь будет начать определение элемента, потому что роль упорядоченного словаря только, чтобы запомнить порядок вставки элементов и вывода последовательно.
Если порядок элементов в словаре определения хорошего старта, элементы позади этого действий не установлен, затем траверса упорядоченного словаря, его выход пуст, потому что отсутствие упорядоченной вставки этого условия, так как в этом случае упорядоченного словаря потеряет свою силу, поэтому заказал словарь , как правило , используются для динамического добавления и при необходимости по порядку выхода сложения .
Например:
1 import collections
2 d2 = {'a':'A','b':'B','c':'C','d':'D'}
3 d2=collections.OrderedDict() #将普通字典转换为有序字典
4 for k,v in d2.items():
5 print k,v
Его выход является нулевым.