Python

딕셔너리를 사용해서 연락처를 받고 출력하는 방법?

1
members = {} while True: print('='*20) print('[1] 추가') print('[2] 검색') print('='*20) menu = input('선택: ') if menu=='1': print('추가 기능 수행') name = input('이..
members = {}
while True:
    print('='*20)
    print('[1] 추가')
    print('[2] 검색')
    print('='*20)
    menu = input('선택: ')
    if menu=='1':
        print('추가 기능 수행')
        name = input('이름: ')
        phone = input('전화번호: ')
        members={'k': name, 'v': phone}
        continue

        while name == '':  # 1번
            for k, v in members.items():
                print(f'=====연락처 목록=====')
                print(f'{k}:{v}')
        while name != '': # 2번
            name = input('이름: ')
            phone = input('전화번호: ')

    elif menu=='2':
        name = input('이름: ')
        phone = members.get(name, '해당 이름의 연락처를 찾을 수 없습니다.')
        print(f'{name}의 연락처:', phone)

제 의도는 이름에 값이 들어올 때에는 이름을 입력할 때는 (빈값이 아닐 때에는) 이름과 전화번호를 계속 입력하고 만약 이름에 값이 빈다면 모든 연락처 목록을 불러오길 바라는데 그것에 대한 설정을 하는 방법에 있어 어려움이 있습니다.. ㅜㅜ 해당 코드를 실행시키면 이름과 연락처 값에 엔터키만 입력하면 (값이 비면) 다시 선택으로 올라가더라구요 

1번 while문과 2번 while문의 순서를 바꾸면 나중에 입력이 없을 때 

=====연락처 목록====

   :   

이것이 무한 출력 되고 연락처 검색이 안되네요..

냠냠 2022-10-12
냠냠 님께서 2022-10-12에 Python에 올린 질문

댓글

조회수 514
답글 0
URL