기타/What I Learned
[Python] 클래스
가죽방패
2021. 8. 8. 06:24
※ 자료형
type(a) # type(변수명) : 자료형
isinstance(1, int) # isinstance(값, 자료형) : 자료형 검사
※ 클래스 : 함수나 변수를 모아둔 집합체
※ 인스턴스
- 클래스에 의해 생성된 객체
- 인스턴스 각자가 자신의 값을 가짐
# 클래스 선언
class Coding():
'''코딩'''
# 인스턴스 생성
coding1 = Coding()
coding2 = Coding()
클래스와 인스턴스를 이용하면 데이터와 코드를 사람이 이해하기 쉽게 포장할 수 있음
※ 모델링(modeling) : 클래스로 현실의 개념을 표현하는 것
※ 메소드(Method)
- 메소드는 함수와 유사함
- 클래스에 묶여서 클래스의 인스턴스와 관계되는 일을 하는 함수
# 클래스 내부에 함수를 포함시킨 예시
class Human( ):
'''인간'''
def create( name, weight ):
person = Human()
person.name = name
person.weight = weight
return person
def eat( self ):
self.weight += 0.1
print("{}가 먹어서 {}kg이 되었습니다".format(self.name, self.weight))
def walk( self ):
self.weight -= 0.1
print("{}가 걸어서 {}kg이 되었습니다".format(self.name, self.weight))
person = Human.create("철수", 60.5)
person.eat()
※ self
- 메소드의 첫번째 인자
- 인스턴스의 매개변수를 전달 할 때는 self 매개변수는 생략
초기화 함수 : __init__ 인스턴스를 만들 때 실행되는 함수
문자열화 함수 : __str__ 인스턴스 자체를 출력 할 때의 형식을 지정해주는 함수
class Human( ):
'''인간'''
def __init__( self, name, weight ):
'''초기화 함수'''
self.name = name
self.weight = weight
def __str__( self )
'''문자열화 함수
return "{} ( 몸무게 {}kg )".format( self.name, self.weight )
person = Human( "사람", 60.5 ) # 초기화 함수 사용
print( person ) # 문자열화 함수 사용