Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 문제풀이
- Linux
- docker
- scala
- programmers
- 주키퍼
- 스칼라
- leetcode
- 동적프로그래밍
- DP
- redis
- 코드워
- go
- dynamic programming
- boj
- HBase
- gradle
- 프로그래머스
- 알고리즘
- OOM
- 튜토리얼
- Python
- 자바
- golang
- Java
- 파이썬
- codewars
- 리눅스
- zookeeper
- Go언어
Archives
- Today
- Total
파이문
파이썬에서 switch-case문 사용하기 본문
728x90
파이썬에서 switch-case문 사용하기
(Python Switch-Case)
파이썬에서는 switch, case라는 키워드가 존재하지 않습니다. 그래서 어떤 입력에 대해서 case를 나누고 싶다면 주로 if-elif-else를 사용하곤 하죠. 아니면 딕셔너리를 이용해서 마치 switch-case문 처럼 사용할 수 있습니다.
def f(x):
return {'a': '1', 'b': '2'}[x]
입력 x가 'a'라면 '1'을 리턴하고, 'b'라면 '2'를 리턴합니다.
만약, 입력 값이 'a'도 'b'도 아닌 'c'라면 f('c')는 KeyError를 던지죠.
다른 언어의 switch-case문은 예외를 위해, 디폴트 값을 지정할 수 있는데요. 파이썬도 마찬가지로 디폴트로 값을 지정할 수 있습니다.
def f(x):
return {'a': '1', 'b': '2'}.get(x, '3')
(이처럼 작성하면 기본으로 없는 키에 대해선 '3'을 리턴합니다.)
파이썬에서는 딕셔너리의 값을 가져올 때 get을 쓸 수 있는데요. get을 쓰게 되면 없는 키에 대해선 KeyError가 아닌 지정한 값을 리턴할 수 있습니다. 아무 값도 지정하지 않는다면 None을 리턴하죠. (https://www.pymoon.com/entry/파이썬에서-딕셔너리-키-값-체크하기)
이와 같은 방법으로 파이썬에서 switch-case문(처럼) 을 사용할 수 있습니다.
'Python > Python' 카테고리의 다른 글
파이썬 클래스 상속 (0) | 2017.01.16 |
---|---|
파이썬 얕은 복사와 깊은 복사 (0) | 2017.01.09 |
파이썬에서 딕셔너리 키 값 체크하기 (1) | 2016.04.22 |
파이썬에서의 getter와 setter (0) | 2016.04.22 |
파이썬에서 문자열 합치기 (0) | 2016.04.10 |
Comments