문제 설명
문자열 배열 strlist가 매개변수로 주어집니다. strlist 각 원소의 길이를 담은 배열을 return 하도록 solution 함수를 완성해주세요.
제한사항
- 1 ≤ strlist 원소의 길이 ≤ 100
- strlist는 알파벳 소문자, 대문자, 특수문자로 구성되어 있습니다.
입출력 예
| strlist | result |
| ["We", "are", "the", "world!"] | [2, 3, 3, 6] |
| ["I", "Love", "Programmers."] | [1, 4, 12] |
내 풀이
def solution(strlist):
answer = []
for i in strlist:
answer.append(len(i))
return answer
회고
- for문을 돌면서 strlist 배열 요소들의 길이를 answer 배열의 요소로 넣게 된다.
- return [ len(i) for i in strlist ] 이거 깔끔해보인다.
- 리스트 컴프리헨션이라는 게 있다는 걸 자꾸 까먹는구만. 리스트 컴프리헨션이랑도 친해지자.
리스트 내포(List Comprehension)
- for문을 돌며 append를 통해 요소를 추가하는 코드의 경우, 리스트 컴프리헨션으로 간단하게 표현할 수 있다.
- [ 표현식 for 항목 in 반복가능객체 if 조건문 ] 과 같이 표현
- for문에서 반복되는 변수를 콜론(:) 다음에 쓰는 것이 아니라 for문 앞에 작성
- 리스트 컴프리헨션에서 사용하는 변수는 for문 내부에 인자로 넣은 변수와 같다.
- 예시:
#before
for i in lists:
answer.append(i * 3)
#after
answer = [i * 3 for i in lists]
'Programmers > Python' 카테고리의 다른 글
| [프로그래머스] [Python] 제곱수 판별하기 (0) | 2022.11.10 |
|---|---|
| [프로그래머스] [Python] 문자열 안에 문자열 (0) | 2022.11.10 |
| [프로그래머스] [Python] 머쓱이보다 키 큰 사람 (0) | 2022.11.09 |
| [프로그래머스] [Python] 양꼬치 (0) | 2022.11.09 |
| [프로그래머스] [Python] 두 수의 나눗셈 (0) | 2022.11.09 |