제로베이스 자료구조(14~19)

ningbbang·2023년 3월 31일
0

Zerobase DS13

목록 보기
13/48

1. 리스트 연결
list.extend(리스트명) : 리스트에 또 다른 리스트를 연결할 수 있음
리스트간 +로도 연결 가능

datas1 = ['a','b','c','d']
datas2 = ['e','f','g']

print(datas1)
print(datas2)

datas1.extend(datas2)
print(datas1)

datas1 = ['a','b','c','d']
datas2 = ['e','f','g']
print(datas1)
print(datas2)
print(datas1 + datas2)

2. 리스트 아이템 정렬
list.sort() : 리스트의 아이템을 오름차순으로 정렬
list.sort(reverse=True) : 리스트의 아이템을 내림차순으로 정렬
str : 가나다순
int, float --- : 크기순
다른 Type간의 리스트에는 적용되지 않음

datas = ['e', 'c', 'a', 'f', 'b']
print(datas)
datas.sort()
print(datas)

datas = ['e', 'c', 'a', 'f', 'b']
print(datas)
datas.sort(reverse=True)
print(datas)

3. 리스트 아이템 순서 뒤집기
list.reverse() : 리스트 아이템의 순서를 반대로 뒤집음

datas = ['a', 'b', 'c', 'd']
print(datas)
datas.reverse()
print(datas)

4. 리스트 아이템 슬라이싱
슬라이싱 : 리스트 안에 내용 중 원하는 아이템을 뽑아내는 것
list[n:m] : 리스트의 인덱스 n부터 m까지의 아이템을 출력 (n<=x < m)

datas = ['a', 'b', 'c', 'd']
print(datas)
print(datas[:2])
print(datas[2:])
print(datas[-3:-1])

#result
['a', 'b', 'c', 'd']
['a', 'b']
['c', 'd']
['b', 'c']

슬라이싱을 통해 아이템 변경, 추가, 삭제도 가능

datas = ['a', 'b', 'c', 'd']
datas[:2] = ['a1' ,'b1']
print(datas)

list[slice(idx1, idx2)] : 리스트의 idx1부터 idx2까지 호출

datas = ['a', 'b', 'c', 'd']
print(datas[slice(0,2)])
#result = ['a', 'b']

5. 기타 리스트 기능
1) 리스트 * n : 리스트 자체 복사

datas = ['a', 'b', 'c', 'd']
print(datas)
print(datas * 2)

2) list.index(아이템) : 해당 아이템의 인덱스를 출력

datas = ['a', 'b', 'c', 'd']
print(datas)
print(datas.index('c'))
#result : 2

3) list.count(아이템) : 해당 아이템 개수

datas = ['a', 'a', 'b', 'c', 'd']
print(datas.count('a'))
print(datas.count('b'))

4) del list[인덱스] : 해당 인덱스의 아이템 삭제

datas = ['a', 'a', 'b', 'c', 'd']
print(datas)
del datas[0]
print(datas)

#result
['a', 'a', 'b', 'c', 'd']
['a', 'b', 'c', 'd']
profile
HR Anaylist!

0개의 댓글