Stay Hungry Stay Foolish

파이썬 강의/파이썬을 파이썬답게

[파이썬을 파이썬답게] Part 01. Python 꿀팁 (Programmers)

dev스카이 2023. 10. 16. 21:57

☐ 문제

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

정수를 담은 이차원 리스트, mylist 가 solution 함수의 파라미터로 주어집니다. mylist에 들은 각 원소의 길이를 담은 리스트를 리턴하도록 solution 함수를 작성해주세요.

 

☐ 제한 조건

  • mylist의 길이는 100 이하인 자연수입니다.
  • mylist 각 원소의 길이는 100 이하인 자연수입니다.

 

☐ 입출력 예


☑ Solution

def solution(mylist):
    answer = []
    for i in range(len(mylist)):
        answer.append(len(mylist[i]))
    return answer

이렇게 풀었는데 다음 강의에서 뼈를 맞았다. 위의 코드는 c언어나 자바에 가까워서 파이썬답지 않다고 한다. 다음 풀이가 정석이라고 한다.

 

✔ Feedback ✔

def solution(mylist):
    return list(map(len, mylist))
  • iterable : 자신의 멤버를 한 번에 리턴할 수 있는 객체다. list, str, tuple, dict 등이 여기에 속한다.
  • sequence : int 타입 인덱스를 통해 원소에 접근할 수 있는 iterable이다. iterable의 하위 카테고리라고 생각하면 된다. list, str, tuple이 여기에 속한다. (dictionary는 다양한 타입을 통해 원소에 접근할 수 있기 때문에 sequence에 속하지 않다.)