Site Overlay

Built-in Exceptions¶ (Svenska)

Concrete exceptions¶

The following exceptions are the exceptions that are usually raised.

exceptionAssertionError

Raised when an assert statement fails.

exceptionAttributeError

Raised when an attribute reference (see Attribute references) orassignment fails. (When an object does not support attribute references orattribute assignments at all, TypeError is raised.,)

exceptionEOFError¶ exceptionFloatingPointError

Not currently used.

exceptionGeneratorExit

Raised when a generator or coroutine is closed;see generator.close() and coroutine.close(). Itdirectly inherits from BaseException instead of Exception sinceit is technically not an error.

exceptionImportError

Raised when the import statement has troubles trying toload a module., Höjs också när ”from list”i from ... importhar ett namn som inte kan hittas.

attributenname ochpath kan endast ställas in med hjälp av nyckelordargument till konstruktören. När de anger namnet på modulethat försökte importeras och sökvägen till en fil som utlöste undantaget, respektive.

ändrad i version 3.3: lade till attributenname ochpath.,

undantagModuleNotFoundError

en underklass avImportError som höjs avimportnär en modul inte kunde placeras. Det höjs också när Nonehittas isys.modules.

nytt i version 3.6.

undantagIndexError

höjs när en sekvens subscript är utanför intervallet. (Skiva index aresilently trunkerade att falla i tillåtna intervallet; om ett index är inte aninteger, TypeError höjs.,)

undantagKeyError

höjs när en mappning (ordbok) Nyckel inte finns i uppsättningen av befintliga nycklar.

undantagKeyboardInterrupt

höjs när användaren träffar avbrottsknappen (normalt Control-C orDelete). Under utförandet görs en kontroll för avbrottregelbundet. Undantaget ärver frånBaseException för att inte oavsiktligt fångas av kod som fångarException och därmed förhindra att tolken lämnar.,

undantagMemoryError

höjs när en operation tar slut på minnet, men situationen kan fortfarande berescued (genom att ta bort vissa objekt). Det associerade värdet är en sträng som indikerarvilken typ av (intern) operation sprang ut ur minnet. Observera att på grund av theunderlying memory management architecture (C: s malloc() funktion), theinterpreter kan inte alltid ha möjlighet att helt återhämta sig från denna situation. itnevertheless höjer ett undantag, så att en bunt traceback kan skrivas ut, incase en run-away-programmet var orsaken.,

undantagNameError

höjs när ett lokalt eller globalt namn inte hittas. Detta gäller endast okvalificerade namn. Det associerade värdet är ett felmeddelande som innehåller detnamn som inte kunde hittas.

undantagNotImplementedError

detta undantag härrör frånRuntimeError. I användardefinierade basklasser bör abstrakta metoder höja detta undantag när de kräveriverade klasser för att åsidosätta metoden, eller medan klassen håller på att utvecklas för att indikera att den verkliga implementeringen fortfarande behöver läggas till.,

Obs

det bör inte användas för att indikera att en operatör eller metod inte är det lämpligt att stödjas alls – i så fall antingen lämna operatören/metoden odefinierad eller, om en underklass, ställa in den tillNone.

Obs

NotImplementedError ochNotImplemented är inte utbytbara,även om de har liknande namn och syften. SeNotImplemented för detaljer om när du ska använda den.,

undantagOSError()¶ undantagOSError(errno, straror])

detta undantag höjs när en systemfunktion returnerar en systemrelatederror, inklusive i / O-fel som ”file not found” eller ”disk full”(inte för olagliga argumenttyper eller andra tillfälliga fel).

konstruktörens andra form anger motsvarande attribut,som beskrivs nedan. Attributen standard till None om inte specificerad., För bakåtkompatibilitet innehåller attributet args endast en 2-tupleof de två första konstruktörsargumenten om tre argument skickas.

