파이썬 클래스 사용법 및 작성법
사용하기 전에 클래스와 객체가 무엇인지 알아야 한다.
클래스란?
클래스는 객체를 만들기 위한 설계도로 속성(필드) 행동(메서드)을 가질 수 있다.
속성(필드)은 클래스에서 정의한 변수로 객체의 상태를 나타냅니다.
행동(메서드)은 클래스에서 정의한 함수로 객체가 할 수 있는 동작을 나타 냅니다.
class 클래스명 myname:
def __init__(self,name):
self.__name=name
def getName(self):
print("이름 : ",self.__name)
이렇게 클래스를 정의하면
from 클래스가담긴 파일명 import myname(클래스명)
f=myname("아리") #생성자
f.getName()
위 코드를 동작시키면 아리라는 이름이 출력된다.
이때 f=클래스명()인 f가 바로 객체라고 한다
객체는 정의된 클래스로 고유의 속성을 지정해 주면 여러 개를 찍어낼 수 있다.
즉 다시 말해 클래스는 객체를 만들기 위한 설계도이고 객체는 클래스에서 정의된 속성과 메서드를 가지는 실체이다.
클래스를 사용하는 이유에는 코드 재사용성을 높여준다. 또한 캡슐화로 데이터를 직접 집어넣는 게 아니라 메서드를 통해서 접근할 수 있도록 데이터를 보호한다.
이때 추가적으로 클래스 변수를 선언할 수 있는데
class num:
a=10 #클래스 변수
def __init__(self, number):
self.__number = number #인스턴스 변수
def get(self):
return self.__number
def set(self,number):
self.__number=number
def seta(self,number):
num.a=number
from 파일명 import num
f=num(5) #생성자
g=num(7)
f.seta(0)
print(g.a)
g.seta(2)
print(f.a)
이경우에는 클래스변수인 a가 변화가 되어서
f 객체에서 변화시켜도 g 객체에서도 변환된 값이 반환된다.
위 코드를 실행시킨 결괏값을 보면
0
2
이렇게 나온다,
반응형