파이썬프로그램 응용 보수교육에서 실습한 내용에서 미션사항이 있었다.(아래)
순서1. 교육용 샘플: 회원관리에 리스트 데이터형을 함수형으로 변경 한 후 딕셔너리 데이터형으로 CRUD하기 이다.(아래)
기본형:
- 아래 리스트 데이터확인 ['kim1','kim2']
함수형 딕셔너리데이터형{이름key:전화번호value, 이름key:전화번호value,}데이터로변경):
- 아래 딕셔너리 데이터확인 {'kim1':'111-1111', 'kim2':'222-2222'}
순서2. 위 함수형 딕셔너리 데이터로 변경 한 소스를 딕셔너리형 리스트 데이터형으로 CRUD하기 이다.(아래)
딕셔너리형[{이름key:전화번호value, 이름key:전화번호value,}]
(아래 딕셔너리형 리스트 데이터확인 [{'kim1':'111-1111', 'kim2':'222-2222'}])
순서3. 딕셔너리 데이터형으로 변경 한 소스를 딕셔너리형 리스트 인데 일명 JsonArray(자바의 List<HashMap>형태)로 CRUD하기 이다.(아래)
딕셔너리 리스트형(JsonArray형): 현재 제일 많이 사용
아래 딕셔너리형 리스트 데이터 JsonArray 형태 [{'name':'kim1','phone':'111-1111'}, {'name':'kim2','phone':'222-2222'}]
최종소스
menu = 0
friends = []
##2차원 리스트로 변경은 미션
def f_display():
print(friends)
def f_menu():
print("--------------------")
print("1. 친구 리스트 출력")
print("2. 친구추가")
print("3. 친구삭제")
print("4. 이름->전화번호변경")
print("9. 종료")
print("--------------------")
while True:
try:
menu = int(input("메뉴를 선택하시오: "))
break
except ValueError:
print("입력값이 숫자가 아닙니다.")
return menu
def f_input():
friend = {}
name = input("이름을 입력하시오: ")
#friends.append(name)
phone = input("전화번호를 입력하세요: ")
friend['name'] = name
friend['phone'] = phone
friends.append(friend)
def f_modify():
old_name = input("변경하고 싶은 이름을 입력하시오: ")
count = 0
for index in range(len(friends)):
if old_name in friends[index]['name']:
#index = friends.index(old_name)
#new_name = input("새로운 이름을 입력하시오: ")
#friends[index] = new_name
new_phone = input("새로운 전화번호를 입력하시오: ")
friends[index]['phone'] = new_phone
count = 1
break
#else:
if count == 0:
print("이름이 발견되지 않았음")
def f_delete():
friend = {}
del_name = input("삭제하고 싶은 이름을 입력하시오: ")
count = 0
for index in range(len(friends)):
if del_name in friends[index]['name']:
friends.pop(index)
count = 1
break
#friends.remove(del_name)
#else:
if count == 0:
print("이름이 발견되지 않았음")
while True:
menu = f_menu();
if menu == 1:
f_display();
elif menu== 2:
f_input()
elif menu == 3:
f_delete()
elif menu == 4:
f_modify()
elif menu == 9:
break
참고로, 파이썬 개발툴인 IDLE(Integration Development and Learning Environment)은 아래 오픈 소스에서 설치한다.
hwpx 아래한글 파일을 hwp로 변경할 때 폴라리스 오피스 웹을 사용 (0) | 2023.02.28 |
---|---|
파이썬 응용 실습2(JsonArray 데이터를 읽고, 쓰기) (0) | 2022.07.04 |
정규표현식(모든언어에 해당됨) (0) | 2021.06.13 |
2021.8월13일 부터 git 인증시 계정 암호를 허용하지 않는 부분 해결책 (0) | 2021.05.18 |
인공위성을 홈페이지에 품어볼까? (0) | 2021.05.06 |
댓글 영역