파이썬 객체 리스트 질문...

kik9459의 이미지

안녕하세요.

파이썬 공부하고있는 학생입니다!

다름이아니라... 자바에서처럼 객체배열을 사용하고싶어서 이 방법 저 방법 해보고 있는데

잘안돼서...

제가 지금 원하는거는 자바에서는 객체를 생성하면 각 객체마다 자신만의 데이터를 갖게되는데

지금 파이썬에서는 객체에있는 리스트에 값을 추가할때 왜 다른 객체에도 추가가되는지 의문이여서...

답변 좀 부탁드리겠습니다

seller_arr=[]

class client:

fruit_list=[] # 과일 목록 리스트

num_list=[] # 과일 개수 리스트

price_list=[] # 과일 가격 리스트

def fruit_sell_list(self):

print("="*10,"과일목록","="*10)

print(self.fruit_list," ")

print("="*10,"과일가격","="*10)

print(self.num_list," ")

print("="*10,"과일재고","="*10)

print(self.price_list," ")

seller_arr.append(client())

seller_arr[0].fruit_list.append('사과')

seller_arr[0].num_list.append(10)

seller_arr[0].price_list.append(1000)

seller_arr[0].fruit_sell_list()

seller_arr.append(client())

seller_arr[1].fruit_list.append('배')

seller_arr[1].num_list.append(1)

seller_arr[1].price_list.append(100)

seller_arr[1].fruit_sell_list()

peecky의 이미지

fruit_list를 Java의 static 변수처럼 선언하셨습니다.

class client:
    def __init__(self):
        self.fruit_list=[]
        self.num_list=[]
        self.price_list=[]

로 바꿔보세요.
kik9459의 이미지

감사합니다!! 덕분에 파이썬 객체에 대하여 조금 더 이해가됬습니다!