728x90
반응형
https://www.codewars.com/kata/515e188a311df01cba000003/train/python
python에서는 switch문이 없습니다. switch문 없이 id를 입력받았을 때 다른 값이 출력될 수 있도록 코드를 만들면 됩니다. 간단하게 2가지 방법을 소개해보겠습니다.
1. if와 elif를 사용하는 방법
# 1. if와 elif 사용
def get_planet_name(id):
if id == 1:
return 'Mercury'
elif id == 2:
return 'Venus'
elif id == 3:
return 'Earth'
elif id == 4:
return 'Mars'
elif id == 5:
return 'Jupiter'
elif id == 6:
return 'Saturn'
elif id == 7:
return 'Uranus'
elif id == 8:
return 'Neptune'
|
2. 리스트에 넣고 출력하는 방법
이 방법은 이 문제가 단순히 문자를 리턴하는 문제이기 때문에 가능합니다.
# 2. 배열 사용
def get_planet_name(id):
answer = ['Mercury', 'Venus', 'Earth', 'Mars', 'Jupiter', 'Saturn', 'Uranus', 'Neptune']
return answer[id - 1]
|
이 외에도 다른 방법들이 있다고 생각이 됩니다.
전체 코드
# 1. if와 elif 사용
def get_planet_name1(id):
if id == 1:
return 'Mercury'
elif id == 2:
return 'Venus'
elif id == 3:
return 'Earth'
elif id == 4:
return 'Mars'
elif id == 5:
return 'Jupiter'
elif id == 6:
return 'Saturn'
elif id == 7:
return 'Uranus'
elif id == 8:
return 'Neptune'
# 2. 배열 사용
def get_planet_name2(id):
answer = ['Mercury', 'Venus', 'Earth', 'Mars', 'Jupiter', 'Saturn', 'Uranus', 'Neptune']
return answer[id - 1]
if __name__=='__main__':
print(get_planet_name1(2))
print(get_planet_name2(5))
print(get_planet_name1(3))
print(get_planet_name2(4))
print(get_planet_name1(8))
print(get_planet_name2(1))
|
반응형
'알고리즘 > 코드워' 카테고리의 다른 글
[python]Largest 5 digit number in a series (0) | 2020.04.25 |
---|---|
[python]Sudoku Solution Validator (0) | 2020.04.24 |
[python]Total amount of points (0) | 2020.04.22 |
[python]Expressions Matter (0) | 2020.04.20 |
[python]Abbreviate a Two Word Name (0) | 2020.04.19 |