inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)

파이썬 변수(2-2)

아톰 vs 파이썬 인터프리터

326

응군

작성한 질문수 3

0

실습예제로 동일한 변수의 id 값이 아톰으로하면 동일한데 파이썬 인터프리터로 하면 값이 틀립니다.

(예)

b = 300

c = 300

print(id(b) == id(c))

아톰 : True

파이썬 인터프리터 : False

값이 틀린 이유가 있을까요?

파이썬 인터프리터의 경우 대화형으로 하나씩 수행하다보니 값이 틀려지는걸까요?

python

답변 4

2

hp

TA님께서 답변을 잘못 주신 것 같고

https://www.quora.com/Why-is-the-following-return-false-in-Python-A-53462-b-53462-id-a-id-b

여기 읽어보시면 해답을 얻으실 수 있을 것 같습니다.

저도 궁금하고 답변을 봐도 이해가 안가서 한참 해맸습니다.

1

새콤한 비버

안녕하세요.

인프런 강좌 TA 박유진입니다.

b와 c는 300이라는 변수에 들어있는 값은 같지만, 변수 자체의 id는 다른 값을 가지게 됩니다.

따라서 False 결과값이 옳은 결과입니다.

또 궁금한 점이 있으면 질문주세요 :)

감사합니다.

0

박건현

파이썬 인터프리터의 경우 대화형으로 하나씩 수행하다보니 값이 틀려지는걸까요?  

- 네, 저도 이렇게 생각합니다.

0

Youngjae Choi

hp님께서 남겨주신 링크를 대충 본 결과,
핵심이라고 생각되는 부분을 이해하면,

b 와 c가 같은 값(300)을 할당 받았지만,
그것이 저장되는 메모리의 위치가 각각 달라서
(그 메모리 위치값이 파이썬에서는 id인가봅니다.)
그 위치값이 숫자로 표현되나본데,
그게 다른 겁니다.

쉽게 설명하면,
똑같은 아이폰12 pro 스페이스그레이를 샀지만,
시리얼 번호가 다르잖아요 두 폰이.

그래서, 값은 모델이지만, 같은 폰은 아니라는 것이죠.

또 다른 예로
두 사람이 같은 은행에 300만원씩 각자의 계좌에 저금을 했습니다. 그 300만원이라는 액수는 같지만, 한사람의 300만원가 다른사람의 300만원이 같은 통장(계좌)에 있는게 아니라는 뜻으로 해석하면 될것 같습니다.

hp님 감사합니다.

근데, 왜 atom과 파이썬 인터프리터의 값이 다른지는 모르겠네요. 아시는분 그부분에 대해서 설명을 해주면 좋겠어요.

보라색 예약어

0

8

1

#을 붙이는 이유

0

10

1

실행이 안 되는데요.

0

6

0

print 문법 실행 안 돼요.

0

7

1

영문 계정

0

13

1

맥북에서 아이패드로 연결해서 보려고 하면 화면이 안뜹니다.

0

10

1

인스턴스 변수 문의

0

56

1

챕터 03_04 (튜플) 교육자료

0

56

2

Package(3-1) Sub 폴더 자료

0

48

1

아톰 출력 안됨

0

85

2

강의자료 메일 발송 요청 드립니다.

0

91

1

강의자료 메일로 보내주실 수 있으실까요?

1

59

0

Iterable 요소는 리스트로 작성해야하는 것 맞나요?

1

83

2

강의자료 부탁드립니다

0

76

2

if Flase: print('Bad')

0

76

1

=와 == 의 차이

0

93

1

functions 함수 섭들을려고하는데요

0

74

1

강의자료 부타드리겠습니다!

0

62

0

VSCODE에 VIEW에서 SELECTED INTERPRETER조회가 안됩니다.

0

71

1

강의자료 부탁드립니다.

0

59

0

dict의 Key를 바꾸는 방법

0

83

1

강의자료부탁드립니다

0

72

1

run withount 디버깅 및 F5+ctrl이 안먹혀요

0

69

1

강의 자료와 예정 다운로드

0

80

2