(1) 다른 언어에서의 Swap
다른 언어(C, Java 등)에서는 두 변수의 값을 교환할 때 임시 변수(temp)가 필수입니다.
python
temp = arr[i]
arr[i] = arr[j]
arr[j] = temp
(2) 파이썬에서의 Swap
파이썬에서는 다중 할당을 이용해 한 줄로 해결할 수 있습니다.
python
arr[i], arr[j] = arr[j], arr[i]
왜 가능한가?
파이썬은 우변을 먼저 튜플로 묶어 평가한 뒤, 좌변에 순서대로 할당하기 때문입니다. 즉, arr[j], arr[i] 를 먼저 (arr[j], arr[i]) 튜플로 만들고 나서 할당하므로 temp 없이도 안전하게 교환됩니다.
(3) 정리
temp 방식다중 할당 방식
| 코드 길이 | 3줄 | 1줄 |
| 파이썬 관용성 | 낮음 | 높음 (Pythonic) |
'Python' 카테고리의 다른 글
| [Python] 라이브러리 관리하기 (0) | 2026.03.07 |
|---|---|
| [Python] 리스트 컴프리헨션 & 조건부 표현식 | 코딩 테스트에 자주 나오는 풀이 방식 (0) | 2026.03.06 |
| [Python] 가상환경의 필요성, 프로젝트 적용 방법 (1) | 2026.03.04 |
| [Python] 코딩 테스트 중 자주 실수하는 부분 | 불필요한 코드, 비직관적 인덱싱 (0) | 2026.02.28 |
| [Python] 리스트 원소의 합과 곱 문제 (0) | 2026.02.27 |