Idealim
article thumbnail
Published 2021. 10. 21. 12:06
[Python] 리스트 Coding Language/Python

/* 본 게시물은 ' 이것이 코딩 테스트다 with Python | 나동빈 ' 의 내용과 참고자료를 토대로 작성되었습니다. */

/* 본 글은 개인적으로 공부한 내용을 정리한 글이므로 오류가 있을 수 있습니다. */

참고 자료

[점프 투 파이썬] 리스트 자료형 : https://wikidocs.net/14


#리스트 자료형

리스트는 여러 개의 데이터를 연속적으로 담아 처리하기 위해 사용한다. 리스트는 시퀀스(순서) 자료형(string, list, tuple)이다. 내부적으로 배열을 채택하고 있으며, 연결 리스트 자료구조 기능을 포함하고 있어서 append(), remove() 등의 메서드를 지원한다. 파이썬에서는 따로 배열이 있지 않고 리스트를 사용한다. 


리스트 만들기

a = [1, 2, 3, 4, 5, 6]
a[0] # 1
a = list() # 빈 리스트 선언 방법 1
a = [] # 빈 리스트 선언 방법 2
# * 연산자로 크기가 N이고 값이 0 인 1차원 리스트 생성
n = 5
a = [0] * n # [0, 0, 0, 0, 0]

리스트 인덱싱

# 리스트 인덱싱
a = [1, 2, 3, 4, 5, 6]

# 뒤에서 첫 번째 원소 출력
print(a[-1]) # 6

# 뒤에서 세 번째 원소 출력
print(a[-3]) # 4

# 두 번째 원소 값 변경
a[1] = 10 # [1, 10, 3, 4, 5, 6]

리스트 슬라이싱

# 리스트 슬라이싱
a = [1, 2, 3, 4, 5, 6]

# a : b -> a ~ b-1 인덱스 데이터 슬라이싱
print(a[1 : 3]) # [2,3]
print(a[1 : -1]) # [2, 3, 4, 5]

# a : b : step
print(a[::2]) # [1, 3, 5]
print(a[::-1]) # reverse [6, 5, 4, 3, 2, 1]


리스트 컴프리헨션

# 0~19 사이에 있는 짝수의 배열
array = [i for i in range(20) if i % 2 == 0]
print(array) # [0, 2, 4, 6, 8, 10, 12, 14, 16, 18]

2차원 리스트 

# NxM 크기의 2차원 리스트 생성
n = 4
m = 3
arr2d = [[0] * n for _ in range(m)]
print(arr2d) # [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]

리스트 메서드

메서드 명 설명
append() 리스트에 원소를 하나 삽입할 때 사용한다.
extend([list]) 리스트에 원소를 여러 개 삽입할 때 사용한다.
sort()
sort(reverse=True)
리스트를 오름차순으로 정렬한다.
리스트를 내림차순으로 정렬한다.
reverse() 리스트를 역순으로 뒤집을 때 사용한다.
insert(index, value) 특정 위치에 원소를 삽입할 때 사용한다.
count(value) 리스트에서 특정 값을 가지는 데이터의 개수를 셀 때 사용한다.
remove(value) 특정한 값을 갖는 원소를 제거하는데, 값을 가진 원소가 여러 개면 하나만 제거한다.
pop(index) 특정 위치에 원소를 꺼낼 때 사용한다.
index(value) 특정 값의 위치 값을 반환하는데, 값을 가진 원소가 여러 개면 가장 작은 위치 값을 반환한다.
# 리스트 메서드

# append(): 한 개 원소 추가
a = [1, 2, 3, 4, 5, 6]

a.append(7)
print(a) # [1, 2, 3, 4, 5, 6, 7]

a.append([1, 3])
print(a) # [1, 2, 3, 4, 5, 6, 7, [1, 3]]

# extend(): 여러 개 원소 추가
a = [1, 2, 3, 4, 5, 6]
a.extend([7, 8, 9])
print(a) # [1, 2, 3, 4, 5, 6, 7, 8, 9]

# pop(index) : 요소 꺼내기
a = [1, 2, 3, 4, 5, 6]

a.pop() # 6
print(a) # [1, 2, 3, 4, 5]

a.pop(0) # 1
print(a) # [2, 3, 4, 5]

#index(value) : value 의 index 값 반환, value 가 여러개 일 경우 가장 작은 index 출력
a = [1, 2, 3, 2, 1]
print(a.index(2)) # 1

 

반응형
profile

Idealim

@Idealim

읽어주셔서 감사합니다. 잘못된 내용이 있으면 언제든 댓글로 피드백 부탁드립니다.