PGR21.com
- PGR21 관련된 질문 및 건의는 [건의 게시판]을 이용바랍니다.
- (2013년 3월 이전) 오래된 질문글은 [이전 질문 게시판]에 있습니다.
통합 규정을 준수해 주십시오. (2015.12.25.)
Date 2018/06/07 15:12:51
Name 아름답고큽니다
Subject [질문] 파이썬 아주 간단한 코딩 질문입니다.
l = [[0] * 10] * 10
l[1][0] = 2
print(l)

-> [[2, 0, 0, 0, 0, 0, 0, 0, 0, 0], [2, 0, 0, 0, 0, 0, 0, 0, 0, 0], [2, 0, 0, 0,...

ll = [[1, 2], [3, 4]]
ll[1][0] = 2
print(ll)

-> [[1, 2], [2, 4]]

을 실행시키면, 아래와 같은 실행값이 나옵니다. 제가 이해가 안가는 것은 l과 ll은 모두 리스트 안에 리스트가 들어있는 자료 형태인데, 어째서 똑같은 명령에 l은 안에 든 모든 리스트의 0번째 값이 바뀌고, ll은 1번째 리스트의 0번째 값만 바뀌는가 입니다.

제 용렬한 생각으로는 당연히 ll처럼 l도 될 줄 알았는데... 고견 부탁드립니다 ㅜㅜ

통합규정 1.3 이용안내 인용

"Pgr은 '명문화된 삭제규정'이 반드시 필요하지 않은 분을 환영합니다.
법 없이도 사는 사람, 남에게 상처를 주지 않으면서 같이 이야기 나눌 수 있는 분이면 좋겠습니다."
The Normal One
18/06/07 15:18
수정 아이콘
위쪽은 뭔가 c스런 코드네요 흐흐
일단 이슈가 발생한 원인은 주소값이 아닐까 싶은데요.
I에서 선언한 배열의 경우 하나의 배열을 여러개를 넣은, length 10짜리 배열이 열개가 들어간거처럼 보이지만 실제로는 하나의 배열을 열번 넣은 구조 같네요.
따라서 값을 넣게되면 하나의 배열이므로 모든 배열의 값이 바뀌게 되는 상황인거 같습니다.

물론 제가 틀릴수도 있습니다. 그랬다면 밑에분이 잘 설명해주실거에요 흐흐
아름답고큽니다
18/06/07 15:26
수정 아이콘
답변 감사합니다.
포포탄
18/06/07 15:25
수정 아이콘
파이썬에서 배열, 딕셔너리, 클래스는 복사할 때 얕은복사(shallow copy)하기 때문입니다.
for a in i:
print(a.__repr__)
를 돌려보시면 i안에 들어있는 배열의 주소가 동일함을 보실 수 있습니다.
아름답고큽니다
18/06/07 15:26
수정 아이콘
답변 감사합니다.
Patrick Jane
18/06/08 10:56
수정 아이콘
제가 예전에 했던 질문이랑 같은 질문인거 같네요 크크...
https://pgr21.co.kr/pb/pb.php?id=qna&no=118783&divpage=58&sn=on&ss=on&sc=on&keyword=patrick
목록 삭게로! 맨위로
번호 제목 이름 날짜 조회
139426 [질문] 이직할 회사에서 면접 한번 더 보자고 요청이 들어왔습니다. [8] juli396714 19/11/12 6714
139026 [질문] 어제 코딩용 노트북 질문에 이어서 몇 가지 더 질문하고 싶습니다. [31] 삭제됨4468 19/10/31 4468
139014 [질문] 삭제 예정인 글들을 삭제 해야 할까요? [10] 붉은종이달3529 19/10/31 3529
139000 [삭제예정] 코딩용 노트북 추천 부탁드립니다 [20] 삭제됨11651 19/10/30 11651
138795 [질문] 국비 IT 교육? 질(수준), 나이 많은 인턴 교육 질문 [17] 24cm4749 19/10/24 4749
137593 [삭제예정] 개발자나 기타 직장인들 중에 이런거 겪고계신분 있나요 [6] _L-MSG_3630 19/09/16 3630
136424 [질문] [문재인 아들의 특혜 의혹에 관련하여 질문드립니다.] [18] Notorious4904 19/08/11 4904
135559 [질문] vba 질문드립니다 [1] 산양2718 19/07/17 2718
135102 [질문] 마리아DB는 무엇으로 돈을 버나요? [3] monkeyD3439 19/07/04 3439
134558 [질문] 하드디스크 속도 질문드려요. [3] monkeyD2758 19/06/18 2758
134104 [질문] vba 학습 조언을 구합니다. [6] 산양2559 19/06/04 2559
133580 [질문] '스크래치' 프로그래밍 언어에 관해 질문입니다. [2] 카페알파2306 19/05/20 2306
132806 [질문] 텔레그램 알림봇을 만들려면 무엇을 배워야 할까요? [2] 라캉~3442 19/04/27 3442
132150 [질문] [엑셀 코딩] 조건부로 중복된 데이터를 삭제하는 방법이 있을까요? [14] aSlLeR3512 19/04/09 3512
131920 [질문] 다량의 텍스트 파일의 본문내용 일괄 바꾸기(치환)에 관해 문의드립니다. [13] 노다메구미9315 19/04/02 9315
131284 [질문] 코딩 스타일 질문.. [7] 레이첼 로즌4793 19/03/14 4793
129482 [질문] 컴퓨터 견적 한 번만 봐주실 수 있을까요? [9] 우울한구름3254 19/01/21 3254
129319 [질문] 첫 노트북 구매 조언 부탁드립니다 [20] 아라가키7806 19/01/16 7806
129116 [삭제예정] 개발자가 되고 싶은 학생입니다. [21] Challenger4365 19/01/10 4365
128372 [질문] 멜론 가사 싱크 맞추는거 원리가 뭘까요? 소프트웨어로 하는걸까요? [7] retrieval6734 18/12/20 6734
127480 [질문] 웹프로그래밍(php/java) 독학 커리큘럼을 알려주세요. [18] 잘생김용현6742 18/11/26 6742
127092 [삭제예정] R 스튜디오 코딩 질문입니다 [4] 기록가2138 18/11/17 2138
124858 [질문] [코딩?]실시간 그래프를 보여주는 간단한 라이브러리를 찾습니다. [2] AIPA2576 18/09/18 2576
목록 이전 다음
댓글

+ : 최근 1시간내에 달린 댓글
+ : 최근 2시간내에 달린 댓글
맨 위로