Fordelene ved introspeksjon i Python

Fordelene ved introspeksjon i Python


Programmeringsspråket Python, mye som andre programmeringsspråk, brukes til å utføre kommandoer basert på tilstanden til programmet. Dette er vanligvis oppnås gjennom å sammenligne variabler eller evaluere virkelighetstro eller-falske uttalelser. Programmereren må vite om andre faktiske kode på forhånd, slik som formålet med en bestemt modul og hvordan det fungerer. Introspeksjon er et aspekt av programmering som gjør programmet til å evaluere seg selv og sine egne indre arbeid.

introspeksjon

Introspeksjon i Python innebærer å bruke funksjonaliteten til Python å undersøke gjenstander, metoder og moduler under kjøring. I Python, alt er et objekt, og den innadvendte natur Python betyr at det kan undersøke gjenstander under kjøring av kode. Dette betyr at koden utfører, det undersøker seg selv, eller deler av seg selv, for å veilede eventuelle tiltak. Ved å undersøke seg selv, kan koden hente informasjon om datatyper eller metodenavn som determiners til hvordan du går frem.

Ringe Metode Argumenter Ut av Sequence

I typisk programmering praksis, kan en programmerer gi standardinformasjon for ethvert argument i en metode. For eksempel, Python-metoden

def tredoble (verdi1, verdi2 = 4, verdi3 = 6):

har tre argumenter, hvorav to er gitt standardverdier (VALUE2 og basis3). I enkelte andre programmeringsspråk, for eksempel C ++, må en programmerer gi argumentene i riktig rekkefølge for metoden skal fungere riktig. Python, men vil la programmerer spesifisere argumentene i hvilken som helst rekkefølge, for eksempel

trippel (3, verdi3 = 7)

fordi argumenter gitt til en fremgangsmåte blir forstått av Python som en ordbok objekt.

Den "getattr" og funksjon

Den "getattr" -funksjonen er en viktig del av Python introspeksjon (Kilde 3). Den "getattr" -funksjonen ikke kalle en funksjon direkte, men snarere returnerer en referanse til minneplasseringen av funksjonen. Dette gjør programmet til å referere til en metode i et objekt (så lenge den finnes) uten å vite navnet før kjøring. Ved å bruke "getattr" på denne måten, kan den riktige metoden navn skal bygges i løpet av kode gjennom brukerundersøkelser og kalles som en vanlig metode. Dette er verdifullt i tilfeller der flere varianter av produksjonen kreves.

spesielle metoder

Kraften av introspeksjon i Python kommer fra spesielle metoder. Den "oppsigelige" metoden returnerer en sann verdi hvis en metode eller klasse eksisterer for å bli kalt av programmerer. Den "type" metoden returnerer den typen av objekt kalt. Den "issubclass" metoden rapporterer en sannhet verdi på om eller ikke en klasse arver fra en annen.