inflearn logo
강의

Course

Instructor

Type Python! Correct class usage and object-oriented programming

In Python, everything is an object. !!

질문입니다..

201

colock1232765

49 asked

1

# 인스턴스 설정
siri = Siri("iphone8", 5)
print(Siri.mro())
print(Robot.mro())


# int도 클래스이다
A = int(12)
print(int.mro())

#출력
print(siri)
print(A)
안녕하세요? 강의 잘 듣고 있습니다... 뭔가 정리가 안되기도 해서 여쭤봅니다 ㅠㅠ
1. int가 클래스이므로, A는 변수이면서도 int라는 클래스의 인스턴스 인건가요?(즉 그냥 관점에 따라 변수라고 부를수도, 인스턴스라고 부를수도 있는 것인가요?)
2. siri를 출력하면 <__main__.Siri object at 0x00000178D25F5AC0>와 같은식으로 메모리주소가 나오는 반면,
A를 출력하면 12가 출력됩니다.
이는 선생님 말씀대로 파이썬 개발자들이 int의 인스턴스를 출력했을 때, 저런식으로(12가 출력되도록) 설정을 따로 해두었기 때문에 가능한건가요?
3. 그래서 실제로 int클래스가 어떤식으로 처리되어 있는지 한번 찾아보고 싶어서 int클래스를 따라가봤더니 굉장히 복잡하게 되어있더라구요.. 이런부분은 음.. 그냥 그렇구나~ 하고 넘어가면 되는 부분인지.. 선생님은 어떤식으로 공부하셨느지 한번 여쭤보고싶습니다
 
좋은 강의 감사합니다.

python oop

Answer 1

0

amamov

안녕하세요!

1. 네 맞습니다. int는 파이썬 내부에서 정의된 클래스입니다.

2. 네 정확히 이해하셨습니다! 👍

3. 사실 파이썬을 사용하는 응용 프래그래머는 int나 str은 파이썬 내부에서 빌트인된 클래스이구나 정도까지만 이해하셔도 좋습니다. 또한 파이썬 공식문서를 깊게 읽어보시는 것을 추천드립니다. 심도 있게 탐구하고 싶으시다면 "파이썬의 구현체 (CPython 등)", "인터프리터 구현체 개발" 등등을 공부해보시는 것을 추천드립니다. 저는 Row 단계 언어 Go, Rust, C++ 등으로 간단한 인터프리터를 개발하는 식으로 깊게 공부했었습니다. 

0

colock1232765

답변 감사합니다~

보너스 챕터 마지막 강의 녹화 품질이 문제가 있습니다ㅠㅠ

0

110

1

린터 설치문의

0

362

2

데이터분석에서의 가상환경

0

395

0

print(Robot.how_many()) 하면 None이 뜨는 이유

2

325

2

타입파이썬 문의

1

333

1

프레임워크 질문

1

234

1

문수미님과 같은 내용입니다

1

309

1

클래스 상속 순서? 질문

1

378

2

pip과pip3의 차이

1

2727

1

메서드 리턴 값이 print일 때 print를 찍으면 None

1

247

1

변수의 참조에 대해서 질문입니다.

1

242

1

pyright 를 이용한 클래스 재정의 코드 실행 문제점 질문 드립니다.

1

445

1

which pyhon이 왜 안될까요..?

1

435

1

pyright 에러나서 질문드립니다.

1

392

1

클래스 변수 관련 질문입니다.

1

296

1

데코레이터 관련 질문

1

223

1

venv 로 만든 가상환경은 파이썬 버젼을 변경하기가 어려운 것 같습니다.

1

1108

1

Final로 타이핑한 변수에 list를 넣는다면

1

225

1

생성자에서 자기 자신 타이핑 하는 경우

1

217

1

f"{객체}" 출력값에서의 숫자값과 id(객체)에서의 숫자값의 차이가 무엇인가요??

1

331

1

타입힌트 실무에서 자주쓰이나요?

2

478

1

스태틱메소드와 클래스메소드

3

261

1

인스턴스와 데이터

2

232

1

call method 관련 질문입니다!

1

188

1