- Python - 프로그래밍 시작하기
- Python 기초 (Basics)
- Python 변수 (Variables)
- Python 연산자 (Operators)
- Python 리스트 (List)
- Python 튜플 (Tuple)
- Python 문자열 (Strings)
- Python 집합 (Sets)
- Python 딕셔너리 (Dictionary)
- Python 흐름 제어 (Flow control)
- Python 함수 (Function)
- Python 클래스 (Class)
- Python 내장 함수 (Built-in function)
- Python 키워드 (Keyword)
- Keyword - and
- Keyword - as
- Keyword - assert
- Keyword - break
- Keyword - class
- Keyword - continue
- Keyword - def
- Keyword - del
- Keyword - elif
- Keyword - else
- Keyword - except
- Keyword - False
- Keyword - for
- Keyword - from
- Keyword - global
- Keyword - if
- Keyword - import
- Keyword - in
- Keyword - is
- Keyword - lambda
- Keyword - None
- Keyword - not
- Keyword - or
- Keyword - pass
- Keyword - return
- Keyword - True
- Keyword - try
- Keyword - while
- Python 파일 다루기
- Python datetime 모듈
- Python time 모듈
- Python collections.deque
- Python collections.namedtuple
- Python의 선 (Zen of Python)
- Python Tutorial
- NumPy Tutorial
- Matplotlib Tutorial
- PyQt5 Tutorial
- BeautifulSoup Tutorial
- xlrd/xlwt Tutorial
- Pillow Tutorial
- Googletrans Tutorial
- PyWin32 Tutorial
- PyAutoGUI Tutorial
- Pyperclip Tutorial
- TensorFlow Tutorial
- Tips and Examples
클래스 기초¶
클래스 (Class)는 데이터와 함수의 집합으로써, 새로운 타입의 객체를 만드는데 사용됩니다.
클래스를 ‘틀’로 사용해서 인스턴스 (Instance)가 만들어질 때, 메모리에 할당되어서 객체가 실체화됩니다.
클래스의 기초에 대해 알아봅니다.
클래스 정의하기¶
예제¶
class Person:
age = 20
gender = 'Male'
def say_hello(self):
print('Hello')
클래스는 여러 속성 (Attribute) 을 가지는데,
속성은 age, gender와 같이 데이터 (Data)일 수도 있고, say_hello() 와 같이 메서드 (Method)일 수도 있습니다.
인스턴스 객체 만들기 (Instantiation)¶
class Person:
age = 20
gender = 'Male'
def say_hello(self):
print('Hello')
Eric = Person()
print(Eric.age)
print(Eric.say_hello())
20
Hello
None
함수를 호출하는 것과 비슷한 방식으로 Person()을 호출함으로써 클래스의 인스턴스가 만들어집니다.
이때 Person()을 클래스의 생성자 (Constructor) 라고 합니다.
클래스의 인스턴스 객체를 만들고 변수 Eric에 할당했습니다.
Eric이라는 인스턴스는 미리 정의한 Person 클래스와 같이 age, gender와 같은 속성을 가집니다.
__init__()¶
예제¶
class Person:
def __init__(self, age, gender):
self.age = age
self.gender = gender
def say_hello(self):
print('Hello')
클래스 객체를 호출함으로써 인스턴스를 만들면 새로운 객체가 하나 만들어집니다.
흔히 커스터마이즈된 특정 초기 상태를 갖고 만들어지기를 바라기 때문에, __init__()
라는 특수 메서드를 정의합니다.
Andy = Person(25, 'Female')
print(Andy.age)
print(Andy.gender)
25
Female
클래스가 __init__()
메서드를 정의하면, 인스턴스가 만들어질 때 자동으로 호출이 되면서,
새로 만들어진 인스턴스 Andy는 입력된 값 25, ‘Female’으로 변수를 초기화할 수 있습니다.
이제 Andy.age, Andy.gender는 각각 25, ‘Female’이라는 값을 갖게 됩니다.
이전글/다음글
이전글 : Python 클래스 (Class)
다음글 : 클래스 속성 다루기