NIRVANA

[level 1] 서울에서 김서방 찾기 본문

Coding test(Python3)/Programmers

[level 1] 서울에서 김서방 찾기

녜잉 2023. 7. 11. 00:11

문제

String형 배열 seoul의 element중 "Kim"의 위치 x를 찾아, "김서방은 x에 있다"는 String을 반환하는 함수, solution을 완성하세요. seoul에 "Kim"은 오직 한 번만 나타나며 잘못된 값이 입력되는 경우는 없습니다.

 

 

문제 풀이 접근법1

1) 문자열 리스트 중 'Kim'이 저장되어 있는 리스트의 위치를 반복문을 통해 찾는다

2) 찾은 위치를 변수에 저장한 뒤, 출력한다

def solution(seoul):
    answer = ''
    find = 0
    for i in range(len(seoul)):
    
        if seoul[i] == 'Kim':
            find = i

    answer = '김서방은 {}에 있다'.format(find)
    return answer

 


다른 분들 풀이

def findKim(seoul):
    # 함수를 완성하세요

    return "김서방은 {}에 있다".format(seoul.index('Kim'))


# 실행을 위한 테스트코드입니다.
print(findKim(["Queen", "Tod", "Kim"]))

index()가 있다는 걸 처음 알았다.

index()는 배열에서 값의 위치를 찾아주고, 만약 중복이 있을 경우 가장 최소의 위치를 리턴한다고 한다. 

다음번에는 index함수를 사용해봐야지!

find함수는 문자열에서만 사용가능하지만 index함수는 문자열, 리스트, 튜플에서 사용 가능하다고 한다

참고: https://ooyoung.tistory.com/78

 

파이썬 find( ), index( ) 비교 / 인덱스, 위치를 찾는 함수(Python)

파이썬 find( ), index( ) - 순서 - 1.find / index 공통적인 내용 2.find / index 차이점 1. find( ), index( ) 공통적인 내용 1-1) 두 함수의 동일한 사용방법 '변수. find(찾을 문자)' / '변수. index(찾을 문자)'형태로

ooyoung.tistory.com

 

'Coding test(Python3) > Programmers' 카테고리의 다른 글

[level 1] 음양 더하기  (0) 2023.07.11
[level 1]나누어 떨어지는 숫자 배열  (0) 2023.07.11
[level 1] 콜라츠 추측  (0) 2023.07.10
[level 1] 두 정수 사이의 합  (0) 2023.07.10
[level 1] 하샤드 수  (0) 2023.07.09