konstruktören returnerar ofta faktiskt en underklass tillOSError, sombeskrivs i OS-undantagen nedan. Den särskilda underklassen beror pådet slutliga errno – värdet. Detta beteende inträffar endast närkonstruktionen OSError sker direkt eller via ett alias och är inte verifierad vid underklassificering.,

errno

en numerisk felkod från C-variabelnerrno.

winerror

under Windows ger detta dig felkoden nativeWindows. Attributeterrno är då en approximatetranslation, i POSIX-termer, av den ursprungliga felkoden.

under Windows, om winerror constructor argumentet är ett heltal, errno attributet bestäms från Windows felkod,och Errno argumentet ignoreras., På andra plattformar ignoreras argumentet ”thewinerror” och attributetwinerror existerar inte.

strerror

motsvarande felmeddelande, som tillhandahålls av operativsystemet. Den är formaterad av Cfunctions perror() under POSIX och FormatMessage()under Windows.

filenamefilename2

för undantag som innebär en filsystemsväg (somopen() elleros.unlink()),filename är filnamnet som skickas till funktionen.,För funktioner som involverar två sökvägar i filsystemet (somos.rename()) motsvarar filename2 det andra filnamnet som skickas till funktionen.

ändrad i version 3.3: EnvironmentError, IOError, WindowsError,socket.error, select.error ochmmap.error har slagits samman till OSError, och konstruktören kan returnera en underklass.

ändrad i version 3.,4: attributet filename är nu det ursprungliga filnamnet som skickas tillfunktionen, istället för det namn som kodas till eller avkodas frånfilesystemkodningen. Dessutom lades filename2 constructor-argumentet ochattribute till.

undantagOverflowError

höjs när resultatet av en aritmetisk operation är för stor för att varapresenteras. Detta kan inte inträffa för heltal (vilket hellre skulle höjaMemoryError än att ge upp). Men av historiska skäl, är OverflowError ibland upp för heltal som ligger utanför en requiredrange., På grund av bristen på standardisering av flyttal undantaghantering i C, de flesta flyttalsoperationer kontrolleras inte.

undantagRecursionError

detta undantag härrör frånRuntimeError. Den höjs när interpretern upptäcker att det maximala rekursionsdjupet (sesys.getrecursionlimit()) överskrids.

nytt i version 3.5: tidigare höjdes en vanligRuntimeError.,

undantagReferenceError

detta undantag höjs när en svag referensproxy, skapad av funktionenweakref.proxy(), används för att komma åt ett attribut för referentenefter att det har samlats sopor. Mer information om svaga referenser finns i modulenweakref.

undantagRuntimeError

höjs när ett fel upptäcks som inte faller i någon av de andrakategorierna. Det associerade värdet är en sträng som anger vad exakt wentwrong.,

undantagStopIteration

höjs genom inbyggd funktionnext() och en iterator__next__() metod för att signalera att det inte finns några ytterligare objekt som produceras av iteratorn.

undantagsobjektet har ett enda attribut value, vilket isgiven som ett argument vid konstruktion av undantaget, och defaultsto None.,

När en generator eller coroutine functionreturns, en ny StopIteration instans israised, och det värde som returneras av funktionen används somvalue parameter till konstruktorn för undantag.

om en generator kod direkt eller indirekt höjer StopIteration,omvandlas den till en RuntimeError (behållerStopIteration som det nya undantagets orsak).

ändrad i version 3.3: tillagtvalue attribut och möjligheten för generatorfunktioner att använda det för att returnera ett värde.,

ändrad i version 3.5: introducerade runtimeerror-omvandlingen viafrom __future__ import generator_stop, se PEP 479.

ändrad i version 3.7: aktivera PEP 479 för all kod som standard: aStopIterationfel som uppstått i en generator omvandlas till enRuntimeError.

undantagStopAsyncIteration

måste höjas med__anext__() metod för anasynkron iteratorobjekt för att stoppa iterationen.

