본문 바로가기
python& Django

파이썬 : 자료형 (List)

List : 리스트

리스트는 순서를 가지는 객체이며, 배열의 개념과 같다.

[] 를 사용하여 나타내며, 각 요소는 , 로 구분해준다.

리스트는 요소로 모든 자료형을 받을 수 있다.

리스트의 인덱싱은 0부터 시작한다. (문자열과 같음)

리스트 슬라이싱은 문자열 슬라이싱과 완전히 동일하다.

 

 

리스트 만들기

lst1 = []
lst2 = list() 

"""
list(range(4,5)) 이런 식으로 range 내장 함수를 이용해서 list() 함수에 정수 값을
넣어서 생성할 수도 있다.
"""

 

증가폭 사용하여 리스트 만들기

l = list(range(10, 0, -1))

print(l) #[10, 9, 8, 7, 6, 5, 4, 3, 2, 1]

"""
range(횟수)
range(시작, 끝) # 끝의 직전까지 들어간다.
range(시작, 끝, 증가폭)
"""

 

리스트 연산 (더하기, 곱하기, 길이 구하기)

lst1 = [1, 2, 3]
lst2 = [4, 5, 6]

print(lst1 + lst2) # [1, 2, 3, 4, 5]
print(lst1*2) # [1, 2, 3, 1, 2, 3]
print(len(lst1)) # 3

 

리스트의 요소 추가, 수정, 삭제하기

- 일반적인 인덱스 활용

test[인덱스] = 0 

-지정한 인덱스에 값을 할당한다.
-기존 인덱스가 존재한다면, 지정한 값이 들어간다.
-기존 인덱스가 없다면, IndexError 가 발생한다.

 

list.append(x)

- 리스트의 끝에 항목 x를 더한다. 

- a[len(a):] = [x] 와 같다

 

list.extend(iterable)

- 리스트의 끝에 반복가능한 객체를 덧붙인다.

- a[len(a):] = iterable 과 같다.

 

list.insert(i, x) *i, x : index, value

- 지정한 인덱스에 값을 넣는다. (리스트는 늘어나지 않는다)

- 지정한 인덱스가 존재하지 않는다면 (지정한 인덱스가 리스트의 사이즈보다 큰 경우), append() 와 같은 동작을 한다.

 

list.remove(x)

- 리스트에서 값이 x 인 항목을 삭제한다.

- 값이 없다면 ValueError 가 발생한다.

 

list.pop([i])

- 지정한 인덱스의 값을 삭제하고, 그 값을 리턴한다.

- 인덱스를 지정하지 않으면, 마지막 인덱스의 요소를 삭제하고 리턴한다.

- 지정한 인덱스가 존재하지 않는다면(사이즈 보다 큰 경우) IndexError 가 발생한다.

 

list.clear()

- 리스트의 모든 항목을 삭제한다.

- del a[:] 과 같다.

- 실행 후 리스트는 존재한다.

 

list.index(x, [, start[, end]]) 

- x 값을 찾아, 그 값의 인덱스를 리턴한다.

- 값이 없다면 ValueError 가 발생한다.

- start, end 는 옵션이며, 검색을 시작할 index 의 시작과 끝 값이다. (슬라이스 표기법 같이 해석된다)

 

list.count(x)

- 리스트에서 값 x가 등장하는 횟수를 리턴한다.

 

list.sort(key=None, reverse=False)

- 리스트의 요소를 정렬한다. 

- reverse=True 를 지정하면 역방향으로 정렬한다.

 

list.reverse()

- 리스트의 요소들을 뒤집는다.

 

list.copy()

- 리스트를 복사하여 새로운 리스트를 생성한다.

 

 

리스트를 스택으로 사용하기

리스트를 큐로 사용하기

리스트 표현식

리스트

 

 

'python& Django' 카테고리의 다른 글

파이썬 : If 조건문  (0) 2020.10.08
파이썬 : 자료형 (dictionary) -작성 중  (0) 2020.10.08
파이썬 : 자료형 튜플(tuple)  (0) 2020.10.08
파이썬 : 자료형 (숫자, 문자)  (0) 2020.10.08
파이썬에 대해서  (0) 2020.10.07