2012-11-30 3 views
1

사전인가 분류하는 방법 :이이 인쇄 키 경우 지금내가 사전의 요소를 정렬 할 수있는 방법을

with open('directory file txt','r') as f: 
    for line in f: 
       keys = line.strip().split('.') 
       value = keys[-1] 
       for key in reversed(keys[1:-1]): 
        value = {key: value} 
       result[keys[0]]=value 

을 :

['a','b','c','d','1'] 
['a','f','e','d','3'] 
['f','b','c','d','2'] 
['a','b','c','d','0'] 

내가 내가 마지막 요소에 의해 각을 주문할 수 있습니다 그것을 파일에 저장 하시겠습니까? 그래서 내 출력은 다음과 같습니다

a.b.c.d.0 
a.b.c.d.1 
f.b.c.d.2 
a.f.e.d.3 

답변

1

당신은 사전에 필요하지 않습니다. 당신의 목록으로 라인을 읽을 수 있습니다

with open('directory file txt','r') as f: 
    lines = f.readlines() 

그런 다음 지정하여 목록을 직접 정렬하려면 키 정렬 :

lines.sort(key = lambda s: int(s.rsplit('.', 1)[1])) 
+0

확인 감사합니다,하지만 난 멀티 사전의 요소를 주문하려면 내가 내가 할 수 있을까? – user1841492

+0

@ user1841492 : 사전에는 순서가 없습니다. 목록에는 순서가 있습니다. –

+0

예.하지만 값으로 정렬 된 사전의 요소를 인쇄하고 싶습니까? – user1841492

관련 문제