nytt i version 3.5.,

undantagSyntaxError

höjs när tolken stöter på ett syntaxfel. Detta kan inträffa i ettimport – uttalande, i ett samtal till de inbyggda funktionerna exec()eller eval(), eller när du läser det ursprungliga skriptet eller standardinmatningen(även interaktivt).

instanser av denna klass har attribut filename, lineno,offset och text för enklare åtkomst till detaljerna., str()I undantagsinstansen returnerar bara meddelandet.

undantagIndentationError

basklass för syntaxfel relaterade till felaktig indrag. Detta är asubclass av SyntaxError.

undantagTabError

höjs när indrag innehåller en inkonsekvent användning av flikar och mellanslag.Detta är en underklass till IndentationError.

undantagSystemError

höjs när tolken hittar ett internt fel, men situationen gör det inteser så allvarligt att det överger allt hopp., Det associerade värdet är astring som anger vad som gick fel (i lågnivåtermer).

Du bör rapportera detta till författaren eller ansvarig för din Python interpreter.Be var noga med att rapportera versionen av Python-tolken (sys.version; den skrivs också ut i början av en interaktiv Python-session), det exakta felmeddelandet (undantagets associerade värde) och om möjligt källan tillprogrammet som utlöste felet.

undantagSystemExit

detta undantag höjs av funktionensys.exit()., Det ärver frånBaseException I stället för Exception så att det inte är av misstag genom kod som fångar Exception. Detta gör att undantaget tillproperly föröka sig och få tolken att gå ut. När den inte ärhanterad, Python tolken avslutar; ingen stack traceback skrivs ut. Theconstructor accepterar samma valfria argument som skickas till sys.exit().,Om värdet är ett heltal anger det systemutgångsstatus (godkänd toC: s exit() – funktion); om det är None är utgångsstatusen noll; om den har en annan typ (t.ex. en sträng) skrivs objektets värde ut och exitstatusen är en.

ett samtal tillsys.exit() översätts till ett undantag så att städförare (finally klausuler itry-satser) kan exekveras, och så att en debugger kan exekvera ett skript utan att riskera att förlora kontrollen., Funktionenos._exit() kan användas om den är absolut nödvändig för att avsluta omedelbart (till exempel i barnprocessen efter ett samtal tillos.fork()).

code

utgångsstatus eller felmeddelande som skickas till konstruktören.(Standard None.)

undantagTypeError

höjs när en operation eller funktion tillämpas på ett objekt av olämpligtyp. Det associerade värdet är en sträng som ger detaljer om typen mismatch.,

detta undantag kan höjas med användarkod för att indikera att en försöksoperation på ett objekt inte stöds och inte är avsedd att vara. Om ett mål är avsett att stödja en viss åtgärd men ännu inte har tillhandahållit någon genomförande, är NotImplementedError det rätta undantaget att höja.

att skicka argument av fel typ (t. ex. skicka en list när enint förväntas) bör resultera i en TypeError, men passingarguments med fel värde (t. ex., ett tal utanför förväntade gränser) bör resultera i en ValueError.

undantagUnboundLocalError

höjs när en referens görs till en lokal variabel i en funktion eller metod, men inget värde har bundits till den variabeln. Detta är en underklass tillNameError.

undantagUnicodeError

höjs när en Unicode-relaterad kodning eller avkodning fel inträffar. Det är asubclass av ValueError.

UnicodeError har attribut som beskriver kodningen eller avkodningsfel., Till exempel gererr.object den particularinvalid-ingång som codec misslyckades på.

encoding

namnet på kodningen som höjde felet.

reason

en sträng som beskriver det specifika codec-felet.

object

objektet som codec försökte koda eller avkoda.

start

det första indexet för ogiltiga data iobject.

end

indexet efter den senaste ogiltiga data iobject.,

exceptionUnicodeEncodeError

