Re: page38 에 대한 문의

46 views
Skip to first unread message

HoChul Shin

unread,
Aug 1, 2012, 10:35:01 PM8/1/12
to shc....@gmail.com, pyt...@googlegroups.com
안녕하세요.
답변이 늦어 죄송합니다.

질문 하신 내용에 대한 답은, 38p의 뱀잡기의 다음 구문에 있습니다.
"copy.copy()는 객체를 생성할 때, 객체들을 그대로 사용(치환)하는 것이며, copy.deepcopy()는 생성 시, 객체들을 복사합니다."

즉, copy.copy()가 b=a[:]와 같다고 생각하시면 됩니다.

아래의 예를 보시면 이해가 빠르실 것입니다.

>>> a=[1,[2,3]]
>>> b=a[:]
>>> id(a)
45303240L
>>> id(b)
45260360L
>>> a
[1, [2, 3]]
>>> b
[1, [2, 3]]
>>> a[1].append(4)
>>> a
[1, [2, 3, 4]]
>>> b
[1, [2, 3, 4]]

감사합니다.


2012년 7월 29일 오전 11:57, beginer <shc....@gmail.com>님의 말:
안녕하세요
파이썬초보자 입니다
 
책에서 얕은복사, 깊은복사 부분을 보고 있는데요
예제에서
a=[1,2,3]
b=a   #이건 얕은 복사를 의미하는것이 맞나요? 그럼 b=copy.copy(a) 와 같은 건가요?
 
b=a[:]  #이건 깊은 복사를 의미하는 것이 맞나요? 그럼 b=copy.deepcoyp(a) 와 같은 건가요?
 
만약 위가 맞다면
37페이지 예제에서는
id(a), id(b) 했을때 아이디 값이 같게나오는데
 
38페이지 뱀잡기에서는
id(a), id(cp_a) 가  왜 아이디 값이 다르게 나오는 것인가요?
 
이해가 안가서 문의드립니다.
자세한 설명 부탁드립니다.

--
Google 그룹스 'Python 3 질문 게시판' 그룹에 가입했으므로 본 메일이 전송되었습니다.
웹에서 이 토론을 보려면 https://groups.google.com/d/msg/python3/-/WQfQSezQsfUJ을(를) 방문하세요.
이 그룹에 게시하려면 pyt...@googlegroups.com(으)로 이메일을 보내세요.
그룹에서 탈퇴하려면 python3+u...@googlegroups.com로 이메일을 보내주세요.
더 많은 옵션을 보려면 http://groups.google.com/group/python3?hl=ko에서 그룹을 방문하세요.



--
-----------------------------
http://dsphome.net/
Reply all
Reply to author
Forward
0 new messages