logo

Класи та об’єкти в Python

Python — це об’єктно-орієнтована мова програмування, яка пропонує класи, які є потужним інструментом для написання багаторазового коду. Для опису об’єктів зі спільними характеристиками та поведінкою використовуються класи. У цій статті ми розглянемо ідеї Python щодо класів та об’єктів.

Класи в Python:

У Python клас — це визначений користувачем тип даних, який містить як самі дані, так і методи, які можна використовувати для маніпулювання ними. У певному сенсі класи служать шаблоном для створення об'єктів. Вони забезпечують характеристики та операції, які використовуватимуть об’єкти.

Припустимо, клас є прототипом будівлі. Будівля містить усі деталі про підлогу, кімнати, двері, вікна тощо. На основі цих деталей ми можемо створити скільки завгодно будівель. Отже, будівлю можна розглядати як клас, і ми можемо створити скільки завгодно об’єктів цього класу.

Створення класів на Python

У Python клас можна створити за допомогою ключового слова class, після якого йде ім’я класу. Синтаксис для створення класу наведено нижче.

"алгоритм крускала"

Синтаксис

 class ClassName: #statement_suite 

У Python ми повинні зауважити, що кожен клас пов’язаний із рядком документації, до якого можна отримати доступ за допомогою .__doc__. Клас містить набір операторів, включаючи визначення полів, конструктора, функції тощо.

приклад:

код:

 class Person: def __init__(self, name, age): # This is the constructor method that is called when creating a new Person object # It takes two parameters, name and age, and initializes them as attributes of the object self.name = name self.age = age def greet(self): # This is a method of the Person class that prints a greeting message print('Hello, my name is ' + self.name) 

Ім'я та вік є двома властивостями класу Person. Крім того, він має функцію під назвою greet, яка друкує привітання.

Об'єкти в Python:

Об’єкт — це окремий екземпляр класу з унікальними характеристиками та функціями. Після створення класу ви можете створювати об’єкти на його основі. Використовуючи конструктор класу, ви можете створити об’єкт класу в Python. Атрибути об’єкта ініціалізуються в конструкторі, який є спеціальною процедурою з назвою __init__.

Синтаксис:

 # Declare an object of a class object_name = Class_Name(arguments) 

приклад:

римські цифри 1100

код:

 class Person: def __init__(self, name, age): self.name = name self.age = age def greet(self): print('Hello, my name is ' + self.name) # Create a new instance of the Person class and assign it to the variable person1 person1 = Person('Ayan', 25) person1.greet() 

Вихід:

 'Hello, my name is Ayan' 

Самопараметр

Самопараметр посилається на поточний екземпляр класу та має доступ до змінних класу. Ми можемо використовувати будь-що замість self, але це має бути перший параметр будь-якої функції, яка належить до класу.

_ _init_ _ метод

Щоб створити екземпляр класу в Python, викликається спеціальна функція під назвою __init__. Хоча він використовується для встановлення атрибутів об’єкта, його часто називають конструктором.

Власний аргумент є єдиним, що вимагається методом __init__. Цей аргумент посилається на щойно згенерований екземпляр класу. Щоб ініціалізувати значення кожного атрибута, пов’язаного з об’єктами, ви можете оголосити додаткові аргументи в методі __init__.

Змінні класу та екземпляра

Усі екземпляри класу обмінюються змінними класу. Вони функціонують незалежно від будь-яких методів класу, і до них можна отримати доступ за допомогою імені класу. Ось ілюстрація:

linux яка команда

код:

 class Person: count = 0 # This is a class variable def __init__(self, name, age): self.name = name # This is an instance variable self.age = age Person.count += 1 # Accessing the class variable using the name of the class person1 = Person('Ayan', 25) person2 = Person('Bobby', 30) print(Person.count) 

Вихід:

 2 

Тоді як змінні екземпляра є специфічними для кожного екземпляра класу. Вони вказуються за допомогою самостійного аргументу в методі __init__. Ось ілюстрація:

код:

 class Person: def __init__(self, name, age): self.name = name # This is an instance variable self.age = age person1 = Person('Ayan', 25) person2 = Person('Bobby', 30) print(person1.name) print(person2.age) 

Вихід:

 Ayan 30 

Змінні класу створюються окремо від будь-яких методів класу та є спільними для всіх копій класу. Кожен екземпляр класу має власні змінні екземпляра, які вказуються в методі __init__ з використанням власного аргументу.

Висновок:

Підсумовуючи, поняття класів і об’єктів Python є сильними ідеями, які дозволяють писати багаторазові програми. Ви можете об’єднати інформацію та можливості в єдину сутність, яку можна використовувати для створення багатьох об’єктів, створивши клас. За допомогою крапкової нотації ви можете отримати доступ до методів і властивостей об’єкта після його створення. Ви можете розробити більш логічний, ефективний і керований код, розуміючи класи та об’єкти Python.