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.