logo

Clase și obiecte în Python

Python este un limbaj de programare orientat pe obiecte care oferă clase, care sunt un instrument puternic pentru scrierea codului reutilizabil. Pentru a descrie obiecte cu caracteristici și comportamente comune, sunt utilizate clase. Vom examina ideile lui Python despre clase și obiecte în acest articol.

Clasuri în Python:

În Python, o clasă este un tip de date definit de utilizator care conține atât datele în sine, cât și metodele care pot fi utilizate pentru a le manipula. Într-un fel, clasele servesc ca șablon pentru a crea obiecte. Ele oferă caracteristicile și operațiile pe care obiectele le vor folosi.

Să presupunem că o clasă este un prototip al unei clădiri. O clădire conține toate detaliile despre podea, camere, uși, ferestre etc. putem face câte clădiri ne dorim, pe baza acestor detalii. Prin urmare, clădirea poate fi văzută ca o clasă și putem crea cât mai multe obiecte din această clasă.

redenumirea directorului în linux

Crearea de clase în Python

În Python, o clasă poate fi creată folosind cuvântul cheie class, urmat de numele clasei. Sintaxa pentru a crea o clasă este dată mai jos.

Sintaxă

 class ClassName: #statement_suite 

În Python, trebuie să observăm că fiecare clasă este asociată cu un șir de documentație care poate fi accesat prin utilizarea .__doc__. O clasă conține o suită de instrucțiuni care include definiții de câmpuri, constructor, funcție etc.

Exemplu:

Cod:

 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) 

Numele și vârsta sunt cele două proprietăți ale clasei Persoană. În plus, are o funcție numită salut care tipărește un salut.

Obiecte în Python:

Un obiect este o instanță particulară a unei clase cu caracteristici și funcții unice. După ce o clasă a fost stabilită, puteți crea obiecte pe baza ei. Folosind constructorul de clasă, puteți crea un obiect al unei clase în Python. Atributele obiectului sunt inițializate în constructor, care este o procedură specială cu numele __init__.

Sintaxă:

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

Exemplu:

Cod:

 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() 

Ieșire:

 'Hello, my name is Ayan' 

Autoparametrul

Autoparametrul se referă la instanța curentă a clasei și accesează variabilele clasei. Putem folosi orice în loc de self, dar trebuie să fie primul parametru al oricărei funcții care aparține clasei.

metoda _ _init_ _

Pentru a face o instanță a unei clase în Python, este apelată o funcție specifică numită __init__. Deși este folosit pentru a seta atributele obiectului, este adesea numit un constructor.

octeți python în șir

Auto-argumentul este singurul cerut de metoda __init__. Acest argument se referă la instanța nou generată a clasei. Pentru a inițializa valorile fiecărui atribut asociat obiectelor, puteți declara argumente suplimentare în metoda __init__.

Variabile de clasă și de instanță

Toate instanțele unei clase schimbă variabile de clasă. Ele funcționează independent de orice metodă de clasă și pot fi accesate prin utilizarea numelui clasei. Iată o ilustrare:

Cod:

 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) 

Ieșire:

 2 

În timp ce, variabilele de instanță sunt specifice fiecărei instanțe a unei clase. Ele sunt specificate folosind auto-argumentul din metoda __init__. Iată o ilustrație:

Cod:

 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) 

Ieșire:

 Ayan 30 

Variabilele de clasă sunt create separat de orice metodă de clasă și sunt partajate de toate copiile clasei. Fiecare instanță a unei clase are propriile variabile de instanță, care sunt specificate în metoda __init__ utilizând auto-argumentul.

Concluzie:

În concluzie, clasele și noțiunile de obiecte ale lui Python sunt idei puternice care vă permit să scrieți programe reutilizabile. Puteți combina informații și capabilități într-o singură entitate care poate fi folosită pentru a construi mai multe obiecte prin stabilirea unei clase. Folosind notația cu puncte, puteți accesa metodele și proprietățile unui obiect după ce acesta a fost creat. Puteți dezvolta un cod mai logic, mai eficient și mai ușor de gestionat prin înțelegerea claselor și obiectelor lui Python.