2014-11-21 8 views
1

파이썬에 txt 파일을 가져 와서 사전에 가져와야합니다. 그런 다음 중괄호/중괄호를 제거한 다음 수직으로 표시해야하며이를 수행하는 방법을 알지 못합니다. 이 표시되는 순간사전에 중괄호/중괄호를 없애고 사전을 수직으로 만드는 방법은 무엇입니까?

  Dictionary = {} 

      with open('Clues.txt', 'r') as f: 
       for line in f: 
        (key,val) = line[1], line[0] 
        Dictionary[key] = val 

      print(Dictionary) 

:

은 지금까지 생성 한 코드입니다

  {'&': 'L', '$': 'G', '£': 'J'} 

하지만이 같은 표시해야합니다

  '&': 'L' 
      '$': 'G' 
      '£': 'J' 

나는 모든 것을 시도했지만 어떤 아이디어도 효과가 없다.

답변

3

사전의 items() 및 출력 format()을 반복 할 수 있습니다.

for key, value in d.items(): 
    print('{}: {}'.format(key, value)) 

출력

&: L 
$: G 
£: J 
+0

빠른 응답을 주셔서 감사합니다.하지만 첫 줄을 인식하지 못하고 있습니까? – Jane

+0

당신의 코드는'for 키, Dictionary.items()의 값 :'일 것입니다. 내 변수에 다른 이름을 가졌습니다 – CoryKramer

+0

선이 역 추적을 돌려주지는 않았지만 아무 것도 나오지 않고 그냥 빈 값을 반환합니다. 죄송 합니다만 죄송 합니다만 오랫동안이 일을 해오려고 했으므로 저에게 줄 수있는 도움에 다시 한 번 감사드립니다. – Jane

1

JSON 데이터를 처리하기위한 자바 스크립트 형식이지만, 거의 모든 언어를 읽고 쓸 수 있습니다. https://docs.python.org/3.4/library/json.html

import json 

d = json.loads(my_str_dictionary) 
for key, value in enumerate(d): 
    print(key, " : ", value) 

JSON은 또한 당신이 그것을 사용하고자하는 경우 자신의 인쇄입니다 있습니다. json 문서에서.

>>> print(json.dumps({'4': 5, '6': 7}, sort_keys=True, indent=4)) 
{ 
    "4": 5, 
    "6": 7 
} 

문자열을 가져 와서 python 개체를 반환 할 수도있는 ast literal_eval을 사용할 수도 있습니다. 그것은 여전히 ​​평가이지만, 정규 평가보다 훨씬 낫습니다. Using python's eval() vs. ast.literal_eval()?

import ast 

d = ast.literal_eval(my_str_dictionary) 
for key, value in enumerate(d): 
    print(key, " : ", value) 
관련 문제