더북(TheBook)

가변성 객체의 값을 변경할 수 있는 성질을 가변성(mutability)이라고 한다. 배열은 요소를 변경할 수 있으므로 가변 객체이다. 예를 들어 x = [.30,.60,.10] 코드로 배열을 생성하고 나서 x[1] = .99 할당문을 실행하면 배열의 값은 [.30, .99, .10]이 된다. 이 연산을 객체 수준 트레이스로 표현하면 [그림 1.4.3]과 같다.

▲ 그림 1.4.3 배열 요소의 재할당

 

때로는 배열 안의 요소를 재배치하기도 한다. 예를 들어 다음 코드는 배열 a[]에 들어 있는 요소들을 역순으로 재배치한다.

n = len(a)
for i in range(n // 2):
    temp = a[i]
    a[i] = a[n-1-i]
    a[n-1-i] = temp

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.