[Python] list 예제(1) - adding two elements

meekukin·2019년 11월 29일
0

study-python

목록 보기
6/18
  • Assignment

Input으로 주어진 리스트의 첫번째와 마지막 element의 값을 더한 값을 리턴 해주세요.
만일 리스트가 비어있다면 0이 리턴되어야 합니다.
리스트의 총 길이가 1이라면 그 하나의 요소 값만 리턴해주면 됩니다.

예를 들어, 다음의 리스트가 주어졌다면:

inputs = [1, 2, 3, 4, 5]

다음과 같은 결과물이 출력 되어야 합니다.

6

만일 다음의 리스트가 주어졌다면:

inputs = [1]

다음과 같은 결과물이 출력 되어야 합니다.

1

Hint: list의 총길이는 다음처럼 len 함수를 사용해서 알아낼 수 있습니다.

length = len(inputs)


def add_first_and_last_elements(my_list):
  # 이 함수를 구현해주세요
  
    if len(my_list) == 0:
      return 0
    elif len(my_list) ==1:
      return my_list[0]
    else:
      return my_list[0]+my_list[-1]
    

또는

def add_first_and_last_elements(my_list):
  # 이 함수를 구현해주세요
  
    if len(my_list) == 0:
      return 0
    if len(my_list) ==1:
      return my_list[0]
    
    return my_list[0]+my_list[-1]

  • 처음에는 인풋으로 주어진 리스트를 알 수가 없어서 먼저 정의해줘야한다고 생각했다. 그런데 정의를 해주면 문제에 나와있는 조건들을 만족시킬 수 없고 그렇다고 빈 리스트를 애초에 설정해놓으면 0이라는 같은 값만 리턴된다. 리스트 자체보다는 우선 모르기때문에 리스트의 길이를 아는 것에 더 초점을 맞춘다.

  • 우선 if문으로 문제에 나와있는 조건들을 작성한다. 먼저 리스트가 비어있는 경우, 리스트의 길이는 0이 되고 문제에 나와있듯 0이 리턴되어야 한다. 리스트의 길이가 1일 경우에는 하나의 요소만 리턴되기 때문에 리스트에 첫번째 값인 my_list[0] 을 리턴해줘야한다. 마지막으로 그 외에 값들은 리스트의 첫번째 값과 마지막 값인 my_list[-1] 을 더해주는 문장을 작성해주면 된다.

  • 답이 두가지 경우로 썼는데 elif 와 if을 쓰는 경우이다. 결과는 같지만 어차피 마지막 리턴값은 조건을 굳이 써주지 않아도 되기 때문에 두번째 답안과 같이 작성할 수 있다.

profile
졸꾸 !!!

0개의 댓글