본문 바로가기
Programming/파이썬(python)

[Python] 이름과 전화번호 입력 받아 출력하기

by 어깨 :) 2023. 6. 28.
728x90

아래 코드는 사용자로부터 이름과 전화번호를 입력받아 연락처(contacts)에 저장하고, 검색모드에서 해당 이름을 입력하면 해당하는 전화번호를 출력하는 프로그램입니다. 코드를 각 부분별로 설명해 드리겠습니다.

 

 contacts={}: 빈 딕셔너리인 contacts를 생성하여 연락처 정보를 저장할 준비를 합니다.

 while True:: 무한 루프를 시작합니다. 이 루프는 입력모드와 검색모드를 번갈아가면서 실행합니다.

 (입력모드) 이름을 입력하시오: : 사용자로부터 이름을 입력받습니다.

 if not name: break: 만약 입력받은 이름이 없다면(빈 문자열이라면) 루프를 종료합니다. 이는 사용자가 더 이상 이름을 입력하고 싶지 않을 때 루프를 종료하기 위한 조건입니다.

 tel=input('전화번호를 입력하시오: '): 사용자로부터 전화번호를 입력받습니다.

 contacts [name]=tel: 입력받은 이름을 키(key)로, 전화번호를 값(value)으로 하는 딕셔너리 요소를 contacts에 추가합니다. 즉, 연락처에 새로운 정보를 저장합니다.

 (검색모드) 이름을 입력하시오: : 사용자로부터 검색할 이름을 입력받습니다.

 if not name: break: 만약 입력받은 이름이 없다면(빈 문자열이라면) 루프를 종료합니다. 이는 사용자가 더 이상 이름을 입력하고 싶지 않을 때 루프를 종료하기 위한 조건입니다.

 if name in contacts:: 입력받은 이름이 contacts 딕셔너리의 키로 존재하는지 확인합니다.

 print('% s의 전화번호는 % s입니다.'%(name, contacts [name])): 입력받은 이름이 contacts에 존재한다면 해당하는 전화번호를 출력합니다. % s는 문자열 포맷팅을 위한 자리 표시자입니다. (name, contacts [name])은 해당 자리 표시자에 들어갈 값들을 튜플로 전달하는 것을 의미합니다.

이후에 다시 입력모드로 돌아가면서 사용자로부터 이름과 전화번호를 입력받을 수 있습니다. 검색모드에서도 계속해서 이름을 입력받아 해당하는 전화번호를 출력할 수 있습니다. 사용자가 이름을 입력하지 않고 엔터를 입력하면 각각의 무한 루프에서 루프를 종료하게 됩니다.

 

 

 

 

 

결과적으로 아래에 이름과 전화번호를 입력할 수 있는 창이 나옵니다.

 

 

C:\Users\user\Desktop\python.exe C:\Python\list_ans3.py 
(입력모드) 이름을 입력하시오: 
전화번호를 입력하시오: 
(입력모드)이름을 입력하시오: 

 

728x90