파이썬 딕셔너리 저장방법에 대해서 궁금합니다

조회수 7019회
friends = {}

for i in range (0,3,1) :
    friends = {'name': input('이름을 입력하시오:'), 'tel':input('전화번호를 입력하시오 :'), 'addr': input('주소를 입력하시오:'), 'age':input('나이를 입력하시오:')}

print(friends)

친구 3명의 주소를 저장하는 건데 지금 코드대로 해서 마지막에 실행하면 마지막으로 입력한 친구의 정보만 나열됩니다. 3명 전부 나열하게끔 할려면 어떻게 해야하나요?

  • (•́ ✖ •̀)
    알 수 없는 사용자

2 답변

  • 딕셔너리는 key:value 라는 형태로 저장하는 자료 구조입니다.

    즉 딕셔너리 1개는 1개의 레코드를 표현할 수 있습니다.

    레코드를 여러개 저장하려면 리스트라는 자료구조를 사용하면 됩니다.

    friends = []
    
    for i in range (0,3,1) :
        friends.append({'name': input('이름을 입력하시오:'), 'tel':input('전화번호를 입력하시오 :'), 'addr': input('주소를 입력하시오:'), 'age':input('나이를 입력하시오:')})
    
    print(friends)
    
  • friends = []
    
    for i in range (0,3) :
        name = input ('이름을 입력하세요: ')
        tel = input('전화번호를 입력하시오 :')
        addr = input('주소를 입력하시오:')
        age = input('나이를 입력하시오:')
        friends.append({'name': name, 'tel': tel, 'addr': addr, 'age':age})
    
    print(friends)
    
    • (•́ ✖ •̀)
      알 수 없는 사용자

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)