파이썬에서 튜플(tuple)은 변경 불가능(immutable)한 자료형이기 때문에 개별 요소를 직접 삭제하는 것은 불가능합니다. 하지만 원하지 않는 요소를 제외한 나머지 요소들로 새로운 튜플을 만드는 것은 전혀 문제되지 않습니다.
튜플 전체 삭제하기
튜플 전체를 명시적으로 삭제하려면 del 문을 사용하면 됩니다. 아래 예제를 살펴보겠습니다.
예제
#!/usr/bin/python
tup = ('physics', 'chemistry', 1997, 2000)
print(tup)
del tup
print("After deleting tup : ")
print(tup)실행 결과
위 코드를 실행하면 다음과 같은 결과가 출력됩니다. del tup 실행 후에는 해당 튜플이 더 이상 존재하지 않기 때문에 예외(Exception)가 발생한다는 점에 유의하세요.
('physics', 'chemistry', 1997, 2000)
After deleting tup :
Traceback (most recent call last):
File "test.py", line 9, in <module>
print(tup)
NameError: name 'tup' is not defined대안: 특정 요소를 제외한 새 튜플 만들기
개별 요소만 골라서 제거하고 싶다면 슬라이싱(slicing)을 활용하여 해당 요소를 제외한 새로운 튜플을 생성할 수 있습니다.
tup = ('physics', 'chemistry', 1997, 2000)
# 인덱스 1('chemistry')을 제외한 새 튜플 생성
new_tup = tup[:1] + tup[2:]
print(new_tup) # ('physics', 1997, 2000)이처럼 튜플 자체는 수정할 수 없지만, 필요한 요소만 조합해 새로운 튜플을 만드는 방식으로 원하는 결과를 얻을 수 있습니다.