알고리즘/코드워

[python]Get Planet Name By ID

(ㅇㅅㅎ) 2020. 4. 24. 21:32
728x90
반응형

https://www.codewars.com/kata/515e188a311df01cba000003/train/python

 

Codewars: Train your coding skills

Codewars is where developers achieve code mastery through challenge. Train on kata in the dojo and reach your highest potential.

www.codewars.com

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