Python -klasser

Python -klasser

Siden begynnelsen har Python vært et objektorientert språk. Dette gjør det enkelt å lage og bruke klasser og objekter. I denne opplæringen lærer vi hvordan du lager og bruker Python -klasser. Spesifikt vil vi snakke om hvilke klasser som er i Python, hvorfor vi bruker dem, de mange slags klasser, hvordan du kan definere en klasse i Python, hvordan du erklærer og endrer klasseobjekter, og mye mer.

Klasser i Python

Alt i Python er et objekt, og en klasse er hvordan et objekt er definert. En klasse fungerer som grunnlaget for alle data i Python. De fungerer som grunnlaget for objektorientert programmering og står i for de tingene du vil at programmene dine skal simulere. For å lage objekter, som er spesielle forekomster av en klasse, bruker du en klasse.

En klasse spesifiserer både informasjonen som kan kobles til et objekts egenskaper, så vel som den generelle oppførselen som en gruppe relaterte objekter kan utvise. Fordi klasser kan arve fra hverandre, kan du utvikle en klasse som utvider mulighetene til en allerede eksisterende klasse. I Python, som er objektorientert, er dette en relativt vanlig teknikk.

Python -klassevariablene deles av alle tilfeller av et objekt i en klasse. Variabler er definert når en klasse dannes. De er ikke definert i noen av klassens metoder.

Objekter i Python

Som vi nevnte tidligere, er alt i Python et objekt og et eksempel på en klasse. Innebygde typer og brukerdefinerte klasser ble utmerket i tidlige iterasjoner av Python, men de er nå helt utskiftbare. Klasser og typer er ting i seg selv og er av typen. Type () -funksjonen til Python kan brukes for å bestemme hvilken type objekt.

Attributter er dataverdiene vi lagrer i et objekt, og metoder er funksjonene vi forbinder med objektet. Noen innebygde objektmetoder, som strenger og lister, har allerede blitt brukt.

La oss se på noen eksempler og sette dem ut i livet for å få en bedre forståelse.

Eksempel 1:

I dette eksemplet skal vi definere en klasse i Python. Klassedefinisjoner i Python starter med klassens nøkkelord, akkurat som funksjonsdefinisjoner gjør med DEF -nøkkelordet. En kort beskrivelse av klassen finner du i den første strengen i klassen. Det kalles en doktor. Dette anbefales faktisk, men ikke påkrevd. Her er en kort forklaring av klassene:


Alle attributtene til en klasse er erklært i et nytt lokalt navneområde generert av klassen. Data eller funksjoner kan være attributter. I tillegg inneholder den spesielle egenskaper som starter med doble understreker, eller for eksempel __doc__ gir oss klassens doktor.

Når en klasse er definert, produseres et nytt klasseobjekt som har samme navn. Vi kan instantisere nye objekter i den klassen og få tilgang til deres forskjellige attributter ved å bruke dette klasseobjektet.

Her kan du se at en studentklasse og en funksjon med navnet 'hilsen' begge er blitt generert. Alderen vises etterpå. I den endelige kodelinjen kalte vi hilsen () -funksjonen og en unik attributt.

Klasseelev:
"Studentklasse"
alder = 22
def hilsen (selv):
trykk ('Hei der!')
trykk (student.alder)
trykk (student.hilse på)
trykk (student.__doc__)

Utgangen vises her.

Eksempel 2:

Studentklassen, som har attributtene til alder og navn, ble konstruert ved hjelp av koden nedenfor. Vi har også gitt dem verdi. Du kan se at 'jeget' var en parameter vi ga til displayfunksjonen. Den samme klasseattributtet refereres til ved hjelp av denne frasen. Et nytt forekomstobjekt med navnet "STD" er opprettet. Vi kan få tilgang til klassens egenskaper ved å bruke den.

Klasseelev:
Alder = 20
name = "Jackie"
def show (self):
Print ("Alder: %d \ nname: %s" %(selv.alder, selv.Navn))
STD = Student ()
std.forestilling()

Studentens alder og navn vises på skjermbildet nedenfor.

Eksempel 3:

Vi går i detalj i det endelige eksemplet på dette innlegget om hvordan du bygger et klasseobjekt i Python. Vær oppmerksom på at du kan få tilgang til forskjellige attributter via klasseobjektet. I tillegg kan den brukes til å produsere nye forekomster av klassens objekter. Prosessen med å lage et objekt kan sammenlignes med å kalle en funksjon.

Et skjermbilde fra eksemplet vises nedenfor. Ordet “STD” vil bli brukt til å lage en ny objektforekomst. Prefikset til objektets navn gir tilgang til objektets attributter.


Data eller en prosedyre kan være et attributt. De relaterte funksjonene til en klasse er metodene i den klassen. Dette indikerer at læreren. Vis vil være et metodeobjekt fordi det er et funksjonsobjekt (en attributt til en klasse). Kontroller koden nedenfor.

I dette tilfellet er en klasselærer opprinnelig opprettet. Vi har skrevet en funksjon som heter "show" og levert argumentet "selv" inn i det. Et klasseobjekt er deretter konstruert etter det. Metoden for å vise utgangen er også blitt kalt.

klasseforstander:
"Dette er en lærerklasse"
alder = 40
def show (self):
trykk ('Hei')
Sebastian = lærer ()
trykk (lærer.forestilling)
trykk (Sebastian.forestilling)
Sebastian.forestilling()

Selv om vi kalte metodelæreren.Vis () Uten noen argumenter har du kanskje lagt merke til parameteren 'Self' i funksjonserklæringen i klassen. Dette er slik fordi selve objektet alltid blir levert som det første argumentet når et objekt kaller en av metodene. Dermed lærer.show () blir lærer.Show (Sebastian).

Generelt er det nesten lik å påberope seg en metode med en liste over argumenter. Av disse grunner er det viktig at objektet i seg selv er det første argumentet for funksjonen. Vanligvis blir dette referert til som 'selv.'

Utfallet av koden over sees på skjermdumpen nedenfor.

Konklusjon:

Her har vi diskutert Python -klasser. Forhåpentligvis er du allerede klar over de viktigste ideene bak Python -klasser. Her kan du også finne en rekke grundige eksempler som du kan bruke til å løpe gjennom og velge nøkkelbegrepene du vil innlemme i prosjektene dine.