1. 리스트도 문자열처럼 인덱싱과 슬라이싱 적용이 가능하다.
Q. 1, 2, 3까지 자르시오
A. a[:3]
✏️ a[0]은 0번째 숫자 '1'을 가리키지만 슬라이싱은 a[:1]이다. 원리 그림 꼭 기억하기
2. 마지막 요소 값은 [-1] 임을 기억하자.
a = [ 1, 2, 3, [ 'a', 'b', 'c']]
Q. 'b' 값을 꺼내시오
A. a[-1][1]
✏️ a[3][1]이라고 생각했는데(틀린 건 아님) [-1]이 맨 뒤 요솟값을 가리킨다는 걸 자꾸 까먹는다. 기억하자!
3. '문자' + 숫자 = 불가능
TypeError: unsupported operand type(s) for +: 'int' and 'str'
✏️ 기존의 자바스크립트에는 '문자' + 숫자 = '문자열'로 변환되어 나와서 아무 생각 없이 더해줬었는데 그러면 절대 안 됨!
✏️ 더하고 싶다면 숫자를 문자로 변환해 주어야 됨 ==> str(3) + '육구' / '3' + '육구'
4. sort vs sorted
리스트명.sort()
: 리스트 원본을 정렬함 / 원본 자체가 바뀌어있음 / 반환값 없음
sorted(리스트명)
: 리스트 원본은 그대로임 / 정렬된 값을 반환함
문제로 풀어보기
문제 ) 프로그래머스 - 뒤에서 5등까지
Q. 정수로 이루어진 리스트 num_list가 주어집니다.
num_list에서 가장 작은 5개의 수를 오름차순으로 담은 리스트를 return 하도록 solution 함수를 완성해 주세요.
num_list = [12, 4, 15, 46, 38, 1, 14]
result = [1, 4, 12, 14, 15]
def solution(num_list):
answer = []
answer = sorted(num_list)[:5]
return answer
✏️ sorted(리스트명) 사용해서 오름차순 만들기
✏️ 인덱스 num_list[0] ~ num_list[4]까지 슬라이싱하기
'알고리즘 > Python 기초' 카테고리의 다른 글
파이썬 - 나머지가 1이 되는 수 찾기(lv.1) (0) | 2023.05.20 |
---|---|
파이썬 - 약수의 합(lv.1) (0) | 2023.05.20 |
파이썬 - 짝수와 홀수(lv.1) (0) | 2023.05.20 |
파이썬 - 평균 구하기(lv.1) (0) | 2023.05.20 |
SyntaxError: can't assign to operator 오류 (0) | 2023.05.16 |