- 여러 로직을 구현하면서 if를 자주 만나게 되는데 서칭 결과 if문을 많이 쓰면 않좋다 라는 이야기를 들어서 생각 및 검색을 정리 해보려고 한다.
- if문을 많이 쓰면 안좋은 이유
- 좋은 로직은 선형적으로 내려오는 로직임.
- if를 만나면 선형적이던 로직이 분기점이 생기게 되고 그럼 디버깅하기가 어려워지게됨.
- 왜냐면 모든 분기를 확인해서 버그를 확인해야하기 때문에.
- 선형적이라면 한 부분만 확인하면 되니까.
- : 로직이 달라지기 때문에
해결 방법:
- 자료구조 해결
If 에 있던 조건을 다 딕셔너리에 집어 넣고 딕셔너리 컴프리헨션을 사용해서 key와 value를 따로 빼서 그걸 집어넣는 형식으로 만듬....?
if문을 사용하는 등의 로직으로 짜는 것도 중여하지만 다른 자료형으로 바꿔볼 수 있을지 생각하면서 구조적으로 접근해서 해결할 수 있게 하는 게 중요.
#if 문을 사용하는 경우
test = 30
if test < 10:
print('첫번째 조건이 참입니다')
elif test == 20:
print('두번째 조건이 참입니다')
else:
print('모두 참이 아닙니다')
#딕셔너리 자료구조 사용
test =30
result = {0:"zero", 10 : "ten", 30 "thirty"}.get(test, "default")
print(result)
==> "thirty"
#일치하는 값이 없을경우 default를 출력
'Python' 카테고리의 다른 글
iterators (0) | 2022.07.06 |
---|---|
list comprehensions (0) | 2022.07.06 |
함수 (0) | 2022.07.05 |
제어문 (0) | 2022.07.05 |
딕셔너리 요소 접근 및 조작 (0) | 2022.07.05 |