반응형

파이썬의 list 구조체의 항목수가 적을때는 하나씩 삭제해도 그다지 힘들지 않을텐데, 만약 그 항목수가 많으면 이 방법으로는 힘들겠죠?

clear를 사용하면 쉽게 할 수 있습니다.

list1 = [1, 5, 3, 9, 5]
print ("원래 list1 : ", list1)

list1.clear()
print ("모두 삭제된 list1 : ", list1)


이렇게 하면 한번에 모두 삭제 가능합니다. 아래 실행결과가 있습니다.

원래 list1 :  [1, 5, 3, 9, 5]
모두 삭제된 list1 :  []


그런데 clear를 사용하지 않고도 모두 삭제할 수 있는 방법도 있습니다. 바로 인덱스 범위를 지정해서 del을 사용해도 됩니다.

list1 = [1, 5, 3, 9, 5]
print ("원래 list1 : ", list1)


del list1[0:5]
print ("모두 삭제된 list1 : ", list1)


실행결과는 아래와 같습니다.

원래 list1 :  [1, 5, 3, 9, 5]
모두 삭제된 list1 :  []

그런데 만약 list 구조체의 항목수를 정확히 모르면 (프로그램 실행중에 추가 및 삭제 등이 빈번해서), 정확한 인덱스를 모르겠죠? 그러면 아래와 같이 하면 됩니다. 물론 list 구조체의 크기를 알아내는 방법이 있기는 하겠죠.

list1 = [1, 5, 3, 9, 5]
print ("원래 list1 : ", list1)

del list1[:]
print ("모두 삭제된 list1 : ", list1)


역시 마찬가지로 아래와 같이 동일한 실행결과를 볼 수 있습니다.


원래 list1 :  [1, 5, 3, 9, 5]
모두 삭제된 list1 :  []

 

반응형
Posted by HLIFEINFO
,