Python 목록 내장 함수 사용법

  다음을 통해 dir(list)목록에 포함된 내장 함수를 봅니다.

1. 요소를 추가하기 위해 추가

  list.append(obj)같은 list += [obj]_

a = [1, 2, 3]
a += [4]
a.append(5)
print(a)

>>> [1, 2, 3, 4, 5]

2. 목록을 지우려면 지우기

  list.clear()같은 list = []_

a = [1, 2, 3]
a.clear()
print(a)

>>> []

3. 카피 카피

  얕은 복사와 깊은
  복사 포함 얕은 복사는 다음과 같습니다 b = a. 복사 후 a와 b는 동일한 주소를 가지며 동일한 메모리 공간을 가리킵니다. 내부 데이터 중 하나가 수정되면 다른 데이터도 함께 수정됩니다(shallow 포함). 함수를 전달할 때 수정되는 복사본).
  깊은 복사는 다음과 같습니다 c = a.copy(). 이때 c는 a에 데이터를 저장하기 위해 새로운 메모리 공간을 열지만 a와 c의 주소는 다르지만 처음 세 데이터를 수정해도 각각 영향을 미치지 않음을 알 수 있습니다. other, but a[3] and c[3] 주소는 동일하므로 네 번째 항목의 두 번째 수준 목록에 있는 데이터를 수정하면 여전히 서로 영향을 미칩니다.
  개인적인 이해: c가 데이터를 저장하기 위해 새로운 메모리 공간을 열었지만 a[3] 자체는 이 두 번째 수준 목록의 주소를 저장하므로 a[3]과 c[3]은 동일한 주소를 가리키고 값을 수정하는 것은 자연스러우며 서로 영향을 미칩니다. 사용하면 copy.deepcopy()내부 레이어도 완전히 딥 카피할 수 있습니다.

import copy

a = [1, 2, 3, [4, 5, 6]]
b = a
c = a.copy()
d = copy.deepcopy(a)
print('a: ', id(a))
print('b: ', id(b))
print('c: ', id(c))
print('a[3]: ', id(a[3]))
print('c[3]: ', id(c[3]))
print('d[3]: ', id(d[3]))

>>> 
a:  140296574785088
b:  140296574785088
c:  140296574786368
a[3]:  140296574785248
c[3]:  140296574785248
d[3]:  140296574784528

4. 카운트 카운트

a = [[1, 2, 3], [1, 2, 3]]
print(a.count([1, 2, 3]))

>>> 2

5. extend는 반복 가능한 객체를 추가합니다.

  list.extend(Iterable)같은 list += Iterable_

a = [1, 2, 3]
a.extend([1, 2, 3, [4, 5, 6]])
print(a)

>>> [1, 2, 3, 1, 2, 3, [4, 5, 6]]

6. index 요소의 첨자를 가져옵니다.

  반복되는 요소가 있는 경우 첫 번째 요소의 첨자만 반환하고 해당 요소가 없으면 바로 오류를 보고합니다.

a = [1, 2, 3, 1]
print(a.index(1))

>>> 0

7. 삽입 지정된 위치에 요소 추가

a = [1, 2, 3]
a.insert(1, 10)
print(a)

>>> [1, 10, 2, 3]

8. pop은 지정된 위치에 있는 요소를 삭제하고 반환합니다.

a = [1, 2, 3]
print(a.pop(1), a)

>>> 2 [1, 3]

9. 삭제 요소 제거

  중복 요소가 있는 경우 첫 번째 요소만 삭제되며 요소가 존재하지 않으면 바로 오류가 보고됩니다.

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

>>> [2, 3, 1]

10. 뒤집기 목록

  내부 레이어가 뒤집히지 않음

a = [1, 2, 3, [1, 2, 3]]
a.reverse()
print(a)

>>> [[1, 2, 3], 3, 2, 1]

11. 정렬 정렬

  reverse=bool정렬 방향 제어 기능
  key과 연동하여 각 항목의 두 번째 요소의 크기로 정렬, 각 항목의 길이로 정렬 등 lambda정렬 기준을 선택합니다 .   참고: 두 항목의 첫 번째 요소가 같을 경우 다음 요소를 순차적으로 비교합니다. 위치는 앞이며 첫 번째 요소만 비교합니다.동일한 경우 원래 순서대로 정렬됩니다.lambda x: x[1]lambda x: len(x)
a.sort()[1,3][1,7]a.sort(key=lambda x: x[0])

a = [[2, 4], [1, 7], [2, 1], [1, 3]]
a.sort()
print(a)
a.sort(reverse=True)
print(a)
a.sort(key=lambda x: x[0])
print(a)
a.sort(key=lambda x: x[1])
print(a)

>>> 
[[1, 3], [1, 7], [2, 1], [2, 4]]
[[2, 4], [2, 1], [1, 7], [1, 3]]
[[1, 7], [1, 3], [2, 4], [2, 1]]
[[2, 1], [1, 3], [2, 4], [1, 7]]

추천

출처blog.csdn.net/weixin_43605641/article/details/126996165