Clasele și obiectele Python. Partea 9 Curs Python de la începător la avansat în 11 postări de blog

Publicat: 2022-01-25

Acest articol va ajuta cititorul să înțeleagă clasele de bază Python împreună cu unele aplicații de bază din lumea reală. Vom folosi Visual Studio Code ca editor de cod. Dacă nu ați instalat Visual Studio Code, instrucțiunile sunt date în primul blog.

Clasele și obiectele Python – cuprins:

  1. Clasele Python
  2. Clasele Python – definiție
  3. Inițializarea claselor Python
  4. Să scriem prima noastră clasă Python
  5. Atribute
  6. Comportamentul clasei
  7. Obiecte în Python
  8. Moştenire

Clasele Python

După cum am discutat în primul blog, Python este un limbaj de programare orientat pe obiecte. Există trei fraze care sunt foarte importante atunci când discutăm despre programarea orientată pe obiecte în Python. Primul este clasa, al doilea ar fi un obiect, al treilea ar fi moștenirea. Să începem cu ce este o clasă.

Clasele Python – definiție

O clasă este un plan sau un program extensibil care ajută la crearea de obiecte. O clasă este formată din comportament și stare. Comportamentul unei clase este demonstrat prin funcții din interiorul clasei care se numesc metode. Starea clasei este demonstrată folosind variabilele din interiorul clasei care sunt numite atribute.

Inițializarea claselor Python

O clasă poate fi inițializată folosind următoarea sintaxă.

O clasă în python este definită folosind cuvântul cheie „clasă” după numele clasei. Sintaxa de bază a funcției Python este ilustrată mai jos.

De exemplu:

<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:

Notă: numele clasei are, de asemenea, aceleași norme ca și declarația variabilei.

Să scriem prima noastră clasă Python

# first class
 
class Animals:
	pass
 

În blocul de cod de mai sus, am scris o clasă pe care o vom dezvolta în continuare pe blog. După cum puteți vedea, am folosit cuvântul cheie „clasă”.

Să vedem acum cum să adăugați componente la clasa animalului. Dar înainte de asta, să învățăm despre constructorul „__init__()”. Constructorii sunt utilizați pentru instanțierea obiectelor. Aici __init__() este folosit pentru instanțierea obiectului. Constructorul poate fi implicit doar cu self ca argument sau parametrizat cu argumentele necesare.

Atribute

Există două tipuri diferite de atribute, primele sunt variabile de clasă, iar cele doua sunt variabile de instanță. Variabilele de clasă sunt variabilele care sunt deținute de clasă. De asemenea, aceste variabile sunt disponibile pentru toate instanțele clasei. Prin urmare, valoarea lor nu se va schimba chiar dacă instanța se schimbă.

# class variables
 
class Animals:
	type=”mammals”

Variabilele de instanță sunt variabilele care aparțin instanțelor în sine. Prin urmare, își vor schimba valoarea pe măsură ce instanța se schimbă.

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

Notă: Variabilele de instanță nu sunt disponibile pentru acces folosind numele clasei, deoarece se modifică în funcție de obiectul care o accesează.

Să facem un program care are atât variabilele de clasă cât și de instanță declarate.

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

În programul de mai sus, am folosit atât variabile de instanță, cât și variabile de clasă. Deci, aceste variabile formează atribute ale clasei.

Comportamentul clasei

După cum sa discutat, comportamentul clasei este definit de metodele din interiorul clasei. Dar înainte de a intra în discuția despre comportament, trebuie să începem să discutăm despre parametrul „self”, pe care l-am folosit în __init__().

De sine:

Într-un termen foarte simplu, ori de câte ori atașăm ceva la sine, se spune că variabila sau funcția aparține acelei clase. De asemenea, cu „self”, pot accesa atributele sau metodele clasei.

Metode:

Metodele clasei sunt funcții din interiorul clasei care vor avea primul argument ca „self”. O metodă în interiorul clasei este definită folosind cuvântul cheie „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”)
 

În metoda de mai sus „bark”, deoarece folosim variabila nume, care este o variabilă de instanță, o accesăm folosind „self” și această funcție ar tipări „woof woof!!!”, numai dacă numele furnizat obiect, este câine.

Am discutat majoritatea componentelor unei clase, dar s-ar putea să vă gândiți cum să vedeți dacă clasa funcționează. Răspunsul la aceasta este, dacă nu creăm un obiect al clasei, nu vom putea vedea ce face clasa. Acum, să definim și să creăm un obiect al clasei.

