Python er en av de mest populære programmeringsspråk i verden , ifølge TIOBE Index. Python er et høyere nivå språk, programmerere trenger ikke å administrere minne . Python magiske metoder er en noe uklar del av Python . De er nevnt i Språk- referanse, men ikke grundig dokumentert eller tilgjengelig for referanse på ett sted . Python magiske metoder gjør sin standard oppførsel for å bli overstyrt av programmereren . Dette kan være en nyttig funksjon når standard oppførsel av Python gjør koding tungvint. Magiske metoder kan også være farlig . Deres mektige naturen betyr at de kan gi uventede resultater . Magiske metoder er alltid omgitt av dobbel understrek. Objektorientert programmering
objektorientert programmering, eller OOP , visninger programmer som et samfunn av samspill gjenstander i stedet for en liste med instruksjoner . Dette skiller OOP fra tradisjonell
avgjørende stil programmering. I stedet for å overlate den datamaskinen en liste med instruksjoner som skal utføres , OOP programmerere definerer "objekter" og deres atferd . OOP programmerere orkestrere disse objektene for å produsere nyttige programmer .
Klasser og metoder
det viktigste verktøyet OOP programmerere har til rådighet for å lage objekter er klassen . Klassen er en spesiell type objekt hvis jobb er å gjøre andre objekter. Klasser kan " arve " fra andre klasser eller kopiere deres oppførsel . De " oppførsel " av en klasse som programmerere definerer, kalt " metoder. " Objekter kan også lagre verdier . Disse verdiene er kalt " medlem variabler . "
" __call__ "
En viktig magi metoden er " __call__ ", som lar programmereren å lage et objekt handling liker en enkel funksjon . Dette kan være nyttig hvis det aktuelle objektet er konseptuelt en funksjon , men gjennomføringen er objektorientert . Å bruke " __call__ " magic metoden, må " __call__ "-metoden defineres i callable klassen .
" __getattr__ "
P Dette magiske metoden gjør at programmerer å overstyre hvordan medlem verdier av en klasse åpnes. Dette er en svært allsidig magisk metode og er nyttig for å bruke Pythons objektorientert syntaks for å få tilgang til deler av et "objekt " som ikke er objektorientert . For eksempel er denne funksjonen som brukes i "Vakre Soup ", en HTML- parsing bibliotek . Metoden " __getattr_ " lar brukere av "Vakre Soup " å krysse HTML hjelp Pythons OOP syntaks.
" __setattr__ "
Denne metoden er mindre vanlig enn " __getattr__ . " Metoden " __setattr__ " gir en måte for programmerere å overstyre standard oppførsel for å sette medlem variabler . Denne metoden er spesielt farlig . Det bør ikke brukes måfå som det kan gjøre for meget tett uleselig kode .