[python study note] 리스트
List
![[python study note] 리스트](/_next/image?url=https%3A%2F%2Fcdn.hashnode.com%2Fres%2Fhashnode%2Fimage%2Fupload%2Fv1709195434162%2F8dc2e92c-9c20-4cda-a874-e49e5ef03359.png&w=3840&q=75)
1. 리스트
대괄호[ ]로 시작하고 값들을 쉼표로 나눠주고 대괄호로 끝내면 된다.
리스트 안에 있는 값들 하나하나를 리스트의 요소라고 부른다.
numbers = [1,2,4,6,7,8] #정수형이 담긴 리스트
names = ['토니', '로켓', '톰', '스티브', '넷'] #문자열이 담긴 리스트
리스트에서 요소의 위치를 인덱스(index)라고 하고,
인덱스를 통해 요소를 받아오는걸 인덱싱(indexing)이라 한다.
names = ['토니', '로켓', '톰', '스티브', '넷']
print(names[1]) #로켓
마이너스 인덱스
첫번째 인덱스가 0이기 때문에 -1은 8, -2는 7
numbers = [1,2,4,6,7,8] #정수형이 담긴 리스트
names = ['토니', '로켓', '톰', '스티브', '넷'] #문자열이 담긴 리스트
print(numbers[-1]) #8
print(numbers[-2]) #7
리스트 슬라이싱 (list slicing)
numbers = [1,2,4,6,7,8]
print(numbers[0:4]) #[1, 2, 4, 6]
리스트의 인덱스0부터 인덱스 3까지 자르는것
print(numbers[2:]) #[4, 6, 7, 8]
인덱스 2부터 마지막 요소까지
print(numbers[:3]) #[1, 2, 4]
인덱스 0번째부터 인덱스 2까지의 요소가 들어간 리스트
numbers = [1,2,4,6,7,8]
num_list = numbers[:3] #[1, 2, 4]
print(num_list[2]) #4
리스트의 요소 바꾸기
numbers = [1,2,4,6,7,8]
numbers[0] = 7 #정수7을 인덱스 0의 자리에 저장
print(numbers) #[7, 2, 4, 6, 7, 8]
0번 인덱스 요소와 1번 인덱스 요소를 더한것 -> 3
numbers[0] = numbers[0] + numbers[1]
print(numbers) #[3, 2, 4, 6, 7, 8]
2. 리스트 함수
len 리스트 요소 개수 구하기
numbers = [2,5,6,7]
print(len(numbers)) #4
append 리스트 요소 추가
append는 오른쪽 끝에 값 추가하는 것 -> 추가연산
numbers = []
numbers.append(5)
numbers.append(6)
print(numbers) #[5,6]
del 리스트 요소 삭제
numbers = [1,2,5,6,7,8,9,13]
del numbers [3]
print(numbers) #[1, 2, 5, 7, 8, 9, 13]
insert 리스트 요소 삽입
insert는 원하는 위치에 값 삽입하는 것 -> 삽입연산
numbers = [1,2,5,6,7,8,9,13]
numbers.insert(3, 55)
print(numbers) #[1, 2, 5, 55, 6, 7, 8, 9, 13]
3. 리스트 정렬
sorted 작은 순서로 정렬
sorted함수는 기존의 numbers를 건드리지 않는다.
정렬된 새로운 리스트를 만들어서 리턴한다.
numbers = [6, 18, 12, 5, 7, 2]
new_list = sorted(numbers)
print(new_list) #[2, 5, 6, 7, 12, 18]
반대로 정렬
numbers = [6, 18, 12, 5, 7, 2]
new_list = sorted(numbers, reverse = True)
print(new_list) #[18, 12, 7, 6, 5, 2]
sort
sort는 아무것도 리턴하지 않고 numbers 리스트 자체를 정렬한다.
numbers = [6, 18, 12, 5, 7, 2]
print(numbers.sort()) #None
정렬된 리스트를 보고싶다면 numbers를 print 해야한다.
numbers = [6, 18, 12, 5, 7, 2]
numbers.sort()
print(numbers) #[2, 5, 6, 7, 12, 18]
sorted : 기존 리스트는 건드리지 않고 정렬된 새로운 리스트를 리턴 sort : 아무것도 리턴하지 않고 기존 리스트를 정렬




