파이썬 클래스와 객체. 11개의 블로그 게시물에서 초급에서 고급까지의 9부 Python 과정

게시 됨: 2022-01-25

이 기사는 독자가 실제 세계의 몇 가지 기본 응용 프로그램과 함께 기본 Python 클래스를 이해하는 데 도움이 될 것입니다. 코드 편집기로 Visual Studio Code를 사용할 것입니다. Visual Studio Code를 설치하지 않은 경우 첫 번째 블로그에 지침이 제공됩니다.

파이썬 클래스와 객체 – 목차:

  1. 파이썬 수업
  2. 파이썬 클래스 – 정의
  3. 파이썬 클래스 초기화
  4. 첫 번째 Python 클래스를 작성해 보겠습니다.
  5. 속성
  6. 클래스의 동작
  7. 파이썬의 객체
  8. 계승

파이썬 수업

첫 번째 블로그에서 논의했듯이 Python은 객체 지향 프로그래밍 언어입니다. 파이썬에서 객체 지향 프로그래밍을 논의할 때 매우 중요한 세 가지 문구가 있습니다. 첫 번째는 클래스, 두 번째는 객체, 세 번째는 상속입니다. 클래스가 무엇인지부터 알아보겠습니다.

파이썬 클래스 – 정의

클래스는 객체 생성을 돕는 청사진 또는 확장 가능한 프로그램입니다. 클래스는 동작과 상태로 구성됩니다. 클래스의 동작은 메서드라고 하는 클래스 내부의 함수를 통해 설명됩니다. 클래스의 상태는 속성이라고 하는 클래스 내부의 변수를 사용하여 표시됩니다.

파이썬 클래스 초기화

클래스는 다음 구문을 사용하여 초기화할 수 있습니다.

파이썬에서 클래스는 클래스 이름 뒤에 "class" 키워드를 사용하여 정의됩니다. Python 함수의 기본 구문은 다음과 같습니다.

예를 들어:

<img src="https://firmbee.com/wp-content/uploads/Python_9-800x600.png" alt="Python_classes" width="800" height="600" class="alignnone size-medium wp-image-21409 img-fluid" />
# Create a function
# class Monkey
class classname:

참고: 클래스 이름도 변수 선언과 동일한 규범을 갖습니다.

첫 번째 Python 클래스를 작성해 보겠습니다.

# first class
 
class Animals:
	pass
 

위의 코드 블록에서 블로그에서 추가로 개발할 클래스를 작성했습니다. 보시다시피 "class" 키워드를 사용했습니다.

이제 동물의 클래스에 구성 요소를 추가하는 방법을 살펴보겠습니다. 하지만 그 전에 "__init__()" 생성자에 대해 알아보겠습니다. 생성자는 객체 인스턴스화에 사용됩니다. 여기서 __init__()는 객체 인스턴스화에 사용됩니다. 생성자는 self만 인수로 사용하는 기본값이거나 필수 인수로 매개변수화될 수 있습니다.

속성

속성에는 두 가지 유형이 있습니다. 첫 번째 속성은 클래스 변수이고 두 번째 속성은 인스턴스 변수입니다. 클래스 변수는 클래스가 소유한 변수입니다. 또한 이러한 변수는 클래스의 모든 인스턴스에서 사용할 수 있습니다. 따라서 인스턴스가 변경되어도 해당 값은 변경되지 않습니다.

# class variables
 
class Animals:
	type=”mammals”

인스턴스 변수는 인스턴스 자체에 속하는 변수입니다. 따라서 인스턴스가 변경되면 값이 변경됩니다.

# class variables
 
class Animals:
	def __init__(self,legs):
		self.legs=legs
		

참고: 인스턴스 변수는 액세스하는 개체에 따라 변경되기 때문에 클래스 이름을 사용하여 액세스할 수 없습니다.

클래스 변수와 인스턴스 변수를 모두 선언한 프로그램을 만들어 봅시다.

class Animals:
	type=”mammals”
	def __init__(self,name,legs):
		self.name=name
		self.legs=legs
 
	

위의 프로그램에서는 인스턴스 변수와 클래스 변수를 모두 사용했습니다. 따라서 이러한 변수는 클래스의 속성을 형성합니다.

