
프로그래머스 LV1 가운데 글자 가져오기(연습문제)
2021, Apr 02
프로그래머스 lv1 가운데 글자 가져오기(연습문제)
문제 설명
단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요.
단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다.
제한사항
- s는 길이가 1 이상, 100이하인 스트링입니다.
입출력 예
s | return |
---|---|
“abcde” | “c” |
“qwer” | “we” |
풀이
def solution(s):
answer = ''
if len(s) % 2 != 0: # 홀수
answer = s[len(s)//2]
else: # 짝수
answer = s[len(s)//2 - 1 : len(s)//2 + 1]
return answer
if __name__ == "__main__":
s = "abcde" #return = "c"
# s = "qwer" #return = "we
# s = "poweristhecostofmyconfidence"
print(solution(s))
# 다른 사람 풀이 1
def string_middle(str):
# 함수를 완성하세요
return str[(len(str)-1)//2:len(str)//2+1]
# 아래는 테스트로 출력해 보기 위한 코드입니다.
print(string_middle("poweristhecostofmyconfidence"))
index에선 소수점으로 나오면 그 전까지만 나옴. 그것을 이용한 인덱싱 코드
다른 의견: 인덱스가 소수점이면 그전까지만 포함된다기보다.. 인덱스가 소수점이 나올걸 예상해서 정수로 바꿔주는 작업(//)을 해준게 맞다고 봅니다. 실제로 파이썬3에서 s[1.5:2]라고 쓰면 에러나던데요..
위 사람 말이 맞다
//
연산자는 나눈 후 소수점을 버림.
/
연산자는 나눈 후 소수점도 계산
출처: 프로그래머스 코딩 테스트 연습, https://programmers.co.kr/learn/challenges