Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

파이썬 객체 내부 들여다보기: 객체 정보를 확인하는 필수 내장 함수 정리

파이썬 객체의 속성과 메서드를 확인하는 방법

파이썬은 강력한 동적 타이핑 언어로, 프로그램 실행 중에도 객체가 어떤 구조를 가지고 있는지 쉽게 살펴볼 수 있습니다. 이를 위해 파이썬은 객체의 속성(attribute), 프로퍼티(property), 그리고 메서드(method)에 대한 정보를 수집할 수 있는 다양한 내장 함수들을 기본적으로 제공합니다.

객체 정보 조회에 사용되는 주요 내장 함수

  • type() — 객체의 자료형(클래스)을 반환합니다.

  • dir() — 객체가 가지고 있는 속성과 메서드의 목록을 반환합니다.

  • id() — 객체의 고유한 식별자(메모리 주소 기반)를 반환합니다.

  • getattr() — 객체에서 지정한 이름의 속성 값을 가져옵니다.

  • hasattr() — 객체에 특정 속성이 존재하는지 여부를 확인합니다.

  • globals() — 현재 전역 네임스페이스(전역 심볼 테이블)를 딕셔너리 형태로 반환합니다.

  • locals() — 현재 지역 네임스페이스를 딕셔너리 형태로 반환합니다.

  • callable() — 객체가 호출 가능한지(함수, 메서드 등인지) 여부를 판단합니다.

특히 유용한 함수: type()과 dir()

이 중에서도 type()dir()은 객체를 분석할 때 가장 많이 활용됩니다. type()은 객체가 어떤 클래스의 인스턴스인지 즉시 알려주며, dir()은 해당 객체가 사용할 수 있는 모든 속성과 메서드의 집합을 보여줍니다.

간단한 예시는 다음과 같습니다:

my_list = [1, 2, 3]

print(type(my_list)) # <class 'list'>
print(dir(my_list)) # ['append', 'clear', 'copy', 'count', ...]

이처럼 내장 함수들을 적절히 조합하면, 문서화되지 않은 객체라도 그 내부 구조를 빠르게 파악하고 디버깅이나 코드 탐색에 활용할 수 있습니다.