-2
그래서이 코드가 반환해야합니다I 값의 순서에 따라 사전을 정렬하고 그
new_dict = {"1":[], "2":[], "3":[], "4":[]}
for coordinates in numbers:
if coordinates == (48, 12):
new_dict["1"].append(coordinates)
elif coordinates in [(68, 125), (54, 160), (20, 137)]:
new_dict["2"].append(coordinates)
elif coordinates in [(113, 69), (152, 53)]:
new_dict["3"].append(coordinates)
elif coordinates == (108, 149):
new_dict["4"].append(coordinates)
sorted_dict = sorted(new_dict.items())
for x,y in sorted_dict:
print (x,y)
인쇄 대신 단지 기능에 인쇄의
1 [(48, 12)]
2 [(68, 125), (54, 160), (20, 137)]
3 [(113, 69), (152, 53)]
4 [(108, 149)]
합니다. 어떻게 그것을 반환 할 수 있으며 튜플로 변경하지 않고 그대로 유지할 수 있습니다.
감사합니다.
사용'collections.OrderedDict' 수정. –
들여 쓰기를 확인하십시오. 한 번 분류하면 충분합니다. –
정렬하면 이유에 따라 튜플로 변경됩니다. Dicts는 ** 정렬되지 않은 컬렉션 **입니다. 당신의 필요에 부합하지 않기 때문에 그들이 일하는 방식을 마술처럼 바꿀 수는 없습니다. 다른 데이터 구조를 사용해야합니다. –