안녕하세요?
지난 글에서는 리스트 안에 딕셔너리 예제를
몇 가지 살펴보았습니다.
이번 글에서는
이어서
리스트 안에 딕셔너리 예제 2가지를 살펴보겠습니다.
목차
1. 과일 리스트, 야채 리스트에서 항목 뽑기
지난 글에서는
과일 리스트를 하나 만들고
그 리스트에서 항목을 출력하는 예제를 살펴보았습니다.
리스트의 항목은 각각 딕셔너리로 들어가 있었죠.
이번 예제에서는
과일 리스트와 야채 리스트를 만들어보았습니다.
그리고 함수를 하나 만들어주었습니다.
함수는 get_name(name, list) 라는 함수로
이렇게 리스트가 2개 이상일 때 이 함수가 진가를 발휘하게 됩니다.
함수의 파라미터에는 name이라는 변수와 list라는 변수가 들어가게 되는데
리스트가 여러개인 경우
함수를 호출할 때 내가 사용하기를 원하는 리스트의 이름을 써주면 되죠!
함수의 내용을 좀 살펴보겠습니다.
리스트의 0번째 항목부터 끝번째 항목까지 쭉 돌면서
if 조건문을 거칩니다.
만약에 항목의 name값이 사용자가 함수 호출시 작성한 값과 같다면
항목의 %값을 출력합니다.
그렇지 않고 만약에
항목의 name값이 사용자가 함수 호출 시 작성한 값과 다르다면
'항목에 없는 이름입니다.' 라고 출력해줍니다.
아래는 파이썬 코드입니다.
실제로 코드를 한 번 돌려보세요.
#리스트 안에 딕셔너리
fruit_list = [
{'name': '바나나', '%': 13},
{'name': '딸기', '%': 15},
{'name': '샤인머스켓', '%': 20},
{'name': '망고', '%': 25}
]
vege_list = [
{'name': '오이', '%': 13},
{'name': '시금치', '%': 15},
{'name': '양파', '%': 20},
{'name': '피망', '%': 25}
]
def get_name(name,list):
for i in list:
if i['name'] == name:
return '{}은/는 {}%의 학생들이 좋아합니다.'.format(name, str(i['%']))
return '항목에 없는 이름 입니다.'
print(get_name('딸기', fruit_list))
print(get_name('오이', vege_list))
2. 학생 정보 리스트
다음 예제는 학생 정보 리스트 예제입니다.
이렇게
students = [] 라는 리스트를 만들었습니다.
이 리스트에는
학생의 이름, 과목, 활동, 음식에 대한 정보들이 각각 딕셔너리로 추가되어 있습니다.
그리고
함수를 만들어주었습니다.
함수의 첫 번째 코드는 input()함수를 써서
사용자에게 어떤 정보를 원하는지 물어보는 코드입니다.
사용자는 과목, 활동, 음식 중 한 가지를 정할 수 있죠.
그리고 이제
사용자가 함수에 입력한 이름이
리스트에 있으면
00학생은 00을 좋아합니다. 는 멘트가 리턴됩니다.
아래는 파이썬 코드입니다.
복사하여 한 번 실행해보세요~!
students=[
{'name':'재석', '과목' : '국어', '활동' : '책읽기', '음식' : '카레'},
{'name':'명수', '과목' : '수학', '활동' : '영화보기', '음식' : '비빔밥'},
{'name':'준하', '과목' : '미술', '활동' : '축구하기', '음식' : '샌드위치'},
{'name':'홍철', '과목' : '체육', '활동' : '먹기', '음식' : '초콜릿'}
]
def get_name(name,list):
question = str(input('어떤 것을 좋아하는지 알고싶나요?(과목/활동/음식): '))
for i in list:
if i['name'] == name:
return '{}학생은 {}을 좋아합니다.'.format(name, str(i[question]))
return '항목에 없는 이름 입니다.'
print(get_name('재석', students))
지금까지 파이썬의 리스트와 딕셔너리의 다양한 예제를 살펴보았습니다.
다음 글부터는
실제
서울시 미세먼지 API
따릉이 API 등을 가져와서
리스트와 딕셔너리를 다루는 예제들을 살펴보겠습니다!
'프로그래밍 > 파이썬기초' 카테고리의 다른 글
서울시 미세먼지 API로 미세먼지 알리미 만들기 (1) | 2023.11.13 |
---|---|
서울 열린 데이터광장에서 미세먼지 현황 API 발급받기 (0) | 2023.11.10 |
파이썬 딕셔너리 - 리스트 안에 딕셔너리 예제 (0) | 2023.11.08 |
파이썬 딕셔너리와 리스트 예제 : 리스트를 딕셔너리로, 딕셔너리 안에 딕셔너리 (0) | 2023.11.07 |
파이썬 딕셔너리(dictionary) 사용법: key값 출력하기, key와 value값 출력하기, key와 vlaue 값 뒤집기 (0) | 2023.11.06 |