Raised when a Unicode-related error occurs during encoding. It is a subclass ofUnicodeError.

exceptionUnicodeDecodeError

Raised when a Unicode-related error occurs during decoding. It is a subclass ofUnicodeError.

exceptionUnicodeTranslateError

Raised when a Unicode-related error occurs during translating. It is a subclassof UnicodeError.,

undantagValueError

höjs när en operation eller funktion tar emot ett argument som har threight-typ men ett olämpligt värde, och situationen beskrivs inte av amore precise exception somIndexError.

undantagZeroDivisionError

höjs när det andra argumentet för en division eller modulo operation är noll. Det associerade värdet är en sträng som anger typen av operander och drift.

följande undantag hålls för kompatibilitet med tidigare versioner;från Python 3.,3, de är alias för OSError.

undantagEnvironmentError¶ undantagIOError¶ undantagWindowsError

endast tillgängligt i Windows.

undantag från OS¶

följande undantag är underklasser avOSError, de höjsberoende på systemfelkoden.

undantagBlockingIOError

höjs när en operation skulle blockera på ett objekt (t.ex. uttag) setför icke-blockerande operation.,Motsvarar errno EAGAIN, EALREADY,EWOULDBLOCK och EINPROGRESS.

förutom de som OSError, BlockingIOError kan haett mer attribut:

characters_written

ett heltal som innehåller antalet tecken skrivna till streambefore det blockeras. Detta attribut är tillgängligt när du använder debuffrade I/O-klasserna frånio – modulen.,

exception ChildProcessError

Raised when an operation on a child process failed.Corresponds to errno ECHILD.

exception ConnectionError

A base class for connection-related issues.

Subclasses are BrokenPipeError, ConnectionAbortedError,ConnectionRefusedError and ConnectionResetError.,

undantag BrokenPipeError

en underklass av ConnectionError, upp när man försöker skriva på apipe medan den andra änden har stängts, eller försöker skriva på en socketsom har stängts för att skriva.Motsvarar errno EPIPE och ESHUTDOWN.

undantag ConnectionAbortedError

en underklass av ConnectionError, upphöjd när ett anslutningsförsök avbryts av peer.Motsvarar errno ECONNABORTED.,

undantag ConnectionRefusedError

en underklass av ConnectionError, upphöjd när en anslutning attemptis nekas av peer.Motsvarar errno ECONNREFUSED.

undantag ConnectionResetError

en underklass av ConnectionError, upphöjd när en anslutning isreset av peer.Motsvarar errno ECONNRESET.

undantagFileExistsError

höjs när du försöker skapa en fil eller katalog som redan finns.,Corresponds to errno EEXIST.

exception FileNotFoundError

Raised when a file or directory is requested but doesn’t exist.Corresponds to errno ENOENT.

exception InterruptedError

Raised when a system call is interrupted by an incoming signal.Corresponds to errno EINTR.

Changed in version 3.,5: Python försöker nu systemanrop när en syscall avbryts av asignal, förutom om signalhanteraren höjer ett undantag (se PEP 475för logiken), istället för att höja InterruptedError.

undantagIsADirectoryError

höjs när en filoperation (somos.remove()) begärspå en katalog.Motsvarar errno EISDIR.

undantagNotADirectoryError

höjs när en katalogoperation (somos.listdir()) begärspå något som inte är en katalog.,Corresponds to errno ENOTDIR.

exception PermissionError

Raised when trying to run an operation without the adequate accessrights – for example filesystem permissions.Corresponds to errno EACCES and EPERM.

exception ProcessLookupError

Raised when a given process doesn’t exist.Corresponds to errno ESRCH.

exception TimeoutError

Raised when a system function timed out at the system level.,Motsvarar errno ETIMEDOUT.

nytt i version 3.3: alla ovanståendeOSError underklasser har lagts till.

Se även

PEP 3151 – omarbeta OS-och io-undantagshierarkin

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *