Denne artikkelen diskuterte Python -utskrivbar feil, hva som forårsaker den, og hvordan du fikser den.
Hva som forårsaker 'i' objektet er ikke abonnementbar feil?
Denne feilen er forårsaket når du behandler en heltalltype som et abonnementsobjekt i Python.
Dette betyr at du prøver å få tilgang til elementer av en INT -type som ikke støttes.
Et eksempel er som vist:
i = 1000I dette tilfellet prøver vi å få tilgang til et element av en heltallstype som ikke støttes for et INT -objekt, er ikke abonnementbart.
Å kjøre koden over skal returnere en feil som vist:
$ python abonnement.pyDette forhindrer oss i å bruke indekseringsnotasjoner for å få tilgang til elementer av en INT -type.
I Python inkluderer abonnementbare objekter:
Hvordan fikse typeerror: 'int' objekt er ikke abonnementbar feil
For å fikse denne typen feil, bør du unngå å bruke indekseringsnotasjon på en ikke -støttet type.
Imidlertid, hvis du trenger å få tilgang til elementer i et objekt, kan du konvertere det til et abonnementbart objekt.
I vårt forrige eksempel kan vi for eksempel konvertere heltallet til en strengtype som abonnementsbar.
Tenk på illustrasjonen vist nedenfor:
i = 1000I dette tilfellet skal koden fungere og returnere elementet på indeks 0 som vist:
$ python abonnement.pyBonus: Implementering __getItem __ () i klassen din
I noen tilfeller kan det hende du trenger at objektet ditt kan være abonnement. Derfor må du implementere __getItem__ -metoden i klassen din.
Eksemplet nedenfor viser hvordan du skaper et enkelt abonnementsobjekt.
Klasse MyClass:I eksemplet over starter vi med å lage en enkel klasse som implementerer __getItem__ -metoden.
Funksjonen vil ganske enkelt ta nøkkelen og returnere seg selv. Å kjøre koden ovenfor skal for eksempel returnere:
$ python abonnement.pyDu kan bruke denne notasjonen for å få et spesifikt element i objektet ditt.
Et eksempel er som vist:
Klassebil:I dette tilfellet lar metoden deg hente elementer i en bestemt indeks. Å kjøre koden ovenfor skal returnere:
$ python abonnement.pyDu kan lære mer om Python __getItem__ i ressursen nedenfor:
https: // dokumenter.Python.org/3/referanse/datamodel.HTML#objekt.__getItem__
Konklusjon
Denne artikkelen diskuterte Python -utskrivbar feil, hva som forårsaker den, og hvordan du fikser den.