인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

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

김정원님의 프로필 이미지
김정원

작성한 질문수

파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)

for 문에서의 list 값 질문있습니다!!!

작성

·

153

0

 
test=[0,0,0,0]
for i in range(4):
test2=test
test2[i]=1
print(test2)

 

 
다음과 같이 for문을 돌릴때마다 test2값을 test 리스르로 초기화 하면
제가 생각하는 예상값은
[1, 0, 0, 0]
[0, 1, 0, 0]
[0, 0, 1, 0]
[0, 0, 0, 1]
 
인데
 
실제 결과값은 test2값을 test로 초기화하지 못하고
[1, 0, 0, 0]
[1, 1, 0, 0]
[1, 1, 1, 0]
[1, 1, 1, 1]
 
으로 나오는데.. 이것은 뭐때문에 그런건가요??
확인해보니 test값도 동일하게 변수값이 들어가네요 ㅠㅠ
 
그렇다고 append 함수를 써서 test값을 유지한다고 하면
 
test=[0,0,0,0]
for i in range(4):
test2.append(test)
test2[i]=1
print(test2)
 
결과값이
[1] [1, 1] [1, 1, 1] [1, 1, 1, 1]
처럼 나오네요.. 원하는 결과값은 얻는 방법이 무엇이고, 왜 이런 결과가 나오는지 알고싶어요

 
 
 
 
 

답변

답변을 기다리고 있는 질문이에요
첫번째 답변을 남겨보세요!
김정원님의 프로필 이미지
김정원

작성한 질문수

질문하기