logo

Klasser og objekter i Python

Python er et objektorientert programmeringsspråk som tilbyr klasser, som er et potent verktøy for å skrive gjenbrukbar kode. For å beskrive objekter med felles egenskaper og atferd, brukes klasser. Vi skal undersøke Pythons ideer om klasser og objekter i denne artikkelen.

Klasser i Python:

I Python er en klasse en brukerdefinert datatype som inneholder både selve dataene og metodene som kan brukes til å manipulere dem. På en måte fungerer klasser som en mal for å lage objekter. De gir egenskapene og operasjonene som objektene vil bruke.

Anta at en klasse er en prototype av en bygning. Et bygg inneholder alle detaljer om gulv, rom, dører, vinduer osv. vi kan lage så mange bygg vi vil, basert på disse detaljene. Derfor kan bygningen sees på som en klasse, og vi kan lage så mange objekter av denne klassen.

Opprette klasser i Python

I Python kan en klasse opprettes ved å bruke nøkkelordet klasse, etterfulgt av klassenavnet. Syntaksen for å lage en klasse er gitt nedenfor.

Syntaks

 class ClassName: #statement_suite 

I Python må vi legge merke til at hver klasse er knyttet til en dokumentasjonsstreng som kan nås ved å bruke .__doc__. En klasse inneholder en setningspakke inkludert felt, konstruktør, funksjon osv. definisjon.

heltall til streng i java

Eksempel:

Kode:

 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) 

Navn og alder er de to egenskapene til Person-klassen. I tillegg har den en funksjon kalt hilse som skriver ut en hilsen.

Objekter i Python:

Et objekt er en spesiell forekomst av en klasse med unike egenskaper og funksjoner. Etter at en klasse er etablert, kan du lage objekter basert på den. Ved å bruke klassekonstruktøren kan du lage et objekt av en klasse i Python. Objektets attributter initialiseres i konstruktøren, som er en spesiell prosedyre med navnet __init__.

Syntaks:

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

Eksempel:

konverter strengdato

Kode:

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

Produksjon:

 'Hello, my name is Ayan' 

Selvparameteren

Selvparameteren refererer til gjeldende forekomst av klassen og får tilgang til klassevariablene. Vi kan bruke hva som helst i stedet for selvet, men det må være den første parameteren til enhver funksjon som tilhører klassen.

_ _init_ _ metode

For å lage en forekomst av en klasse i Python, kalles en spesifikk funksjon kalt __init__. Selv om det brukes til å angi objektets attributter, blir det ofte referert til som en konstruktør.

Selvargumentet er det eneste som kreves av __init__-metoden. Dette argumentet refererer til den nylig genererte forekomsten av klassen. For å initialisere verdiene til hvert attributt knyttet til objektene, kan du deklarere ekstra argumenter i __init__-metoden.

Klasse- og instansvariabler

Alle forekomster av en klasse utveksler klassevariabler. De fungerer uavhengig av alle klassemetoder og kan nås ved bruk av klassenavnet. Her er en illustrasjon:

Kode:

 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) 

Produksjon:

 2 

Mens forekomstvariabler er spesifikke for hver forekomst av en klasse. De er spesifisert ved å bruke selvargumentet i __init__-metoden. Her er en illustrasjon:

Kode:

 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) 

Produksjon:

 Ayan 30 

Klassevariabler opprettes separat fra alle klassemetoder og deles av alle klassekopier. Hver forekomst av en klasse har sine egne forekomstvariabler, som er spesifisert i __init__-metoden ved å bruke selvargumentet.

java-array til listen

Konklusjon:

Avslutningsvis er Pythons klasser og objektforestillinger sterke ideer som lar deg skrive gjenbrukbare programmer. Du kan kombinere informasjon og muligheter til en enkelt enhet som kan brukes til å bygge mange objekter ved å etablere en klasse. Ved å bruke punktnotasjonen kan du få tilgang til et objekts metoder og egenskaper etter at det er opprettet. Du kan utvikle mer logisk, effektiv og håndterbar kode ved å forstå Pythons klasser og objekter.