del은 굳이 왜 있는 걸까요?
조회수 1447회
발생하는 문제 및 실행환경
del
이 왜 굳이 따로 있는지 모르겠어요
변수를 지우기보다는 그냥 None
을 할당해도 되는거고, 리스트에서는 원소를 지울 때도 pop()
이나 remove()
도 따로 있고.
왜 굳이 del
을 만들어 준걸까요? 아니면 del
이 쓰레기 수집같은 역할도 같이 해서 그런걸까요?
1 답변
-
Python Language Reference에 del이 하는 일이 나와있습니다.
Deletion of a name removes the binding of that name from the local or global namespace
이름을 del 하는 건 지역/전역 namespace에서 이 이름의 binding을 지우는 일을 한다
반면에 None을 할당하는 건 바인딩을 없애지는 않습니다..
변수의 scope를 제한할 수 있다는 장점이 있는 것 같지만 저도 파이썬에서 이게 왜 유용한지는 잘 모르겠습니다...
댓글 입력