id_pw = ["rabbit04", "98761"]
db = [["jaja11", "98761"], ["krong0313", "29440"], ["rabbit00", "111333"]]
## 정답 : false
1. 비교문
def solution(id_pw, db):
for i in db:
if id_pw[0] == i[0]:
if id_pw[1] == i[1]:
return 'login'
else:
return 'wrong pw'
return 'fail'
2. dict.get()
def solution2(id_pw, db):
db = dict(db)
if db.get(id_pw[0]):
if db.get(id_pw[0]) == id_pw[1]:
return 'login'
else:
return 'wrong pw'
return 'fail'
- dict()를 통해 2차원의 리스트를 딕셔너리 형태로 만들 수 있다. 이때 [["jaja11", "98761"], ["krong0313", "29440"], ["rabbit00", "111333"]]처럼 키:값으로 치환될 수 있도록 리스트가 구성되어 있어야 한다.
db= {'jaja11' : '98761', 'krong0313' : '29440', 'rabbit00' : '111333'}
- dict.get(키)를 통해 키에 해당하는 값을 불러올 수 있다.
이때 해당하는 키가 있는 경우, 값이 반환되며, 없을 경우에는 None이 반환된다.
dict.get(키, 기본값)을 통해 기본값을 지정하면, 일치하는 키가 없는 경우, 기본값을 반환시킨다.
- 딕셔너리에서 키를 통해 값을 불러오는 방법은 2가지이다.
첫 번째는 dict['키']를 통해 불러올 수 있고, 두 번째는 dict.get('키')를 통해 불러올 수 있다.
두 방법의 차이점은 딕셔너리에 없는 '키'를 입력할 때의 반환값을 어떻게 처리하느냐에 있다.
dict['키']는 key error를 발생시켜 오류가 나지만, dict.get('키')는 None 또는 기본값을 지정했다면, 기본값이 나오기 때문에 오류가 나지 않는다.
'프로그래밍 > 알고리즘 & 자료구조' 카테고리의 다른 글
[프로그래머스] 연속된 수의 합 with 파이썬 (0) | 2023.04.12 |
---|---|
[프로그래머스] 캐릭터의 좌표 with 파이썬 (0) | 2023.04.11 |
[프로그래머스] 삼각형의 완성조건 (2) with 파이썬 (0) | 2023.04.09 |
[프로그래머스] 팩토리얼 with 파이썬 (0) | 2023.04.08 |
[프로그래머스] 문자열 계산하기 with 파이썬 (0) | 2023.04.07 |
댓글