Python에서 목록의 요소 교환
목록은 순서가 지정된 항목 모음을 저장하는 Python의 변경 가능한(변경 가능한) 데이터 구조입니다. 이 기사에서는 목록의 요소를 교환하는 몇 가지 다른 방법을 살펴보겠습니다.
대입 연산자를 사용하여 Python에서 목록의 요소 교환
요소 목록을 교환하는 가장 쉽고 가장 일반적으로 사용되는 방법 중 하나는 할당 연산자와 쉼표를 사용하는 것입니다.
다음 코드에서는 할당 연산자의 오른쪽에서 해당 값을 왼쪽 변수에 할당하는 할당 연산자를 사용하여 목록을 만들고 인덱스 1
의 값을 인덱스 3
으로 교환했습니다.
예제 코드:
# Python 3.x
list = [6, 2, 7, 8]
print("list before swapping:", list)
list[1], list[3] = list[3], list[1]
print("list after swapping:", list)
출력:
#Python 3.x
list before swapping: [6, 2, 7, 8]
list after swapping: [6, 8, 7, 2]
할당 연산자를 사용하면 한 번에 두 변수의 값만 교환할 수 있습니다. 여러 값을 교환하려면 루프를 사용하면 됩니다.
다음 코드에서 변수 i
및 j
는 교환할 요소의 인덱스를 보유합니다. 인덱스 0
및 3
의 값은 첫 번째 반복에서 교환되고 인덱스 4
및 6
의 요소는 두 번째 반복에서 전환됩니다.
예제 코드:
# Python 3.x
list = [
6,
2,
7,
8,
5,
9,
10,
3,
]
print("list before swapping:", list)
for i, j in [(0, 3), (4, 6)]:
list[i], list[j] = list[j], list[i]
print("list after swapping:", list)
출력:
#Python 3.x
list before swapping: [6, 2, 7, 8, 5, 9, 10, 3]
list after swapping: [8, 2, 7, 6, 10, 9, 5, 3]
세 번째 변수를 사용하여 Python에서 목록의 요소 교환
첫 번째 접근 방식을 사용하여 요소를 직접 교체하지 않으면 항상 세 번째 변수가 필요합니다. 세 번째 변수는 스와핑 후 실제 인덱스에서 인덱스 값을 잃기 때문에 인덱스 값을 일시적으로 보유합니다.
다음 코드에서 인덱스 1
의 값을 temp
변수에 할당하고 인덱스 3
을 인덱스 1
에 할당했습니다. 그런 다음 temp
값(인덱스 1
의 저장된 값)을 인덱스 3
에 할당했습니다.
예제 코드:
# Python 3.x
list = [6, 2, 7, 8]
print("list before swapping:", list)
temp = list[1]
list[1] = list[3]
list[3] = temp
print("list after swapping:", list)
출력:
#Python 3.x
list before swapping: [6, 2, 7, 8]
list after swapping: [6, 8, 7, 2]
Python에서 pop()
함수를 사용하여 목록 요소 교체
목록이 있는 pop()
함수는 지정된 인덱스에서 값을 제거하고 반환합니다. 다음 코드에서는 인덱스를 사용하여 목록에서 두 개의 요소를 팝하고 반환된 값을 두 개의 변수에 저장했습니다.
여기서 중요한 것은 인덱스 1
을 사용하여 값 2
를 제거했지만 인덱스 2
를 사용하여 값 8
을 지웠다는 것입니다. 목록에서 항목을 팝하면 총 세 개의 요소가 있기 때문입니다.
따라서 8
의 인덱스는 2
가 됩니다. 마지막으로 색인을 역순으로 지정하여 이 값을 목록에 다시 삽입했습니다.
예제 코드:
# Python 3.x
list = [6, 2, 7, 8]
print("list before swapping:", list)
val1 = list.pop(1)
val2 = list.pop(2)
list.insert(1, val2)
list.insert(2, val1)
print("list after swapping:", list)
출력:
#Python 3.x
list before swapping: [6, 2, 7, 8]
list after swapping: [6, 8, 7, 2]
I am Fariba Laiq from Pakistan. An android app developer, technical content writer, and coding instructor. Writing has always been one of my passions. I love to learn, implement and convey my knowledge to others.
LinkedIn