Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

파이썬으로 리스트의 첫 번째 요소와 마지막 요소 교환하기

파이썬에서 리스트의 첫 번째 값과 마지막 값을 서로 바꿔야 하는 경우가 종종 있습니다. 이럴 때 별도의 함수를 정의하고 임시 변수(temp)를 활용하면 아주 간단하게 구현할 수 있습니다.

아래는 실제 동작 예시입니다.

예제 코드

def list_swapping(my_list):
    size_of_list = len(my_list)

    temp = my_list[0]
    my_list[0] = my_list[size_of_list - 1]
    my_list[size_of_list - 1] = temp

    return my_list

my_list = [34, 21, 56, 78, 93, 20, 11, 9]
print("원본 리스트 :");
print(my_list)
print("첫 번째 요소와 마지막 요소를 교환한 결과 :");
print(list_swapping(my_list))

실행 결과

원본 리스트 :
[34, 21, 56, 78, 93, 20, 11, 9]
첫 번째 요소와 마지막 요소를 교환한 결과 :
[9, 21, 56, 78, 93, 20, 11, 34]

코드 설명

  • 'list_swapping'이라는 이름의 함수를 정의합니다.

  • 이 함수는 리스트를 매개변수로 받습니다.

  • len() 함수로 리스트의 길이를 구한 뒤, 임시 변수 temp를 이용해 첫 번째 요소(my_list[0])와 마지막 요소(my_list[size_of_list - 1])의 값을 서로 교환합니다.

  • 교환이 완료된 리스트를 반환값으로 돌려줍니다.

  • 함수 외부에서 예시 리스트를 정의하고 콘솔에 출력합니다.

  • 해당 리스트를 인자로 전달하며 함수를 호출합니다.

  • 교환된 최종 결과가 콘솔에 출력됩니다.

더 간결한 방법: 튜플 언패킹 활용

파이썬에서는 임시 변수 없이 튜플 언패킹(tuple unpacking)을 사용하면 한 줄로 두 값을 교환할 수 있습니다. 음수 인덱스(-1)를 활용하면 코드가 더욱 깔끔해집니다.

def list_swapping(my_list):
    my_list[0], my_list[-1] = my_list[-1], my_list[0]
    return my_list

my_list = [34, 21, 56, 78, 93, 20, 11, 9]
print(list_swapping(my_list))
# 출력: [9, 21, 56, 78, 93, 20, 11, 34]

두 방법 모두 원본 리스트 자체가 변경된다는 점(in-place 수정)에 유의하세요. 원본을 유지하고 싶다면 함수 내부에서 my_list.copy()로 복사본을 만든 뒤 교환 작업을 수행하는 것이 좋습니다.