분류 전체보기(14844)
-
Python 접근 제한자 (Access Modifier)
Python 접근 제한자 (Access Modifier) · Python은 다른 언어에서 흔히 사용하는 public, protected, private 등의 접근 제한자 (Access Modifier)를 갖지 않습니다. · Python 클래스는 기본적으로 모든 멤버가 public 이 됩니다. · Python 코딩 관례(Convention)상 내부적으로만 사용하는 변수 혹은 메서드는 그 이름 앞에 하나의 밑줄 하나(_) 을 붙입니다. 하지만 이는 코딩 관례에 따른 것일 뿐 실제 밑줄 하나를 사용한 멤버도 public 이므로 필요하면 외부에서 엑세스할 수 있습니다. · 특정 변수명이나 메서드를 private으로 만들어야 한다면 두개의 밑줄(__)을 이름 앞에 붙이면 됩니다. def __init__(self,..
-
파이썬에서 객체의 attribute를 탐색하는 단계
파이썬에서 객체의 attribute를 탐색하는 단계
-
클래스 변수(class variable), 인스턴스 변수(instance variable)
클래스 변수(class variable) · 클래스 정의에서 메서드 밖에 존재하는 변수를 클래스 변수(class variable)라 하며, 클래스 변수는 해당 클래스를 사용하는 모두에게 공용으로 사용되는 변수입니다. · 클래스 변수는 클래스 내외부에서 "클래스명.변수명" 으로 엑세스 할 수 있습니다.
-
이름 공간 검색 순서
이름 공간 검색 순서 · "인스턴스 이름.멤버 이름"으로 멤버를 참조할 때 멤버의 검색 순서입니다. · 기본적으로 인스턴스 객체를 통하여 변수나 함수의 이름을 찾는 경우 아래와 같은 검색 순서를 가집니다. · 이 순서대로 찾지 못할 경우 AttributeError 가 발생됩니다.
-
이름 공간
이름 공간클래스 객체과 인스턴스 객체의 이름공간은 다릅니다. 클래스 멤버 vs 인스턴스 멤버
-
클래스와 인스턴스
클래스와 인스턴스 · 일반적으로 클래스는 멤버변수와 멤버메소드를 가지고 있습니다. · 클래스를 정의하면 클래스 객체(class object)가 생성되고 독립적인 이름공간이 만들어 집니다. 이 이름공간안에 멤버변수와 멤버메소드가 존재하게 됩니다. · 클래스를 사용하기위해서는 인스턴스 객체(instance object)를 만들어야 합니다. · 클래스명을 함수형태로 호출하여 인스턴스 객체가 생성되고 독립적인 이름공간이 만들어 지게 됩니다. 기본적으로 인스턴스 객체가 변경되기 전까지는 클래스 객체와 동일한 데이터와 메소드를 가집니다.