Python 클래스와 객체
Python 클래스/객체
Python은面向对象的编程语言입니다.
Python에서 거의 모든 것이 객체이며, 속성과 메서드를 가집니다.
클래스(Class)는 객체 생성자와 유사하거나, 객체를 생성하는 "플랜"입니다.
클래스 생성
클래스를 생성하려면 다음을 사용합니다: class
키워드:
예제
x 이름의 속성을 사용하여 MyClass 이름의 클래스를 생성합니다:
class MyClass: x = 5
객체 생성
지금으로서는 myClass 이름의 클래스를 사용하여 객체를 생성할 수 있습니다:
예제
p1 이름의 객체를 생성하고 x의 값을 출력합니다:
p1 = MyClass() print(p1.x)
__init__() 함수
위의 예제는 가장 간단한 형태의 클래스와 객체이며, 실제 애플리케이션에서는 실제로 유용하지 않습니다.
클래스의 의미를 이해하려면, 먼저 내장된 것을 이해해야 합니다. __init__()
함수.
모든 클래스는 __init__() 이름의 함수를 가지고 있으며, 클래스를 시작할 때 항상 실행됩니다.
__init__() 함수를 사용하여 객체 속성에 값을 할당하거나, 객체를 생성할 때 필요한 다른 작업을 수행합니다:
예제
Person 이름의 클래스를 생성하고 __init__() 함수를 사용하여 name과 age에 값을 할당합니다:
class Person: def __init__(self, name, age): self.name = name self.age = age p1 = Person("Bill", 63) print(p1.name) print(p1.age)
주의:또한, 클래스를 사용하여 새로운 객체를 생성할 때마다자동 호출됨 __init__() 함수.
객체 메서드
객체는 메서드를 포함할 수 있습니다. 객체의 메서드는 해당 객체에 belongs하는 함수입니다.
让我们在 Person 클래스에서 메서드를 생성합니다:
예제
가볍게 인사말을 출력하는 함수를 추가하고 p1 객체에서 이를 실행합니다:
class Person: def __init__(self, name, age): self.name = name self.age = age def myfunc(self): print("Hello my name is " + self.name) p1 = Person("Bill", 63) p1.myfunc()
알림:self 参数는 현재 인스턴스에 대한 클래스의 참조이며, 해당 클래스의 변수에 접근하는 데 사용됩니다.
self 매개변수
self
매개변수는 클래스의 현재 인스턴스에 대한 참조이며, 클래스에 속하는 변수에 접근하는 데 사용됩니다.
그 이름이命名为 필요하지 않습니다 self
، 그것을 자유롭게 호출할 수 있습니다. 하지만 그것은 클래스 내의 어떤 함수의 매개변수로도 사용되어야 합니다.첫 번째 매개변수:
예제
mysillyobject과 abc 대신 단어 self를 사용합니다:
class Person: def __init__(mysillyobject, name, age): mysillyobject.name = name mysillyobject.age = age def myfunc(abc): print("Hello my name is " + abc.name) p1 = Person("Bill", 63) p1.myfunc()
pass 문
클래스 정의는 비어 있을 수 없습니다. 하지만 무엇인가의 이유로 비내용의 클래스 정의 문장을 작성하면, 오류를 방지하기 위해 pass 문을 사용할 수 있습니다.
예제
class Person: pass