Obiecte în Python

Un obiect este o instanță a clasei. O clasă este doar un plan, dar obiectul este o instanță a clasei care are valori reale.

Codul pentru definirea sau crearea unui obiect este ilustrat mai jos.

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)
 

Pentru a crea un obiect, sintaxa este objectname=classname(arguments). Prin urmare, aici dăm numele animalului care urmează să fie câine și numărul de picioare să fie 4. Acum, obiectul clasei este creat, următorul pas este să folosiți obiectul pentru a-și accesa atributele. Pentru a accesa atributele unei clase folosind obiectul, amintiți-vă că numai variabilele de instanță pot fi accesate folosind obiectul. Variabilele de instanță din clasa noastră sunt numele și picioarele.

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)
 

După cum putem vedea, putem accesa variabilele de instanță folosind notația punct.

Să explorăm rezultatul.

#Output
 
dog
4
 

Pentru a accesa funcțiile din cadrul clasei sau metodelor, vom folosi notația cu puncte. Exemplul este ilustrat mai jos.

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!!!

În exemplul de mai sus, putem vedea că accesăm metoda clasei „latră” folosind obiectul câine pe care l-am creat. Putem vedea că nu folosim parametrul „self” în argumentele funcției. Acest lucru se datorează faptului că nu avem nevoie de utilizarea „sinelui” în afara clasei, deoarece obiectul însuși acționează ca sine.

Moştenire

Moștenirea este un proces prin care atributele și metodele clasei pot fi transmise unei clase secundare. Clasa de la care moștenește clasa copil este clasa părinte. Sintaxa pentru moștenire este ilustrată mai jos.

#Inheritance
 
class parent:
 
class child(parent):
 

Din ilustrația de mai sus, putem vedea că pentru sintaxa de moștenire plasăm numele clasei părinte ca argument pentru clasa copil. Să folosim clasa Animale și să facem o clasă pentru copii numită câine. Acest lucru este ilustrat mai jos.

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

În exemplul de cod de mai sus, am creat o clasă de câini care extinde clasa de animale pe care am creat-o înainte. De asemenea, folosim parametrii din Animals folosind Animals.__init__(argumente) care are nume și picioare care vor fi moștenite în clasa câinelui. Apoi creăm un atribut de instanță pentru clasa de câini care este rasa.

Acum să facem un obiect pentru clasa de câini și să accesăm atributele și metodele clasei de animale.

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!!!

După cum putem vedea din ieșire, atributele și metodele clasei părinte sunt accesate de obiectul clasei copil.

În acest blog, am acoperit câteva elemente de bază ale cursurilor în Python. În următoarea postare pe blog vom trata subiectul gestionării fișierelor.

python_classes

S-ar putea să vă placă și Cursul nostru JavaScript de la începător la avansat.

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

Autor: Robert Whitney

Expert JavaScript și instructor care antrenează departamentele IT. Scopul său principal este de a crește productivitatea echipei, învățându-i pe alții cum să coopereze eficient în timp ce codifică.

Curs Python de la începător la avansat în 11 postări de blog:

  1. Curs de introducere în Python. Partea 1 Curs Python de la începător la avansat în 11 postări de blog
  2. Variabile și tipuri de date în Python. Partea 2 Curs Python de la începător la avansat în 11 postări de blog
  3. Tupluri, liste, seturi și dicționare Python. Partea 3 Curs Python de la începător la avansat în 11 postări de blog
  4. Seturi și dicționare Python. Partea 4 Curs Python de la începător la avansat în 11 postări de blog
  5. Declarații condiționate în Python. Partea 5 Curs Python de la începător la avansat în 11 postări de blog
  6. Bucle în Python. Partea 6 Curs Python de la începător la avansat în 11 postări de blog
  7. Funcții Python. Partea 7 Curs Python de la începător la avansat în 11 postări de blog
  8. Funcții avansate în Python. Partea 8 Curs Python de la începător la avansat în 11 postări de blog
  9. Clasele și obiectele Python. Partea 9 Curs Python de la începător la avansat în 11 postări de blog
  10. Fișiere în Python. Partea 10 Curs Python de la începător la avansat în 11 postări de blog
  11. Aplicații Python în practică. Partea 11 Curs Python de la începător la avansat în 11 postări de blog