29/120

김건호·2022년 3월 22일
0

리스트

생성

리스트명 = [요소1, 요소2, 요소3...]

대괄호 안에 값을 넣어 생성

>>> a=[]
>>> b=[1,2,3]
>>> c=['life','is','too','short']
>>> d=[1,2,'Life','is']
>>> e=[1,2,['Life','is']]

인덱싱 및 슬라이싱

문자열처럼 인덱싱과 슬라이싱 가능

인덱싱

>>> b
[1, 2, 3]
>>> b[0]
1
>>> b[0]+b[2]
4

-는 뒤에서부터 시작

>>> b[-1]
3

삼중 리스트 인덱싱

>>> a=[1,2,['a','b',['Life','is']]]
>>> a[2][2][0]
'Life'

a리스트의 세번째 요소 ['a','b',['Life','is']]에서 3번째 요소인 ['Life','is'] 리스트의 첫 번째 요소를 나타냄

슬라이싱

>>> a=[1,2,3,4,5]
>>> a[0:2]
[1, 2]

문자열과 방식이 같음

리스트 연산자

+기호를 통해 더하고, *를 이용해서 반복 가능

>>> a=[1,2,3]
>>> b=[4,5,6]
>>> a+b
[1, 2, 3, 4, 5, 6]
>>> a*3
[1, 2, 3, 1, 2, 3, 1, 2, 3]

리스트 수정, 삭제

수정

하나의 값 수정

>>> a
[1, 2, 3]
>>> a[1]=4
>>> a
[1, 4, 3]

연속된 범위 값 수정

>>> a
[1, 4, 3, 5]
>>> a[1:3]
[4, 3]
>>> a[1:3]=6,7
>>> a
[1, 6, 7, 5]

주의점 a[1:2]=[]와 a[1]=[]는 다른 것
전자는 사이의 요소를 바꾼다는 뜻이고
후자는 요소의 값을 바꾼다는 뜻

>>> a=[1,2,3]
>>> a[1:2]
[2]
>>> a[1:2]=['a','b','c']
>>> a
[1, 'a', 'b', 'c', 3]
>>> a=[1,2,3]
>>> a[1]=['a','b','c']
>>> a
[1, ['a', 'b', 'c'], 3]

삭제

[] 사용

>>> a=[1,'a','b','c',3]
>>> a[1:3]=[]
>>> a
[1, 'c', 3]
복제와 복사
  • 복제
    b는 a의 콜론 a변경되면 b도 바뀜, id 값 같음
>>> a
[1, 3]
>>> b=a
>>> a
[1, 3]
>>> b
[1, 3]
>>> a[0]=3
>>> a
[3, 3]
>>> b
[3, 3]
>>> id(a)
1462962867968
>>> id(b)
1462962867968
  • 복사
    값만 복사됨 a가 변경되더라도 c변경되지 않음
>>> c=a[:]
>>> a
[1, 3]
>>> c
[1, 3]
>>> a[0]=3
>>> a
[3, 3]
>>> c
[1, 3]

둘 다 같은 삭제이지만 조금 다름

# 새로운 리스트 형태를 부여하기 때문에 id 달라짐
>>> a=[1,2,3]
>>> id(a)
1462962624768
>>> a=[]
>>> id(a)
1462962631168
# 기존의 형태는 유지하기 때문에 id 달라지지 않음
>>> a=[1,2,3]
>>> id(a)
1462962631168
>>> a[:]=[]
>>> id(a)
1462962631168

del 함수

>>> a
[1, 'c', 3]
>>> del a[1]
>>> a
[1, 3]

관련함수

append

리스트에 요소 추가

>>> a=[1,2,3]
>>> a.append(4)
>>> a
[1, 2, 3, 4]

sort

리스트 정렬

>>> a=[1,4,3,2]
>>> a.sort()
>>> a
[1, 2, 3, 4]

reverse

리스트 역순으로 뒤집기

>>> a
[1, 2, 3, 4]
>>> a.reverse()
>>> a
[4, 3, 2, 1]

index

리스트 요소 위치 반환, 값이 없으면 오류

>>> a
[4, 3, 2, 1]
>>> a.index(2)
2

insert

(a,b) 리스트의 a위치에 b요소 추가

>>> a
[4, 3, 2, 1]
>>> a.insert(1,5)
>>> a
[4, 5, 3, 2, 1]

remove

첫번째로 나오는 x값 제거

>>> a=[1,2,3,1,2,3]
>>> a.remove(2)
>>> a
[1, 3, 1, 2, 3]

pop

x번째 요소를 리턴하고 삭제, ()는 맨 뒤에 요소

>>> a.pop()
3
>>> a
[1, 3, 1, 2]
>>> a.pop(1)
3
>>> a
[1, 1, 2]

count

리스트 내에 x 갯수 카운트

>>> a
[1, 1, 2]
>>> a.count(1)
2

extend

a리스트에 x리스트를 더하기

>>> a
[1, 1, 2]
>>> a.extend(['a','b','c'])
>>> a
[1, 1, 2, 'a', 'b', 'c']
profile
Ken, 🔽🔽 거노밥 유튜브(house icon) 🔽🔽

0개의 댓글