728x90
반응형
프로그래머스를 풀고 있었는데 생소한 연산자가 있어서 알려주려고 한다.
:= 라는 연산자인데 파이썬 3.8부터 사용할 수 있다.
## 1번 코드 -> 일반 코드
s='walrus eat kimchi' ## s에 문자열을 할당
result = 'walrus' in s ## 'walrus' in s를 result에 할당
if result: ## result가 True라면
print(s) ## s 출력
print(result) ## result 출력
## 2번 코드 -> := 사용
## s에 문자열을 할당하고, 'walrus' in s를 result에 할당하고, result가 True 라면
if result := 'walrus' in (s := 'walrus eat kimchi'):
print(s) ## s 출력
print(result) ## result 출력
그리고 dict()에 대해 알았다. 나는 아래의 표에서 db를 0번째 인덱스를 key,
1번째 인덱스를 value로 만들기 위해서 딕셔너리내포구문으로 해결했다.
def solution(id_pw, db):
db = {info[0]:info[1] for info in db}
if id_pw[0] in db.keys():
if id_pw[1] == db[id_pw[0]]:
return 'login'
else:
return 'wrong pw'
else:
return 'fail'
하지만 dict()를 쓰면 알아서 key, value로 나눠준다는 것이다.
def solution(id_pw, db):
# db = {info[0]:info[1] for info in db}
db = dict(db)
print(db)
# if id_pw[0] in db.keys():
# if id_pw[1] == db[id_pw[0]]:
# return 'login'
# else:
# return 'wrong pw'
# else:
# return 'fail'
728x90
반응형
'개발 > 파이썬공부' 카테고리의 다른 글
예외처리 (0) | 2023.06.29 |
---|---|
파이썬 == 과 is 의 차이점, 주소값 (0) | 2023.04.24 |
파이썬으로 이미지 확장자 변경하기 (0) | 2023.04.05 |
프로그래머스 '입문' Lv.0 풀이 완료 (0) | 2023.02.18 |
댓글