원래 문자열 인 키 값을 기반으로 사전을 정렬하는 데 문제가 있습니다. 나는 SortedDict
을 사용하는 솔루션을 찾고있다. 아래 나는 문자열을 int
으로 캐스팅했으나 정렬은 비합리적으로 보입니다. 그렇지 않으면 당신은 키의 첫 번째 숫자에 따라 DICT을 정렬하고 있기 때문에 당신이 int(k)
와 int(k[0])
를 교체 할 경우SortedDictionary 정렬 OrderedDict에서 다른 키가 필요합니다
#using Jenks' library:
from sortedcontainers.sorteddict import SortedDict
mydict = SortedDict(
lambda k: int(k[0]),
{
'1': '#fe70ac',
'10': '#ff7400',
'11': '#b6a2d1',
'12': '#79bc3b',
'100': '#000000',
'101': '#000000',
'102': '#000000'
})
반환
SortedDict_items(
[('11', '#b6a2d1'),
('10', '#ff7400'),
('12', '#79bc3b'),
('1', '#fe70ac'),
('102', '#000000'),
('100', '#000000'),
('101', '#000000')....
dict를 나중에 반복하면서 정렬 할 수 있습니까? – Bahrom