sein-choi 님의 블로그
[Python : basic] 리스트 본문
리스트
여러개의 값을 하나의 변수에 저장할 수 있는 순서가 있는 자료형이다
리스트의 특징
1. 리스트 내의 각 요소는 순서를 가지고 있다
2. 다양한 데이터 타입을 저장할 수 있다
3. 리스트 생성 후에 요소를 추가, 제거, 변경 할 수 있다(가변성)
리스트 만들기 : [요소1, 요소2] or list(요소1, 요소2)
list = [1,2,3,'사과']
list = list(1,2,3,'사과')
print(list) # 1,2,3,'사과'
✅리스트 인덱싱
특정 요소에 접근하거나 조작하기 위해 사용한다
리스트의 각 요소는 0부터 시작하는 인덱스를 가지고 있다
인덱스를 사용하여 요소를 식별하고 특정 요소를 가져오거나 변경할 수 있다
리스트 인덱싱 : [인덱스]
문자열 인덱싱과 마찬가지로 음수 인덱스를 사용하면 리스트의 끝에서부터 요소를 선택한다
num = ['zero', 'one', 'two', 'three']
print(num[0]) # zero
print(num[-1]) # three
인덱스를 이용하여 요소 변경
num = ['zero', 'one', 'two', 'three']
num[0] = 0
print(num) # [0, 'one', 'two', 'three']
✅리스트 슬라이싱
리스트의 일부분을 추출하여 새로운 리스트를 생성한다
원본 리스트는 변경되지 않는다
리스트 슬라이싱 : [시작 인덱스 : 끝 인덱스 : 스탭(선택사항)]
시작 인덱스 : 슬라이스의 시작 위치를 설정한다
단, 시작 인덱스를 포함
끝 인덱스 : 슬라이스의 끝 위치를 설정한다
단, 끝 인덱스를 포함하지않음
스탭 : 요소를 선택하는 간격을 설정한다
fruit = ['apple', 'orange', 'banana', 'melon']
print(fruit[0:2]) # ['apple', 'orange']
시작 인덱스 생략 : [ : 끝 인덱스]
리스트의 처음부터 끝 인덱스 전까지 추출한다
끝 인덱스 생략: [시작 인덱스 : ]
시작 인덱스부터 리스트의 마지막까지 추출한다
시작 인덱스와 끝 인덱스 모두 생략 : [ : ]
리스트를 복사한다
fruit = ['apple', 'orange', 'banana', 'melon']
print(fruit[:2]) # ['apple', 'orange']
print(fruit[2:]) # ['banana', 'melon']
print(fruit[:]) # ['apple', 'orange', 'banana', 'melon']
🔶리스트 스탭
fruit = ['apple', 'orange', 'banana', 'melon']
print(fruit[0:4:2]) # ['apple', 'banana']
print(fruit[::2]) # ['apple', 'banana']
🔶리스트 음수 슬라이싱
문자열과 마찬가지로 문자열의 끝에서부터 인덱스를 할당하여 추출한다
fruit = ['apple', 'orange', 'banana', 'melon']
print(fruit[-3:-1]) # ['orange', 'banana']
🔶리스트 음수 스탭
리스트를 역순으로 추출한다
fruit = ['apple', 'orange', 'banana', 'melon']
print(fruit[::-1]) # ['melon', 'banana', 'orange', 'apple']
✅리스트 검색 : count, index
🔶리스트에서 검색 값의 출현 횟수 : .count(검색 값)
fruit = ['apple', 'orange', 'banana', 'melon', 'apple']
print(fruit.count('apple')) # 2
🔶리스트에서 검색 값의 첫번째 인덱스 찾기 : .index(검색 값)
리스트 전체 범위에서 검색 값의 인덱스 찾기
리스트 범위 설정 : .index('검색 값', 시작 인덱스, 끝 인덱스)
리스트의 시작 인덱스에서 끝 인덱스 사이에서 검색 값의 인덱스 찾기
fruit = ['apple', 'orange', 'banana', 'melon', 'apple']
print(fruit.index('apple')) # 0
print(fruit.index('apple',1,5)) # 4
print(fruit.index('apple',1)) # 4
✅리스트 삽입 : append, extend, insert
🔶리스트의 끝에 값을 추가 : .append(추가할 값)
num = [1,2,3,4]
num.append(5)
print(num) # [1,2,3,4,5]
🔶리스트의 끝에 다른 리스트의 전체 값을 추가 : .extend(추가할 리스트)
num1 = [1,2,3,4]
num2 = [5,6,7,8,9]
num1.extend(num2)
print(num1) # [1,2,3,4,5,6,7,8]
🔶지정된 위치에 값을 추가 : .insert(인덱스, 추가할 값)
num = [1,2,3,5]
num.insert(3,4)
print(num) # [1,2,3,4,5]
✅리스트 삭제 : remove, pop, clear
🔶리스트에서 첫번째로 등장하는 삭제할 값을 제거 : .remove(삭제할 값)
num = [0,1,2,3,4,5,0]
num.remove(0)
print(num) # [1,2,3,4,5,0]
🔶리스트에서 인덱스를 활용하여 값 삭제 : .pop(삭제할 값의 인덱스)
그 후 삭제한 값을 변수에 저장 : 변수 = 리스트.pop(삭제할 값의 인덱스)
단, 인덱스를 생략하면 리스트의 마지막 요소를 삭제하고 반환한다
num = [1,2,3,4,5]
removed_num = num.pop(0)
print(num) # [2,3,4,5]
print(removed_num) # 1
🔶리스트의 모든 요소를 삭제 : .clear( )
num = [1,2,3,4,5]
num.clear()
print(num) # []
✅리스트 정렬
🔶리스트 요소 정렬 : .sort( ) - 오름차순 / .sort(reverse = True) - 내림차순
# 오름차순
num1 = [2,4,3,5,1]
num1.sort()
print(num1) # [1,2,3,4,5]
# 내림차순
num2 = [2,4,3,5,1]
num2.sort(reverse = True)
print(num2) # [5,4,3,2,1]
🔶리스트 요소의 순저 뒤집기 : .reverse( )
num = [2,4,3,5,1]
num.reverse()
print(num) # [1,5,3,4,2]
✅리스트 값 분석
🔶리스트 최댓값 : max( )
num = [1,2,3,4,5]
print(max(num)) # 5
🔶리스트 최솟값 : min( )
num = [1,2,3,4,5]
print(min(num)) # 1
🔶리스트의 모든 요소의 합 : sum( )
num = [1,2,3,4,5]
print(sum(num)) # 15
🔶리스트 요소 갯수 : len()
num = [1,2,3,4,5]
print(len(num)) # 5
출저 : 스파르타코딩, 데이콘
'python > 기본' 카테고리의 다른 글
[Python : basic] 딕셔너리 (1) | 2024.11.18 |
---|---|
[Python : basic] 자료형(문자열) (1) | 2024.11.18 |
[Python : basic] 자료형(불리언) (0) | 2024.11.17 |
[Python : basic] 기본 산술 연산자, 복합 대입 연산자 (1) | 2024.11.16 |
[Python : basic] 주석, 변수, 자료형 (0) | 2024.11.16 |