클래스의 동작

논의된 바와 같이, 클래스의 동작은 클래스 내부의 메소드에 의해 정의됩니다. 그러나 행동에 대한 논의로 들어가기 전에 __init__()에서 사용한 "self" 매개변수에 대해 논의하기 시작해야 합니다.

본인:

아주 간단한 용어로, 우리가 self에 무엇이든 붙일 때마다 그것은 변수나 함수가 그 클래스에 속한다고 말합니다. 또한 "self"를 사용하여 클래스의 속성이나 메서드에 액세스할 수 있습니다.

행동 양식:

클래스 메서드는 첫 번째 인수가 "self"인 클래스 내부의 함수입니다. 클래스 내부의 메소드는 "def" 키워드를 사용하여 정의됩니다.

class Animals:
	type=”mammals”
	def __init__(self,name,legs):
		self.name=name
		self.legs=legs
	def bark(self):
		if self.name==”dog”:
			print(“woof woof!!!”)
		else:
			print(“not a dog”)
 

위의 "bark" 메소드에서는 인스턴스 변수인 name 변수를 사용하므로 "self"를 사용하여 액세스하고 이 함수는 "woof wof!!!"를 출력합니다. 개체는 개입니다.

우리는 클래스의 대부분의 구성 요소에 대해 논의했지만 클래스가 작동하는지 확인하는 방법을 생각할 수 있습니다. 이에 대한 대답은 클래스의 객체를 생성하지 않는 한 클래스가 무엇을 하는지 볼 수 없다는 것입니다. 이제 클래스의 객체를 정의하고 생성해 봅시다.

파이썬의 객체

객체는 클래스의 인스턴스입니다. 클래스는 단지 청사진일 뿐이지만 객체는 실제 값이 있는 클래스의 인스턴스입니다.

객체를 정의하거나 생성하는 코드는 다음과 같습니다.

class Animals:
	type=”mammals”
	def __init__(self,name,legs):
		self.name=name
		self.legs=legs
	def bark(self):
		if self.name==”dog”:
			print(“woof woof!!!”)
		else:
			print(“not a dog”)
 
dog=Animals(“dog”,4)
 

객체를 생성하기 위한 구문은 objectname=classname(arguments)입니다. 따라서 여기서 우리는 동물의 이름을 개로 지정하고 다리의 수를 4로 지정합니다. 이제 클래스의 객체가 생성되었습니다. 다음 단계는 객체를 사용하여 속성에 액세스하는 것입니다. 개체를 사용하여 클래스의 속성에 액세스하려면 개체를 사용하여 인스턴스 변수에만 액세스할 수 있음을 기억하십시오. 우리 클래스의 인스턴스 변수는 이름과 다리입니다.

class Animals:
	type=”mammals”
	def __init__(self,name,legs):
		self.name=name
		self.legs=legs
	def bark(self):
		if self.name==”dog”:
			print(“woof woof!!!”)
		else:
			print(“not a dog”)
 
dog=Animals(“dog”,4)
print(dog.name)
print(dog.legs)
 

보시다시피, 점 표기법을 사용하여 인스턴스 변수에 액세스할 수 있습니다.

출력을 살펴보겠습니다.

#Output
 
dog
4
 

클래스 또는 메서드 내부의 함수에 액세스하려면 점 표기법을 사용합니다. 예제는 아래에 나와 있습니다.

class Animals:
	type=”mammals”
	def __init__(self,name,legs):
		self.name=name
		self.legs=legs
	def bark(self):
		if self.name==”dog”:
			print(“woof woof!!!”)
		else:
			print(“not a dog”)
 
dog=Animals(“dog”,4)
print(dog.name)
print(dog.legs)
print(dog.bark())
#Output
 
dog
4
woof woof!!!

위의 예에서 우리는 우리가 만든 dog 객체를 사용하여 "bark" 클래스 메소드에 접근하고 있음을 알 수 있습니다. 함수 인수에서 "self" 매개변수를 사용하지 않는 것을 볼 수 있습니다. 이는 객체 자체가 self로 작동하기 때문에 클래스 외부에서 "self"를 사용할 필요가 없기 때문입니다.

계승

