본문 바로가기

Python 연습문제

서울에서 김서방 찾기

이것도 좀 이상해서 포스팅 남김

 

주어진 상황은

 

일단 문제부터가 헷갈리는데

 

seoul 이라는 리스트가 주어지고 그 안에서는 kim 이 위치한 위치를 찾는 문제 인데, 이걸 저렇게 어렵게 써놨다니

 

그래서 내가 처음에 접근한 방식은

 

def solution(seoul):
    answer = f'김서방은 {seoul.index('Kim')}에 있다'
    return answer

 

 

안돌아네 잉..? 왜 안돼지.............

 

그래서 다른 사람이 작성한것 참고해서 index 함수가 아니라 while을 사용하는걸로 접근

 

def soution(seoul):
    while i<1000:
        if seoul[i]=='Kim':
            return i
        else:
            i=i+1
    print(f'김서방은 {i}에 있다')

 

잉..? 이것도 결과는 같게 나오는데 프로그램상으로는 오류라고 인식함.

 

아무리 고민해도 모르겠어서 매니저에게 질의 하였고

 

파이썬에서 print 는 그저 화면에 보이는것이기에 어떠한 값을 배정하는것이 아니라고 답변 받음

 

수정한 결과

 

def solution(seoul):
    i = 0
    while i < 1000:
        if seoul[i] == 'Kim':
            return f'김서방은 {i}에 있다'
        else:
            i = i + 1

 

return 자체에 원하는 결과값을 작성하는식으로 마무리.

 

 

그리고 index 관련해서 질의하니까 내가 작성한대로 하면 안되는데 seoul.index('Kim') 을 변수로 지정해서 하니 작동함

뭔가 뭔지 모르겠지만

 

같은 문제를 가지고 여러가지로 접근해본 경험이었다.

 

def solution(seoul):
    answer = seoul.index('Kim')
    return f'김서방은 {answer}에 있다'

'Python 연습문제' 카테고리의 다른 글

음양 더하기  (0) 2024.06.14
나누어 떨어지는 숫자 배열  (1) 2024.06.13
두 정수 사이의 합  (1) 2024.06.12
하샤드 수  (0) 2024.06.11
정수 내림차순으로 배치하기  (0) 2024.06.11