programmeringsspråket Python , mye som andre programmeringsspråk , blir brukt til å utføre kommandoer basert på tilstanden i programmet . Dette er vanligvis oppnås gjennom å sammenligne variabler eller evaluere sant - eller - falske uttalelser . Programmereren må vite om andre faktiske koden på forhånd , slik som hensikten med en bestemt modul og hvordan det fungerer . Introspeksjon er et aspekt av programmering som gjør at programmet for å evaluere seg selv og sine egne indre arbeid. Introspeksjon
Introspection i Python innebærer å bruke funksjonaliteten i Python for å 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 , undersøker det selv, eller deler av seg selv , for å veilede handlinger utført . Ved å undersøke seg selv, kan koden hente informasjon om datatyper eller metode navn som føringer for hvordan du går frem.
Calling Method Argumenter Out of Sequence
I typisk programmering praksis , kan en programmerer gi standard informasjonen til noe argument i en metode . For eksempel Python metoden
def trippel ( verdi 1 , verdi 2 = 4 , verdi3 = 6 ) : har
tre argumenter , hvorav to er gitt standardverdiene ( verdi2 og verdi3 ) . I enkelte andre programmeringsspråk, som C + + , må en programmerer gi argumentene i riktig rekkefølge for metoden å fungere fullstendig . Python , men vil la programmerer spesifisere argumenter i hvilken som helst rekkefølge , for eksempel
trippel ( 3 , verdi3 = 7 )
fordi argumentene gitt til en metode blir forstått av Python som en ordbok objekt .
Den " getattr " og funksjon
" getattr "-funksjonen er en viktig del av Python introspeksjon ( Kilde 3 ) . Den " getattr "-funksjonen ikke kaller en funksjon direkte , men heller returnerer en referanse til minneområdet for den funksjonen. Dette gjør at programmet kan 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 navnet 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 er nødvendig .
Spesielle metoder
Kraften av introspeksjon i Python kommer fra spesielle metoder . Den " callable " metoden returnerer en sann verdi hvis en metode eller klasse eksisterer for å bli oppringt av programmereren. "Type"- metoden returnerer typen av objekt kalt . Den " issubclass "-metoden rapporterer en sannhet verdi som til hvorvidt en klasse arver fra en annen .