상속은 클래스 속성과 메서드를 자식 클래스에 전달할 수 있는 프로세스입니다. 자식 클래스가 상속하는 클래스가 부모 클래스입니다. 상속 구문은 다음과 같습니다.

#Inheritance
 
class parent:
 
class child(parent):
 

위의 그림에서 상속 구문의 경우 부모 클래스 이름을 자식 클래스에 대한 인수로 배치하고 있음을 알 수 있습니다. Animals 클래스를 사용하여 dog라는 자식 클래스를 만들어 봅시다. 이것은 아래에 설명되어 있습니다.

class Animals:
	type=”mammals”
	def __init__(self,name,legs):
		self.name=name
		self.legs=legs
	def bark(self):
		if self.name==”dog”:
			print(“woof woof!!!”)
		else:
			print(“not a dog”)
 
class Dog(Animals):
def __init__(self,name,legs,breed):
Animals.__init__(self,name,legs)
self.breed=breed

위의 예제 코드에서는 이전에 생성한 동물 클래스를 확장하는 dog 클래스를 만들었습니다. 우리는 또한 개 클래스에 상속될 이름과 다리가 있는 Animals.__init__(arguments)를 사용하여 Animals의 매개변수를 사용하고 있습니다. 그런 다음 품종인 개 클래스에 대한 인스턴스 속성을 만들고 있습니다.

이제 dog 클래스를 위한 객체를 만들고 Animals 클래스의 속성과 메소드에 접근해 봅시다.

class Animals:
	type=”mammals”
	def __init__(self,name,legs):
		self.name=name
		self.legs=legs
	def bark(self):
		if self.name==”dog”:
			print(“woof woof!!!”)
		else:
			print(“not a dog”)
 
class Dog(Animals):
def __init__(self,name,legs,breed):
Animals.__init__(self,name,legs)
self.breed=breed
 
 
pug=Dog("dog",4,"pug")
pug.breed
pug.name
pug.legs
pug.bark()
#Output
 
pug
dog
4
woof woof!!!

출력에서 볼 수 있듯이 부모 클래스 속성과 메서드는 자식 클래스 개체에 의해 액세스됩니다.

이 블로그에서는 Python 클래스의 몇 가지 기본 사항을 다루었습니다. 다음 블로그 게시물에서는 파일 처리에 대한 주제를 다룰 것입니다.

python_classes

초급부터 고급까지의 JavaScript 과정도 좋아할 수 있습니다.

Python classes and objects. Part 9 Python Course from Beginner to Advanced in 11 blog posts robert whitney avatar 1background

저자: 로버트 휘트니

IT 부서를 지도하는 JavaScript 전문가이자 강사입니다. 그의 주요 목표는 코딩하는 동안 다른 사람들에게 효과적으로 협력하는 방법을 가르쳐 팀 생산성을 높이는 것입니다.

11개의 블로그 게시물에서 초급에서 고급까지 Python 과정:

  1. 파이썬 코스 소개. 11개의 블로그 게시물에서 1부 Python 코스 초급부터 고급까지
  2. Python의 변수 및 데이터 유형. 11개의 블로그 게시물에서 2부 Python 코스 초급부터 고급까지
  3. Python 튜플, 목록, 집합 및 사전. 11개의 블로그 게시물에서 3부 Python 코스 초급부터 고급까지
  4. 파이썬 세트와 사전. 11개의 블로그 게시물에서 4부 Python 코스 초급부터 고급까지
  5. 파이썬의 조건문. 11개의 블로그 게시물에서 5부 Python 코스 초급부터 고급까지
  6. 파이썬의 루프. 11개의 블로그 게시물에서 6부 Python 코스 초급부터 고급까지
  7. 파이썬 함수. 11개의 블로그 게시물에서 7부 Python 코스 초급부터 고급까지
  8. Python의 고급 기능. 11개의 블로그 게시물에서 초급에서 고급까지의 파트 8 Python 과정
  9. 파이썬 클래스와 객체. 11개의 블로그 게시물에서 초급에서 고급까지의 9부 Python 과정
  10. 파이썬의 파일. 11개의 블로그 게시물에서 초급에서 고급까지의 10부 Python 과정
  11. 실제로 Python 응용 프로그램. 11개의 블로그 게시물에서 초급에서 고급까지의 11부 Python 과정