문제
처음 작성한 코드
def solution(arr, divisor):
answer = []
for i in arr:
if i%divisor==0:
answer.append(i)
if len(answer)==0:
answer.append(-1)
return sorted(answer)
코드 리뷰 후
def solution(arr, divisor):
return sorted([i for i in arr if i%divisor==0]) or [-1]
깨달은 점
파이썬은 return 할 때, return A or B 이런 식으로 쓸 수 있다. 참이면 A 아니면 B를 return 해준다. 신기하다.
리스트 관련해서 [i for i in arr] 이렇게 쓰는 법은 알고 있었는데 뒤에 조건 붙여도 되는 것을 처음 알게되었다.
'Programmers' 카테고리의 다른 글
2016년 (0) | 2020.12.29 |
---|---|
같은 숫자는 싫어 (0) | 2020.12.29 |
수박수박수박수박수박수? (0) | 2020.12.29 |
문자열 내 마음대로 정렬하기 (0) | 2020.12.29 |
서울에서 김서방 찾기 (2) | 2020.12.28 |