class Numbers:
data = []
def read_from_row(self, row):
row_list = list(row)
for i in row_list:
self.data.append(i)
list1 = ["15","16"]
list2 = ["17","18"]
instance = Numbers()
instance.read_from_row(list1)
print(instance.data)
instance = Numbers()
instance.read_from_row(list2)
print(instance.data)
다음은 코드 부분입니다. 따라서 처음에는 instance
이 클래스 Numbers
의 인스턴스이고 첫 번째 목록을 읽은 후 print(instance.data)
은 자연히 ['15', '16']
을 인쇄합니다. 그런 다음 동일한 변수 instance
에 다시 Numbers
클래스의 새 인스턴스를 만들고 두 번째 목록에서 읽은 후에도 어떤 이유로 든 첫 번째 목록의 데이터가 여전히 포함되어 있습니다. ['15', '16', '17', '18']
을 출력 중입니다.Python 클래스 인스턴스 문제
죄송합니다. 저는 파이썬에서 초보자이며 C/C++ 코딩을 오래 한 후에 왜 이런 일이 일어나는지 예상되는 동작을 이해할 수 없습니다. 파이썬 2.7을 사용하고 있습니다.
미리 감사드립니다.
파이썬의 이름 지정 규칙을 표시하는 경우 'numbers' . – pvg
@pvg 내가하지 않으려 고했지만, 당신 말이 맞아요. 코드를 업데이트했습니다. – thebjorn