강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

정미경님의 프로필 이미지
정미경

작성한 질문수

프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)

Class(1-2)

예제3 코드가 제대로 실행이 안되는데 이유가 궁금합니다.

작성

·

205

0

스파이더로  아래처럼 코드를 단순하게 바꿔서 실행하면

2가 프린트되는게 정상인것 같은데

처음 실행하면 1, 그 후에는 0이 프린트가 됩니다.

class Warehouse:
    # 클래스 변수 
    stock_num = 0 # 재고
    
    def __init__(self, name):
        # 인스턴스 변수
        self.name = name
        Warehouse.stock_num += 1
    
    def __del__(self):
        
        Warehouse.stock_num -= 1

user1 = Warehouse('Lee')
user2 = Warehouse('Cho')

print(Warehouse.stock_num)


이런식으로요

예제파일을 그대로 실행해도 계속 비슷한 문제가 생기고

__del__ 을 삭제하면 정상적으로 실행되는 것 같습니다.

왜 이런 문제가 생기는건지 궁금합니다.

답변 1

0

좋은사람님의 프로필 이미지
좋은사람
지식공유자

안녕하세요.

실행하시는 환경이 라인별로 실행되는 것같습니다.

실행해보니 해당 코드는 2가 정상적으로 출력됩니다. 

정미경님의 프로필 이미지
정미경

작성한 질문수

질문하기