# 사전 (dictionary) 자료형
사전 자료형은 이름(key)과 값(value) 을 세트로 저장한 형태입니다. 한마디로 앞에서는 리스트에 이름만 저장했지만
사전 자료형은 이름과 값 이 두가지를 한번에 저장할 수 있습니다.
store = {
'삼각김밥' : 1000 ,
'음료수' : 1500 ,
'초콜릿' : 2000 ,
'아이스크림' : 1700
}
예를 들어 이렇게 표현하겠습니다. 이름은 삼각김밥 , 음료수 , 초콜릿 , 아이스크림 이고 값은 그 옆에 있는 숫자들 입니다.
print(store['삼각김밥']) # 숫자x , 순서가 없음
# print(store[1000]) # 반대는 안됨
값을 뽑아오는 방법입니다. 값을 뽑으려면 이름을 적어야 합니다. 이름에 저장된 값을 쓰면 나타나지 않습니다.
다음은 값을 등록하는 방법과 수정하는 방법입니다.
store['라면'] = 1200
먼저 등록입니다. 리스트의 이름과 등록할 이름을 적고 값을 적으면 리스트의 적은게 추가됩니다.
다음은 수정입니다.
store['아이스크림'] = 1900
위에는 아이스크림을 1900원으로 수정하는 방법입니다. 이것 역시 이름과 수정할 값을 입력하면 바뀌게 됩니다.
'''
로그인 프로그램 만들기
저장소에 다음 회원정보를 저장해놓고
사용자에게 아이디와 비밀번호를 입력받아 로그인 처리를 수행하는 프로그램 구현
<회원정보>
아이디 비밀번호
remind academy
python good
study hard
good bye
'''
예시 문제입니다.
로그인 프로그램 만들기 인데요 다음을 저장해놓고 사용자에게 아이디와 비밀번호를 입력받아 로그인 처리를 수행하라는 프로그램 만들어야합니다.
database = {
# 아이디(key) : 비밀번호(value)
'remind' : 'academy' ,
'python' : 'good' ,
'study' : 'hard' ,
'good' : 'bye'
}
id = input('아이디 입력')
pw = input('비밀번호 입력')
# 아이디 유무 확인
# print(database.get(id) != None) # 아래와 같음
# print(id in database)
# print('비밀번호 일치 : ' , database[id] == pw)
# print('비밀번호 일치 : ' , database.get(id) == pw)
if id in database and database[id] == pw :
print('로그인 성공')
else :
print('로그인 실패')
해설입니다. 우선 아이디와 비밀번호를 입력하게 만듭니다. 그리고 아이디의 유무를 확인하기 위해 리스트에 아이디가 있는지 확인합니다.
database.get(id) 가 none이랑 다른지 확인 ! (id in database 랑 같습니다.)
그리고 비밀번호가 일치하는지 확인
그리고 if문을 씁니다. 그러면 로그인 프로그램이 완성됩니다.
chart = {
# 제목 : 가수
'미운 날' : '닐로' ,
'멍청이' : '화사' ,
'달라달라' : 'ITZY' ,
'옥탑방' : '엔플라잉' ,
'이 노래가 클럽에서 나온다면' : '우디'
}
print(chart)
# 반복을 이용하여 요소에 접근(key , value , key + value)
# key
print(chart.keys())
for name in chart.keys() :
print(name)
# value
print(chart.values())
for singer in chart.values() :
print(singer)
# key + value
print(chart.items())
for (name,singer) in chart.items() :
print(f'제목 : {name} , 가수 : {singer}')
반복을 이용하여 요소에 접근할 수 있습니다.
위에처럼 작성하면 key는 이름만 , value는 그 값만 , key 와 value는 이름과 값을 한번에 나타냅니다.
'Python' 카테고리의 다른 글
| Python_12Day (0) | 2019.02.28 |
|---|---|
| Python_11Day (0) | 2019.02.27 |
| Python_09Day (0) | 2019.02.25 |
| Python_08Day (0) | 2019.02.22 |
| Python_07Day (0) | 2019.02.21 |