python 면접 문제 목록 성명 실례 분석

이 글 의 실례 는 python 면접 문제 의 목록 성명 을 서술 하 였 다.여러분 께 참고 하도록 공유 하 겠 습 니 다.구체 적 으로 는 다음 과 같 습 니 다.
다음 프로그램의 출력 결 과 는?

val = [['a']*2]*2
print val
val[0][1]='b'
print val

정 답 은:
[['a', 'a'], ['a', 'a']]
[['a', 'b'], ['a', 'b']]
...이 아니 라
[['a', 'a'], ['a', 'a']]
[['a', 'b'], ['a', 'a']]
아래 의 예 를 보십시오.

val = ['a']*2  #      val = ['a','a']
print val
print id(val)
print id(val[0])
print id(val[1])

출력 결과
['a', 'a']
39993928
38858384
38858384
val 의'a'두 개가 가리 키 는 같은 주 소 를 볼 수 있 습 니 다.

다음 코드 를 보십시오.
직접 성명 하면 뒤의'a'는 바 뀌 지 않 습 니 다.

val = [['a','a'],['a','a']]
print val
print id(val)
print id(val[0][0])
print id(val[1][0])
val[0][0] = 'b'
print val
print id(val)
print id(val[0][0])
print id(val[1][0])

결 과 는:
[['a', 'a'], ['a', 'a']]
39405512
38268560
38268560
[['b', 'a'], ['a', 'a']]
39405512
38390280
38268560
그리고

val = [['a','a']]*2
print val
print id(val)
print id(val[0][0])
print id(val[1][0])
val[0][0] = 'b'
print val
print id(val)
print id(val[0][0])
print id(val[1][0])

결 과 는:
[['a', 'a'], ['a', 'a']]
40388552
39251600
39251600
[['b', 'a'], ['b', 'a']]
40388552
39373320
39373320
더 많은 Python 관련 내용 에 관심 이 있 는 독 자 는 본 사이트 의 주 제 를 볼 수 있 습 니 다.
본 논문 에서 말 한 것 이 여러분 의 Python 프로 그래 밍 에 도움 이 되 기 를 바 랍 니 다.

좋은 웹페이지 즐겨찾기