2012-04-10 6 views
7

는 내가 키 값을 반환하지만, 키 이름을 반환 할 수있는 방법이 없었다 할 수있는 방법을 찾을 수있는 사전을사전의 키를 열거 하시겠습니까?

Dict = {'ALice':1, 'in':2, 'Wonderland':3} 

있습니다.

for key in your_dict.keys(): 
    print key 

를하거나 사전을 반복 :

Alice 
in 
Wonderland 
+0

값 - 키 쌍의 적절한리스트에 켠 다음 종류의 기반 값이 예에서는 다음 반복. (사전에 키 * * 주문하지 않은 것을 기억하십시오.) –

+0

주문은 나를 위해 문제를 is'nt. 나는 특정한 순서대로 그것을 필요로하지 않는다. 임 그냥 SQL 데이터베이스에 키 이름을 입력하려고. – upapilot

답변

13

당신은 .keys()를 사용할 수 있습니다

는 파이썬 (예를 들어 루프) 단계로 사전 키 이름 단계를 반환 할

for key in your_dict: 
    print key 

는 사전 주문한되지 않도록주의 마십시오.

sort_of_dict = [('ALice', 1), ('in', 2), ('Wonderland', 3)] 

for key, value in sort_of_dict: 
    print key 

을 지금 : 주문한있는, 당신은 순서에 대해 걱정하는 경우

['Wonderland', 'ALice', 'in'] 

것은 해결책이 될 것 목록을 사용하려면 다음과 같이 결과 키는 다소 무작위 순서로 나올 것입니다 원하는 결과를 얻으실 수 있습니다 :

>>> sort_of_dict = [('ALice', 1), ('in', 2), ('Wonderland', 3)] 
>>> 
>>> for key, value in sort_of_dict: 
... print key 
... 
ALice 
in 
Wonderland 
+0

네, 그걸 편집하고있었습니다. 고마워요! – Blender

+1

your_dict.keys()의 키 : for : your_dict의 키 :' –

+0

로 간단히 처리 할 수 ​​있습니다. 주문은 나를 위해 문제를 is'nt : – upapilot

1

dict에는 keys() 메소드가 있습니다.

Dict.keys()는 키의 목록이 반환 또는 반복자 iterkeys 방법을 사용할 것이다().

1
def enumdict(listed): 
    myDict = {} 
    for i, x in enumerate(listed): 
     myDict[x] = i 

    return myDict 

indexes = ['alpha', 'beta', 'zeta'] 

print enumdict(indexes) 

인쇄 : { '알파'0 '베타'1, '제타': 2}

편집 : 당신은 DICT가 사용 ordereddict을 주문해야합니다. 내가 유혹 할 수

+0

정확히는 질문에 대한 답변하지만 난 upvoted이 편리 트릭 때문이다. – ardochhigh

관련 문제