일반 사전과의 차이점 주문 사전

차이 파이썬은 일반 사전과 사전 주문

최근 장고는 사전의 질서 개발에 사용, 그래서 조금, 이하 연구한다.

예 :

일반적으로 사전 주문 등하지만 순서대로 삽입 된 요소와 사전 것 일반적으로 임의의 순서로 반복 기록 할 수 사전.

일반 사전 :

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

출력은 null입니다.

추천

출처www.cnblogs.com/g15009428458/p/11605217.html