PROGRAMMERS Python Lv1. 가운데 글자 가져오기

최대 1 분 소요

이번 문제는 가운데 글자 가져오기이다.

나의 정답코드는 아래와 같다.

def solution(s):
    a = len(s) // 2
    for idx in range(len(s)):
        if len(s) % 2 == 0:
            answer = s[a-1:a+1]
        else:
            answer = s[a]
    return answer

이 문제는 다른 문제들보다 풀이법이 간단하다.

가운데 글자를 가져오려면 홀수일 경우는 2로 나눈 몫을 가져오면 되고,

길이가 짝수라면 몫과 몫-1의 범위를 가져오면 된다.

그렇지만 이번에도 더 짧게 푼 사람의 코드를 분석하고, 배워보려고 한다.

def solution(s):

    return s[(len(str)-1)//2:len(str)//2+1]

s를 슬라이싱해서 답을 구했다.

이 코드는 길이가 홀수이든 짝수이든 상관없이 한줄로

코드를 짤 수 있다. 나이 코드가 8줄인 것에 비해

이 코드가 더 간편하게 잘 짜여진 코드라고 할 수 있다.

혹시 제 풀이에 오류가 있거나

더 좋은 방법이 있다면 댓글 남겨주시면 감사드립니다.

댓글남기기