클래스(class)란??
변수와 함수를 묶어놓은 개념.
객체를 만들어 내기 위한 틀
# 클래스의 선언
class PythonClass:
pass
pass 는 함수의 오류가 나는 것을 방지해준다.
pass 는 코드의 틀을 만들고 싶을 때 pass를 써놓고 나중에 pass의 자리를 채워나갈 때 쓰인다.
class를 정의할때는 camel case 를 사용하여 PythonClass 라고 지정하였다.
- snake case : fast_campus : 변수, 함수
- camel case : FastCampus, fastCampus : 클래스
클래스 인스턴스란??
틀을 바탕으로 소프트웨어에 구현된 실체
객체를 소프트웨어에 실체화 하면 그것을 인스턴스 라고 한다.
실체화된 인스턴스는 메모리에 할당된다.
인스턴스 생성하기
#testClass() 를 불러와서 test_instance 에 저장한 것
# 임시로 어떤 템플릿을 불러와서 다른 이름의 객체로 저장한다 라고 생각
test_instance = testClass()
객체(object)란??
소프트웨어 세계에 구현할 대상
클래스에 선언된 모양 그대로 생성된 실체
클래스 인스턴스라고도 함
print(type(test_instance))
# <class '__main__.TestClass'>
test_instance라는 객체는 TestClass의 인스턴스임을 확인할 수 있다.
파이썬에서__main__은 “현재 실행 중인 파일”을 의미 위 출력 결과는 현재 실행중인 TestClass클래스”를 의미한다고 생각하면 됨
매서드(Methods)란??
클래스 안에서 정의된 함수
일반적인 함수와의 차이점은 첫 번째 인수를 항상 self로 지정해야 함.
class Musician:
title = "Rockstar"
def explanation(self):
print("I am a {}!".format(self.title))
drummer = Musician()
drummer.explanation()
#I am a Rockstar!
생성자(Constructor)란
클래스를 호출할 때 자동으로 어떤 함수를 실행하거나 값을 호출하고 싶다면 생성자(Constructor)라는 걸 정의하면 된다.
메서드 정의할 때와 똑같긴 한데 메서드 이름으로__init__을 사용하면 됨.
class Shouter:
def __init__(self):
print("HELLO?!")
shout = Shouter()
파이썬 클래스(Class) 쉽게 이해하기 - 아무튼 워라밸
파이썬을 공부하게 되면 일단 여러가지 자료형, 조건문, 반복문, 함수를 익혀 어느정도 기초를 다진다. 그 다음엔 보통 클래스(Class)를 접하게 되는데, 여기서부터는 좀 어렵다. 나도 그랬다. 그
hleecaster.com
최근댓글