diff --git a/builtins/constants.po b/builtins/constants.po index 9e238194..8e40f3ac 100644 --- a/builtins/constants.po +++ b/builtins/constants.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-22 12:07+0200\n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Language-Team: German (https://app.transifex.com/python-doc/teams/5390/de/)\n" "Language: de\n" @@ -16,17 +16,17 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: ../../library/constants.rst:4 +#: ../../builtins/constants.rst:4 msgid "Built-in Constants" msgstr "Integrierte Konstanten" -#: ../../library/constants.rst:6 +#: ../../builtins/constants.rst:6 msgid "A small number of constants live in the built-in namespace. They are:" msgstr "" "Eine kleine Anzahl von Konstanten befindet sich im integrierten Namensraum. " "Diese sind:" -#: ../../library/constants.rst:10 +#: ../../builtins/constants.rst:10 msgid "" "The false value of the :class:`bool` type. Assignments to ``False`` are " "illegal and raise a :exc:`SyntaxError`." @@ -34,7 +34,7 @@ msgstr "" "Der Wahrheitswert „falsch“ des Typs :class:`bool`. Zuweisungen an ``False`` " "sind unzulässig und lösen einen :exc:`SyntaxError` aus." -#: ../../library/constants.rst:16 +#: ../../builtins/constants.rst:16 msgid "" "The true value of the :class:`bool` type. Assignments to ``True`` are " "illegal and raise a :exc:`SyntaxError`." @@ -42,7 +42,7 @@ msgstr "" "Der Wahrheitswert „wahr“ des Typs :class:`bool`. Zuweisungen an ``True`` " "sind unzulässig und lösen einen :exc:`SyntaxError` aus." -#: ../../library/constants.rst:22 +#: ../../builtins/constants.rst:22 msgid "" "An object frequently used to represent the absence of a value, as when " "default arguments are not passed to a function. Assignments to ``None`` are " @@ -55,7 +55,7 @@ msgstr "" "einen :exc:`SyntaxError` aus. ``None`` ist die einzige Instanz des Typs :" "class:`~types.NoneType`." -#: ../../library/constants.rst:30 +#: ../../builtins/constants.rst:30 msgid "" "A special value which should be returned by the binary special methods (e." "g. :meth:`~object.__eq__`, :meth:`~object.__lt__`, :meth:`~object.__add__`, :" @@ -76,7 +76,7 @@ msgstr "" "NotImplemented` ist die einzige Instanz des Typs :class:`types." "NotImplementedType`." -#: ../../library/constants.rst:40 +#: ../../builtins/constants.rst:40 msgid "" "When a binary (or in-place) method returns :data:`!NotImplemented` the " "interpreter will try the reflected operation on the other type (or some " @@ -94,12 +94,12 @@ msgstr "" "zu einer irreführenden Fehlermeldung oder dazu, dass der Wert :data:`!" "NotImplemented` an Python-Code zurückgegeben wird." -#: ../../library/constants.rst:47 +#: ../../builtins/constants.rst:47 msgid "See :ref:`implementing-the-arithmetic-operations` for examples." msgstr "" "Beispiele findest du unter :ref:`implementing-the-arithmetic-operations`." -#: ../../library/constants.rst:51 +#: ../../builtins/constants.rst:51 msgid "" ":data:`!NotImplemented` and :exc:`!NotImplementedError` are not " "interchangeable. This constant should only be used as described above; see :" @@ -110,13 +110,13 @@ msgstr "" "werden; Details zur korrekten Verwendung der Ausnahme findest du unter :exc:" "`NotImplementedError`." -#: ../../library/constants.rst:56 +#: ../../builtins/constants.rst:56 msgid "Evaluating :data:`!NotImplemented` in a boolean context was deprecated." msgstr "" "Das Auswerten von :data:`!NotImplemented` in einem booleschen Kontext wurde " "als veraltet markiert." -#: ../../library/constants.rst:59 +#: ../../builtins/constants.rst:59 msgid "" "Evaluating :data:`!NotImplemented` in a boolean context now raises a :exc:" "`TypeError`. It previously evaluated to :const:`True` and emitted a :exc:" @@ -126,7 +126,7 @@ msgstr "" "jetzt einen :exc:`TypeError` aus. Zuvor ergab es :const:`True` und gab seit " "Python 3.9 eine :exc:`DeprecationWarning` aus." -#: ../../library/constants.rst:68 +#: ../../builtins/constants.rst:68 msgid "" "The same as the ellipsis literal \"``...``\", an object frequently used to " "indicate that something is omitted. Assignment to ``Ellipsis`` is possible, " @@ -139,7 +139,7 @@ msgstr "" "exc:`SyntaxError` aus. ``Ellipsis`` ist die einzige Instanz des Typs :class:" "`types.EllipsisType`." -#: ../../library/constants.rst:76 +#: ../../builtins/constants.rst:76 msgid "" "This constant is true if Python was not started with an :option:`-O` option. " "See also the :keyword:`assert` statement." @@ -147,7 +147,7 @@ msgstr "" "Diese Konstante ist wahr, wenn Python nicht mit der Option :option:`-O` " "gestartet wurde. Siehe auch die Anweisung :keyword:`assert`." -#: ../../library/constants.rst:82 +#: ../../builtins/constants.rst:82 msgid "" "The names :data:`None`, :data:`False`, :data:`True` and :data:`__debug__` " "cannot be reassigned (assignments to them, even as an attribute name, raise :" @@ -158,11 +158,11 @@ msgstr "" "Attributname, lösen einen :exc:`SyntaxError` aus), daher können sie als " "„echte“ Konstanten betrachtet werden." -#: ../../library/constants.rst:90 +#: ../../builtins/constants.rst:90 msgid "Constants added by the :mod:`site` module" msgstr "Vom Modul :mod:`site` hinzugefügte Konstanten" -#: ../../library/constants.rst:92 +#: ../../builtins/constants.rst:92 msgid "" "The :mod:`site` module (which is imported automatically during startup, " "except if the :option:`-S` command-line option is given) adds several " @@ -175,7 +175,7 @@ msgstr "" "interaktive Interpreter-Shell nützlich und sollten nicht in Programmen " "verwendet werden." -#: ../../library/constants.rst:100 +#: ../../builtins/constants.rst:100 msgid "" "Objects that when printed, print a message like \"Use quit() or Ctrl-D (i.e. " "EOF) to exit\", and when accessed directly in the interactive interpreter or " @@ -186,7 +186,7 @@ msgstr "" "zugegriffen wird oder sie als Funktionen aufgerufen werden, lösen sie :exc:" "`SystemExit` mit dem angegebenen Exit-Code aus." -#: ../../library/constants.rst:108 +#: ../../builtins/constants.rst:108 msgid "" "Object that when printed, prints the message \"Type help() for interactive " "help, or help(object) for help about object.\", and when accessed directly " @@ -198,7 +198,7 @@ msgstr "" "Interpreter direkt darauf zugegriffen wird, startet es das integrierte " "Hilfesystem (siehe :func:`help`)." -#: ../../library/constants.rst:116 +#: ../../builtins/constants.rst:116 msgid "" "Objects that when printed or called, print the text of copyright or credits, " "respectively." @@ -206,7 +206,7 @@ msgstr "" "Objekte, die beim Ausgeben oder Aufrufen den Copyright-Text bzw. die " "Danksagungen anzeigen." -#: ../../library/constants.rst:121 +#: ../../builtins/constants.rst:121 msgid "" "Object that when printed, prints the message \"Type license() to see the " "full license text\", and when called, displays the full license text in a " @@ -216,10 +216,10 @@ msgstr "" "license text“ anzeigt. Beim Aufrufen zeigt es den vollständigen Lizenztext " "seitenweise wie in einem Pager an (jeweils eine Bildschirmseite)." -#: ../../library/constants.rst:65 +#: ../../builtins/constants.rst:65 msgid "..." msgstr "..." -#: ../../library/constants.rst:65 +#: ../../builtins/constants.rst:65 msgid "ellipsis literal" msgstr "Ellipse-Literal" diff --git a/builtins/exceptions.po b/builtins/exceptions.po index 3652c4f8..7a947c1b 100644 --- a/builtins/exceptions.po +++ b/builtins/exceptions.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-22 12:07+0200\n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" "PO-Revision-Date: 2026-08-20 00:01+0000\n" "Last-Translator: Swen Bachmann <142266608+sba72@users.noreply.github.com>\n" "Language-Team: German (https://app.transifex.com/python-doc/teams/5390/de/)\n" @@ -17,11 +17,11 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: ../../library/exceptions.rst:4 +#: ../../builtins/exceptions.rst:4 msgid "Built-in Exceptions" msgstr "Eingebaute Exceptions" -#: ../../library/exceptions.rst:10 +#: ../../builtins/exceptions.rst:10 msgid "" "In Python, all exceptions must be instances of a class that derives from :" "class:`BaseException`. In a :keyword:`try` statement with an :keyword:" @@ -38,7 +38,7 @@ msgstr "" "Exception-Klassen, die nicht durch Vererbung miteinander verwandt sind, sind " "niemals äquivalent, selbst wenn sie denselben Namen tragen." -#: ../../library/exceptions.rst:19 +#: ../../builtins/exceptions.rst:19 msgid "" "The built-in exceptions listed in this chapter can be generated by the " "interpreter or built-in functions. Except where mentioned, they have an " @@ -55,7 +55,7 @@ msgstr "" "Zeichenkette, die den Code erklärt). Der zugehörige Wert wird üblicherweise " "als Argument an den Konstruktor der Exception-Klasse übergeben." -#: ../../library/exceptions.rst:26 +#: ../../builtins/exceptions.rst:26 msgid "" "User code can raise built-in exceptions. This can be used to test an " "exception handler or to report an error condition \"just like\" the " @@ -69,7 +69,7 @@ msgstr "" "auslösen würde. Beachte jedoch, dass Benutzercode nicht daran gehindert " "wird, einen unpassenden Fehler auszulösen." -#: ../../library/exceptions.rst:31 +#: ../../builtins/exceptions.rst:31 msgid "" "The built-in exception classes can be subclassed to define new exceptions; " "programmers are encouraged to derive new exceptions from the :exc:" @@ -83,11 +83,11 @@ msgstr "" "von :exc:`BaseException`. Weitere Informationen zur Definition von " "Exceptions findest du im Python-Tutorial unter :ref:`tut-userexceptions`." -#: ../../library/exceptions.rst:39 +#: ../../builtins/exceptions.rst:39 msgid "Exception context" msgstr "Exception-Kontext" -#: ../../library/exceptions.rst:46 +#: ../../builtins/exceptions.rst:46 msgid "" "Three attributes on exception objects provide information about the context " "in which the exception was raised:" @@ -95,7 +95,7 @@ msgstr "" "Drei Attribute von Exception-Objekten liefern Informationen über den " "Kontext, in dem die Exception ausgelöst wurde:" -#: ../../library/exceptions.rst:53 +#: ../../builtins/exceptions.rst:53 msgid "" "When raising a new exception while another exception is already being " "handled, the new exception's :attr:`!__context__` attribute is automatically " @@ -109,7 +109,7 @@ msgstr "" "behandelt, wenn eine :keyword:`except`- oder :keyword:`finally`-Klausel oder " "eine :keyword:`with`-Anweisung verwendet wird." -#: ../../library/exceptions.rst:59 +#: ../../builtins/exceptions.rst:59 msgid "" "This implicit exception context can be supplemented with an explicit cause " "by using :keyword:`!from` with :keyword:`raise`::" @@ -118,11 +118,11 @@ msgstr "" "from` zusammen mit :keyword:`raise` um eine explizite Ursache ergänzt " "werden::" -#: ../../library/exceptions.rst:63 +#: ../../builtins/exceptions.rst:63 msgid "raise new_exc from original_exc" msgstr "raise new_exc from original_exc" -#: ../../library/exceptions.rst:65 +#: ../../builtins/exceptions.rst:65 msgid "" "The expression following :keyword:`from` must be an exception or " "``None``. It will be set as :attr:`!__cause__` on the raised exception. " @@ -142,7 +142,7 @@ msgstr "" "`AttributeError`), während die alte Exception für die Introspektion beim " "Debuggen weiterhin in :attr:`!__context__` verfügbar bleibt." -#: ../../library/exceptions.rst:74 +#: ../../builtins/exceptions.rst:74 msgid "" "The default traceback display code shows these chained exceptions in " "addition to the traceback for the exception itself. An explicitly chained " @@ -157,7 +157,7 @@ msgstr "" "wenn :attr:`!__cause__` :const:`None` und :attr:`!__suppress_context__` " "falsch ist." -#: ../../library/exceptions.rst:80 +#: ../../builtins/exceptions.rst:80 msgid "" "In either case, the exception itself is always shown after any chained " "exceptions so that the final line of the traceback always shows the last " @@ -167,11 +167,11 @@ msgstr "" "Exceptions angezeigt, sodass die letzte Zeile des Tracebacks immer die " "zuletzt ausgelöste Exception zeigt." -#: ../../library/exceptions.rst:86 +#: ../../builtins/exceptions.rst:86 msgid "Inheriting from built-in exceptions" msgstr "Erben von eingebauten Exceptions" -#: ../../library/exceptions.rst:88 +#: ../../builtins/exceptions.rst:88 msgid "" "User code can create subclasses that inherit from an exception type. It's " "recommended to only subclass one exception type at a time to avoid any " @@ -183,7 +183,7 @@ msgstr "" "um mögliche Konflikte bei der Handhabung des ``args``-Attributs durch die " "Basisklassen sowie Inkompatibilitäten beim Speicherlayout zu vermeiden." -#: ../../library/exceptions.rst:95 +#: ../../builtins/exceptions.rst:95 msgid "" "Most built-in exceptions are implemented in C for efficiency, see: :source:" "`Objects/exceptions.c`. Some have custom memory layouts which makes it " @@ -200,11 +200,11 @@ msgstr "" "ändern, was künftig zu neuen Konflikten führen könnte. Daher wird empfohlen, " "das gleichzeitige Erben von mehreren Exception-Typen gänzlich zu vermeiden." -#: ../../library/exceptions.rst:105 +#: ../../builtins/exceptions.rst:105 msgid "Base classes" msgstr "Basisklassen" -#: ../../library/exceptions.rst:107 +#: ../../builtins/exceptions.rst:107 msgid "" "The following exceptions are used mostly as base classes for other " "exceptions." @@ -212,7 +212,7 @@ msgstr "" "Die folgenden Exceptions werden hauptsächlich als Basisklassen für andere " "Exceptions verwendet." -#: ../../library/exceptions.rst:111 +#: ../../builtins/exceptions.rst:111 msgid "" "The base class for all built-in exceptions. It is not meant to be directly " "inherited by user-defined classes (for that, use :exc:`Exception`). If :" @@ -226,7 +226,7 @@ msgstr "" "wird die Darstellung der an die Instanz übergebenen Argumente zurückgegeben " "oder eine leere Zeichenkette, falls keine Argumente vorhanden waren." -#: ../../library/exceptions.rst:119 +#: ../../builtins/exceptions.rst:119 msgid "" "The tuple of arguments given to the exception constructor. Some built-in " "exceptions (like :exc:`OSError`) expect a certain number of arguments and " @@ -239,7 +239,7 @@ msgstr "" "Bedeutung zu, während andere üblicherweise nur mit einer einzelnen " "Zeichenkette aufgerufen werden, die eine Fehlermeldung enthält." -#: ../../library/exceptions.rst:126 +#: ../../builtins/exceptions.rst:126 msgid "" "This method sets *tb* as the new traceback for the exception and returns the " "exception object. It was more commonly used before the exception chaining " @@ -260,7 +260,7 @@ msgstr "" "ursprünglichen ``SomeException`` geschehen wäre, wenn sie an den Aufrufer " "weitergeleitet worden wäre. ::" -#: ../../library/exceptions.rst:135 +#: ../../builtins/exceptions.rst:135 msgid "" "try:\n" " ...\n" @@ -274,7 +274,7 @@ msgstr "" " tb = sys.exception().__traceback__\n" " raise OtherException(...).with_traceback(tb)" -#: ../../library/exceptions.rst:143 +#: ../../builtins/exceptions.rst:143 msgid "" "A writable field that holds the :ref:`traceback object ` " "associated with this exception. See also: :ref:`raise`." @@ -282,7 +282,7 @@ msgstr "" "Ein beschreibbares Feld, das das mit dieser Exception verknüpfte :ref:" "`Traceback-Objekt ` enthält. Siehe auch :ref:`raise`." -#: ../../library/exceptions.rst:149 +#: ../../builtins/exceptions.rst:149 msgid "" "Add the string ``note`` to the exception's notes which appear in the " "standard traceback after the exception string. A :exc:`TypeError` is raised " @@ -292,7 +292,7 @@ msgstr "" "Standard-Traceback nach der Exception-Zeichenkette angezeigt werden. Es wird " "ein :exc:`TypeError` ausgelöst, wenn ``note`` keine Zeichenkette ist." -#: ../../library/exceptions.rst:157 +#: ../../builtins/exceptions.rst:157 msgid "" "A list of the notes of this exception, which were added with :meth:" "`add_note`. This attribute is created when :meth:`add_note` is called." @@ -301,7 +301,7 @@ msgstr "" "hinzugefügt wurden. Dieses Attribut wird erstellt, wenn :meth:`add_note` " "aufgerufen wird." -#: ../../library/exceptions.rst:165 +#: ../../builtins/exceptions.rst:165 msgid "" "All built-in, non-system-exiting exceptions are derived from this class. " "All user-defined exceptions should also be derived from this class." @@ -310,7 +310,7 @@ msgstr "" "Klasse abgeleitet. Alle benutzerdefinierten Exceptions sollten ebenfalls von " "dieser Klasse abgeleitet werden." -#: ../../library/exceptions.rst:171 +#: ../../builtins/exceptions.rst:171 msgid "" "The base class for those built-in exceptions that are raised for various " "arithmetic errors: :exc:`OverflowError`, :exc:`ZeroDivisionError`, :exc:" @@ -320,7 +320,7 @@ msgstr "" "Rechenfehlern ausgelöst werden: :exc:`OverflowError`, :exc:" "`ZeroDivisionError`, :exc:`FloatingPointError`." -#: ../../library/exceptions.rst:178 +#: ../../builtins/exceptions.rst:178 msgid "" "Raised when a :ref:`buffer ` related operation cannot be " "performed." @@ -328,7 +328,7 @@ msgstr "" "Wird ausgelöst, wenn eine Operation im Zusammenhang mit einem :ref:`Puffer " "` nicht ausgeführt werden kann." -#: ../../library/exceptions.rst:184 +#: ../../builtins/exceptions.rst:184 msgid "" "The base class for the exceptions that are raised when a key or index used " "on a mapping or sequence is invalid: :exc:`IndexError`, :exc:`KeyError`. " @@ -339,20 +339,20 @@ msgstr "" "exc:`IndexError`, :exc:`KeyError`. Dies kann direkt von :func:`codecs." "lookup` ausgelöst werden." -#: ../../library/exceptions.rst:190 +#: ../../builtins/exceptions.rst:190 msgid "Concrete exceptions" msgstr "Konkrete Exceptions" -#: ../../library/exceptions.rst:192 +#: ../../builtins/exceptions.rst:192 msgid "The following exceptions are the exceptions that are usually raised." msgstr "" "Die folgenden Exceptions sind diejenigen, die üblicherweise ausgelöst werden." -#: ../../library/exceptions.rst:198 +#: ../../builtins/exceptions.rst:198 msgid "Raised when an :keyword:`assert` statement fails." msgstr "Wird ausgelöst, wenn eine :keyword:`assert`-Anweisung fehlschlägt." -#: ../../library/exceptions.rst:203 +#: ../../builtins/exceptions.rst:203 msgid "" "Raised when an attribute reference (see :ref:`attribute-references`) or " "assignment fails. (When an object does not support attribute references or " @@ -363,7 +363,7 @@ msgstr "" "Attribut-Referenzierungen oder -Zuweisungen unterstützt, wird ein :exc:" "`TypeError` ausgelöst.)" -#: ../../library/exceptions.rst:207 +#: ../../builtins/exceptions.rst:207 msgid "" "The optional *name* and *obj* keyword-only arguments set the corresponding " "attributes:" @@ -371,19 +371,19 @@ msgstr "" "Die optionalen reinen Schlüsselwort-Argumente *name* und *obj* setzen die " "entsprechenden Attribute:" -#: ../../library/exceptions.rst:212 +#: ../../builtins/exceptions.rst:212 msgid "The name of the attribute that was attempted to be accessed." msgstr "Der Name des Attributs, auf das zugegriffen werden sollte." -#: ../../library/exceptions.rst:216 +#: ../../builtins/exceptions.rst:216 msgid "The object that was accessed for the named attribute." msgstr "Das Objekt, auf dessen genanntes Attribut zugegriffen wurde." -#: ../../library/exceptions.rst:218 +#: ../../builtins/exceptions.rst:218 msgid "Added the :attr:`name` and :attr:`obj` attributes." msgstr "Die Attribute :attr:`name` und :attr:`obj` wurden hinzugefügt." -#: ../../library/exceptions.rst:223 +#: ../../builtins/exceptions.rst:223 msgid "" "Raised when the :func:`input` function hits an end-of-file condition (EOF) " "without reading any data. (Note: the :meth:`io.TextIOBase.read` and :meth:" @@ -394,11 +394,11 @@ msgstr "" "TextIOBase.read` und :meth:`io.IOBase.readline` geben eine leere " "Zeichenkette zurück, wenn sie auf EOF stoßen.)" -#: ../../library/exceptions.rst:230 +#: ../../builtins/exceptions.rst:230 msgid "Not currently used." msgstr "Wird derzeit nicht verwendet." -#: ../../library/exceptions.rst:235 +#: ../../builtins/exceptions.rst:235 msgid "" "Raised when a :term:`generator` or :term:`coroutine` is closed; see :meth:" "`generator.close` and :meth:`coroutine.close`. It directly inherits from :" @@ -410,7 +410,7 @@ msgstr "" "meth:`coroutine.close`. Sie erbt direkt von :exc:`BaseException` statt von :" "exc:`Exception`, da es sich technisch gesehen um keinen Fehler handelt." -#: ../../library/exceptions.rst:243 +#: ../../builtins/exceptions.rst:243 msgid "" "Raised when the :keyword:`import` statement has troubles trying to load a " "module. Also raised when the \"from list\" in ``from ... import`` has a " @@ -420,7 +420,7 @@ msgstr "" "eines Moduls hat. Wird auch ausgelöst, wenn die „from-Liste“ in ``from ... " "import`` einen Namen enthält, der nicht gefunden werden kann." -#: ../../library/exceptions.rst:247 +#: ../../builtins/exceptions.rst:247 msgid "" "The optional *name* and *path* keyword-only arguments set the corresponding " "attributes:" @@ -428,19 +428,19 @@ msgstr "" "Die optionalen reinen Schlüsselwort-Argumente *name* und *path* setzen die " "entsprechenden Attribute:" -#: ../../library/exceptions.rst:252 +#: ../../builtins/exceptions.rst:252 msgid "The name of the module that was attempted to be imported." msgstr "Der Name des Moduls, das importiert werden sollte." -#: ../../library/exceptions.rst:256 +#: ../../builtins/exceptions.rst:256 msgid "The path to any file which triggered the exception." msgstr "Der Pfad zu einer Datei, die die Exception ausgelöst hat." -#: ../../library/exceptions.rst:258 +#: ../../builtins/exceptions.rst:258 msgid "Added the :attr:`name` and :attr:`path` attributes." msgstr "Die Attribute :attr:`name` und :attr:`path` wurden hinzugefügt." -#: ../../library/exceptions.rst:263 +#: ../../builtins/exceptions.rst:263 msgid "" "A subclass of :exc:`ImportError` which is raised by :keyword:`import` when a " "module could not be located. It is also raised when ``None`` is found in :" @@ -450,7 +450,7 @@ msgstr "" "wird, wenn ein Modul nicht gefunden werden konnte. Sie wird auch ausgelöst, " "wenn ``None`` in :data:`sys.modules` vorgefunden wird." -#: ../../library/exceptions.rst:271 +#: ../../builtins/exceptions.rst:271 msgid "" "A subclass of :exc:`ImportError` which is raised when a lazy import fails " "because it (directly or indirectly) tries to import itself." @@ -459,7 +459,7 @@ msgstr "" "Import fehlschlägt, weil er (direkt oder indirekt) versucht, sich selbst zu " "importieren." -#: ../../library/exceptions.rst:278 +#: ../../builtins/exceptions.rst:278 msgid "" "Raised when a sequence subscript is out of range. (Slice indices are " "silently truncated to fall in the allowed range; if an index is not an " @@ -470,7 +470,7 @@ msgstr "" "zu fallen; wenn ein Index keine Ganzzahl ist, wird ein :exc:`TypeError` " "ausgelöst.)" -#: ../../library/exceptions.rst:287 +#: ../../builtins/exceptions.rst:287 msgid "" "Raised when a mapping (dictionary) key is not found in the set of existing " "keys." @@ -478,7 +478,7 @@ msgstr "" "Wird ausgelöst, wenn ein Mapping-Schlüssel (Dictionary-Schlüssel) nicht in " "der Menge der vorhandenen Schlüssel gefunden wird." -#: ../../library/exceptions.rst:294 +#: ../../builtins/exceptions.rst:294 msgid "" "Raised when the user hits the interrupt key (normally :kbd:`Control-C` or :" "kbd:`Delete`). During execution, a check for interrupts is made regularly. " @@ -492,7 +492,7 @@ msgstr "" "`BaseException`, damit sie nicht versehentlich von Code abgefangen wird, " "der :exc:`Exception` fängt, und so das Beenden des Interpreters verhindert." -#: ../../library/exceptions.rst:302 +#: ../../builtins/exceptions.rst:302 msgid "" "Catching a :exc:`KeyboardInterrupt` requires special consideration. Because " "it can be raised at unpredictable points, it may, in some circumstances, " @@ -507,7 +507,7 @@ msgstr "" "Programm so schnell wie möglich zu beenden, oder das Auslösen gänzlich zu " "vermeiden. (Siehe :ref:`handlers-and-exceptions`.)" -#: ../../library/exceptions.rst:312 +#: ../../builtins/exceptions.rst:312 msgid "" "Raised when an operation runs out of memory but the situation may still be " "rescued (by deleting some objects). The associated value is a string " @@ -527,7 +527,7 @@ msgstr "" "Stack-Traceback ausgegeben werden kann, falls ein außer Kontrolle geratenes " "Programm die Ursache war." -#: ../../library/exceptions.rst:323 +#: ../../builtins/exceptions.rst:323 msgid "" "Raised when a local or global name is not found. This applies only to " "unqualified names. The associated value is an error message that includes " @@ -537,19 +537,19 @@ msgstr "" "Dies gilt nur für unqualifizierte Namen. Der zugehörige Wert ist eine " "Fehlermeldung, die den nicht auffindbaren Namen enthält." -#: ../../library/exceptions.rst:327 +#: ../../builtins/exceptions.rst:327 msgid "The optional *name* keyword-only argument sets the attribute:" msgstr "Das optionale reine Schlüsselwort-Argument *name* setzt das Attribut:" -#: ../../library/exceptions.rst:331 +#: ../../builtins/exceptions.rst:331 msgid "The name of the variable that was attempted to be accessed." msgstr "Der Name der Variable, auf die zugegriffen werden sollte." -#: ../../library/exceptions.rst:333 +#: ../../builtins/exceptions.rst:333 msgid "Added the :attr:`name` attribute." msgstr "Das Attribut :attr:`name` wurde hinzugefügt." -#: ../../library/exceptions.rst:339 +#: ../../builtins/exceptions.rst:339 msgid "" "This exception is derived from :exc:`RuntimeError`. In user defined base " "classes, abstract methods should raise this exception when they require " @@ -562,7 +562,7 @@ msgstr "" "während die Klasse entwickelt wird, um anzuzeigen, dass die eigentliche " "Implementierung noch ergänzt werden muss." -#: ../../library/exceptions.rst:346 +#: ../../builtins/exceptions.rst:346 msgid "" "It should not be used to indicate that an operator or method is not meant to " "be supported at all -- in that case either leave the operator / method " @@ -573,7 +573,7 @@ msgstr "" "Fall den Operator bzw. die Methode entweder undefiniert oder setze sie in " "einer Unterklasse auf :data:`None`." -#: ../../library/exceptions.rst:352 +#: ../../builtins/exceptions.rst:352 msgid "" ":exc:`!NotImplementedError` and :data:`!NotImplemented` are not " "interchangeable. This exception should only be used as described above; see :" @@ -584,7 +584,7 @@ msgstr "" "werden; siehe :data:`NotImplemented` für Details zur korrekten Verwendung " "der eingebauten Konstante." -#: ../../library/exceptions.rst:363 +#: ../../builtins/exceptions.rst:363 msgid "" "This exception is raised when a system function returns a system-related " "error, including I/O failures such as \"file not found\" or \"disk " @@ -595,7 +595,7 @@ msgstr "" "nicht gefunden“ oder „Festplatte voll“ (nicht bei unzulässigen Argumenttypen " "oder anderen beiläufigen Fehlern)." -#: ../../library/exceptions.rst:367 +#: ../../builtins/exceptions.rst:367 msgid "" "The second form of the constructor sets the corresponding attributes, " "described below. The attributes default to :const:`None` if not specified. " @@ -609,7 +609,7 @@ msgstr "" "das Attribut :attr:`~BaseException.args` bei Übergabe von drei Argumenten " "nur ein 2-Tupel der ersten beiden Konstruktorargumente." -#: ../../library/exceptions.rst:373 +#: ../../builtins/exceptions.rst:373 msgid "" "The constructor often actually returns a subclass of :exc:`OSError`, as " "described in `OS exceptions`_ below. The particular subclass depends on the " @@ -623,11 +623,11 @@ msgstr "" "auf, wenn :exc:`OSError` direkt oder über einen Alias konstruiert wird, und " "wird beim Erstellen von Unterklassen nicht vererbt." -#: ../../library/exceptions.rst:381 +#: ../../builtins/exceptions.rst:381 msgid "A numeric error code from the C variable :c:data:`errno`." msgstr "Ein numerischer Fehlercode aus der C-Variable :c:data:`errno`." -#: ../../library/exceptions.rst:385 +#: ../../builtins/exceptions.rst:385 msgid "" "Under Windows, this gives you the native Windows error code. The :attr:`." "errno` attribute is then an approximate translation, in POSIX terms, of that " @@ -637,7 +637,7 @@ msgstr "" "attr:`.errno` ist dann eine ungefähre Übersetzung dieses nativen Fehlercodes " "in POSIX-Begriffe." -#: ../../library/exceptions.rst:389 +#: ../../builtins/exceptions.rst:389 msgid "" "Under Windows, if the *winerror* constructor argument is an integer, the :" "attr:`.errno` attribute is determined from the Windows error code, and the " @@ -649,7 +649,7 @@ msgstr "" "Argument *errno* wird ignoriert. Auf anderen Plattformen wird das Argument " "*winerror* ignoriert und das Attribut :attr:`winerror` existiert nicht." -#: ../../library/exceptions.rst:397 +#: ../../builtins/exceptions.rst:397 msgid "" "The corresponding error message, as provided by the operating system. It is " "formatted by the C functions :c:func:`!perror` under POSIX, and :c:func:`!" @@ -659,7 +659,7 @@ msgstr "" "wird. Sie wird unter POSIX durch die C-Funktion :c:func:`!perror` und unter " "Windows durch :c:func:`!FormatMessage` formatiert." -#: ../../library/exceptions.rst:405 +#: ../../builtins/exceptions.rst:405 msgid "" "For exceptions that involve a file system path (such as :func:`open` or :" "func:`os.unlink`), :attr:`filename` is the file name passed to the function. " @@ -673,7 +673,7 @@ msgstr "" "`os.rename`), entspricht :attr:`filename2` dem zweiten an die Funktion " "übergebenen Dateinamen." -#: ../../library/exceptions.rst:412 +#: ../../builtins/exceptions.rst:412 msgid "" ":exc:`EnvironmentError`, :exc:`IOError`, :exc:`WindowsError`, :exc:`socket." "error`, :exc:`select.error` and :exc:`!mmap.error` have been merged into :" @@ -683,7 +683,7 @@ msgstr "" "error`, :exc:`select.error` und :exc:`!mmap.error` wurden in :exc:`OSError` " "zusammengeführt, und der Konstruktor kann eine Unterklasse zurückgeben." -#: ../../library/exceptions.rst:418 +#: ../../builtins/exceptions.rst:418 msgid "" "The :attr:`filename` attribute is now the original file name passed to the " "function, instead of the name encoded to or decoded from the :term:" @@ -696,7 +696,7 @@ msgstr "" "error handler>` kodiert oder dekodiert wurde. Zudem wurden das " "Konstruktorargument und das Attribut *filename2* hinzugefügt." -#: ../../library/exceptions.rst:427 +#: ../../builtins/exceptions.rst:427 msgid "" "Raised when the result of an arithmetic operation is too large to be " "represented. This cannot occur for integers (which would rather raise :exc:" @@ -713,7 +713,7 @@ msgstr "" "fehlenden Standardisierung der Behandlung von Gleitkomma-Exceptions in C " "werden die meisten Gleitkommaoperationen nicht überprüft." -#: ../../library/exceptions.rst:437 +#: ../../builtins/exceptions.rst:437 msgid "" "This exception is derived from :exc:`RuntimeError`. It is raised when an " "operation is blocked during interpreter shutdown also known as :term:`Python " @@ -723,7 +723,7 @@ msgstr "" "wenn eine Operation während des Herunterfahrens des Interpreters blockiert " "wird, auch bekannt als :term:`Python-Finalisierung `." -#: ../../library/exceptions.rst:441 +#: ../../builtins/exceptions.rst:441 msgid "" "Examples of operations which can be blocked with a :exc:" "`PythonFinalizationError` during the Python finalization:" @@ -731,21 +731,21 @@ msgstr "" "Beispiele für Operationen, die während der Python-Finalisierung mit einem :" "exc:`PythonFinalizationError` blockiert werden können:" -#: ../../library/exceptions.rst:444 +#: ../../builtins/exceptions.rst:444 msgid "Creating a new Python thread." msgstr "Erstellen eines neuen Python-Threads." -#: ../../library/exceptions.rst:445 +#: ../../builtins/exceptions.rst:445 msgid ":meth:`Joining ` a running daemon thread." msgstr "" ":meth:`Warten auf das Beenden ` eines laufenden " "Daemon-Threads." -#: ../../library/exceptions.rst:446 +#: ../../builtins/exceptions.rst:446 msgid ":func:`os.fork`," msgstr ":func:`os.fork`." -#: ../../library/exceptions.rst:447 +#: ../../builtins/exceptions.rst:447 msgid "" "acquiring a lock such as :class:`threading.Lock`, when it is known that the " "operation would otherwise deadlock." @@ -753,19 +753,19 @@ msgstr "" "beim Erwerb einer Sperre wie :class:`threading.Lock`, wenn bekannt ist, dass " "der Vorgang andernfalls in einen Deadlock geraten würde." -#: ../../library/exceptions.rst:450 +#: ../../builtins/exceptions.rst:450 msgid "See also the :func:`sys.is_finalizing` function." msgstr "Siehe auch die Funktion :func:`sys.is_finalizing`." -#: ../../library/exceptions.rst:452 ../../library/exceptions.rst:470 +#: ../../builtins/exceptions.rst:452 ../../builtins/exceptions.rst:470 msgid "Previously, a plain :exc:`RuntimeError` was raised." msgstr "Zuvor wurde ein einfacher :exc:`RuntimeError` ausgelöst." -#: ../../library/exceptions.rst:457 +#: ../../builtins/exceptions.rst:457 msgid ":meth:`threading.Thread.join` can now raise this exception." msgstr ":meth:`threading.Thread.join` kann nun diese Exception auslösen." -#: ../../library/exceptions.rst:461 +#: ../../builtins/exceptions.rst:461 msgid "" "This exception may be raised when acquiring :meth:`threading.Lock` or :meth:" "`threading.RLock`." @@ -773,7 +773,7 @@ msgstr "" "Diese Ausnahme kann beim Erwerb von :meth:`threading.Lock` oder :meth:" "`threading.RLock` ausgelöst werden." -#: ../../library/exceptions.rst:466 +#: ../../builtins/exceptions.rst:466 msgid "" "This exception is derived from :exc:`RuntimeError`. It is raised when the " "interpreter detects that the maximum recursion depth (see :func:`sys." @@ -783,7 +783,7 @@ msgstr "" "wenn der Interpreter feststellt, dass die maximale Rekursionstiefe (siehe :" "func:`sys.getrecursionlimit`) überschritten wurde." -#: ../../library/exceptions.rst:476 +#: ../../builtins/exceptions.rst:476 msgid "" "This exception is raised when a weak reference proxy, created by the :func:" "`weakref.proxy` function, is used to access an attribute of the referent " @@ -796,7 +796,7 @@ msgstr "" "Collection bereinigt wurde. Weitere Informationen zu schwachen Referenzen " "findest du im Modul :mod:`weakref`." -#: ../../library/exceptions.rst:484 +#: ../../builtins/exceptions.rst:484 msgid "" "Raised when an error is detected that doesn't fall in any of the other " "categories. The associated value is a string indicating what precisely went " @@ -806,7 +806,7 @@ msgstr "" "Kategorien fällt. Der zugehörige Wert ist eine Zeichenkette, die angibt, was " "genau schiefgelaufen ist." -#: ../../library/exceptions.rst:491 +#: ../../builtins/exceptions.rst:491 msgid "" "Raised by built-in function :func:`next` and an :term:`iterator`\\'s :meth:" "`~iterator.__next__` method to signal that there are no further items " @@ -816,7 +816,7 @@ msgstr "" "`~iterator.__next__` eines :term:`Iterators ` ausgelöst, um zu " "signalisieren, dass vom Iterator keine weiteren Elemente erzeugt werden." -#: ../../library/exceptions.rst:497 +#: ../../builtins/exceptions.rst:497 msgid "" "The exception object has a single attribute :attr:`!value`, which is given " "as an argument when constructing the exception, and defaults to :const:" @@ -826,7 +826,7 @@ msgstr "" "der Konstruktion der Exception als Argument übergeben wird und " "standardmäßig :const:`None` ist." -#: ../../library/exceptions.rst:501 +#: ../../builtins/exceptions.rst:501 msgid "" "When a :term:`generator` or :term:`coroutine` function returns, a new :exc:" "`StopIteration` instance is raised, and the value returned by the function " @@ -837,7 +837,7 @@ msgstr "" "ausgelöst und der von der Funktion zurückgegebene Wert als :attr:`value`-" "Parameter an den Konstruktor der Exception übergeben." -#: ../../library/exceptions.rst:506 +#: ../../builtins/exceptions.rst:506 msgid "" "If a generator code directly or indirectly raises :exc:`StopIteration`, it " "is converted into a :exc:`RuntimeError` (retaining the :exc:`StopIteration` " @@ -847,7 +847,7 @@ msgstr "" "dies in einen :exc:`RuntimeError` umgewandelt (wobei die :exc:" "`StopIteration` als Ursache der neuen Exception beibehalten wird)." -#: ../../library/exceptions.rst:510 +#: ../../builtins/exceptions.rst:510 msgid "" "Added ``value`` attribute and the ability for generator functions to use it " "to return a value." @@ -855,7 +855,7 @@ msgstr "" "Das Attribut ``value`` und die Möglichkeit für Generatorfunktionen, damit " "einen Wert zurückzugeben, wurden hinzugefügt." -#: ../../library/exceptions.rst:514 +#: ../../builtins/exceptions.rst:514 msgid "" "Introduced the RuntimeError transformation via ``from __future__ import " "generator_stop``, see :pep:`479`." @@ -863,7 +863,7 @@ msgstr "" "Die RuntimeError-Umwandlung über ``from __future__ import generator_stop`` " "wurde eingeführt, siehe :pep:`479`." -#: ../../library/exceptions.rst:518 +#: ../../builtins/exceptions.rst:518 msgid "" "Enable :pep:`479` for all code by default: a :exc:`StopIteration` error " "raised in a generator is transformed into a :exc:`RuntimeError`." @@ -872,7 +872,7 @@ msgstr "" "Generator ausgelöster :exc:`StopIteration`-Fehler wird in einen :exc:" "`RuntimeError` umgewandelt." -#: ../../library/exceptions.rst:524 +#: ../../builtins/exceptions.rst:524 msgid "" "Must be raised by :meth:`~object.__anext__` method of an :term:`asynchronous " "iterator` object to stop the iteration." @@ -881,7 +881,7 @@ msgstr "" "Iterators ` ausgelöst werden, um die Iteration zu " "stoppen." -#: ../../library/exceptions.rst:531 +#: ../../builtins/exceptions.rst:531 msgid "" "Raised when the parser encounters a syntax error. This may occur in an :" "keyword:`import` statement, in a call to the built-in functions :func:" @@ -894,7 +894,7 @@ msgstr "" "Einlesen des ursprünglichen Skripts bzw. der Standardeingabe (auch " "interaktiv) geschehen." -#: ../../library/exceptions.rst:537 +#: ../../builtins/exceptions.rst:537 msgid "" "The :func:`str` of the exception instance returns only the error message. " "Details is a tuple whose members are also available as separate attributes." @@ -903,11 +903,11 @@ msgstr "" "Fehlermeldung zurück. Die Details sind ein Tupel, dessen Elemente auch als " "separate Attribute verfügbar sind." -#: ../../library/exceptions.rst:542 +#: ../../builtins/exceptions.rst:542 msgid "The name of the file the syntax error occurred in." msgstr "Der Name der Datei, in der der Syntaxfehler aufgetreten ist." -#: ../../library/exceptions.rst:546 +#: ../../builtins/exceptions.rst:546 msgid "" "Which line number in the file the error occurred in. This is 1-indexed: the " "first line in the file has a ``lineno`` of 1." @@ -915,7 +915,7 @@ msgstr "" "Die Zeilennummer in der Datei, in der der Fehler aufgetreten ist. Die " "Zählung beginnt bei 1: Die erste Zeile in der Datei hat die ``lineno`` 1." -#: ../../library/exceptions.rst:551 +#: ../../builtins/exceptions.rst:551 msgid "" "The column in the line where the error occurred. This is 1-indexed: the " "first character in the line has an ``offset`` of 1." @@ -923,11 +923,11 @@ msgstr "" "Die Spalte in der Zeile, in der der Fehler aufgetreten ist. Die Zählung " "beginnt bei 1: Das erste Zeichen in der Zeile hat den ``offset`` 1." -#: ../../library/exceptions.rst:556 +#: ../../builtins/exceptions.rst:556 msgid "The source code text involved in the error." msgstr "Der Quelltext, der an dem Fehler beteiligt war." -#: ../../library/exceptions.rst:560 +#: ../../builtins/exceptions.rst:560 msgid "" "Which line number in the file the error occurred ends in. This is 1-indexed: " "the first line in the file has a ``lineno`` of 1." @@ -935,7 +935,7 @@ msgstr "" "Die Zeilennummer in der Datei, in der der Fehler endet. Die Zählung beginnt " "bei 1: Die erste Zeile in der Datei hat die ``lineno`` 1." -#: ../../library/exceptions.rst:565 +#: ../../builtins/exceptions.rst:565 msgid "" "The column in the end line where the error occurred finishes. This is 1-" "indexed: the first character in the line has an ``offset`` of 1." @@ -943,7 +943,7 @@ msgstr "" "Die Spalte in der Endzeile, an der der Fehler endet. Die Zählung beginnt bei " "1: Das erste Zeichen in der Zeile hat den ``offset`` 1." -#: ../../library/exceptions.rst:568 +#: ../../builtins/exceptions.rst:568 msgid "" "For errors in f-string fields, the message is prefixed by \"f-string: \" and " "the offsets are offsets in a text constructed from the replacement " @@ -956,12 +956,12 @@ msgstr "" "field' zu folgendem args-Attribut: ('f-string: ...', ('', 1, 2, '(a b)\\n', " "1, 5))." -#: ../../library/exceptions.rst:573 +#: ../../builtins/exceptions.rst:573 msgid "Added the :attr:`end_lineno` and :attr:`end_offset` attributes." msgstr "" "Die Attribute :attr:`end_lineno` und :attr:`end_offset` wurden hinzugefügt." -#: ../../library/exceptions.rst:578 +#: ../../builtins/exceptions.rst:578 msgid "" "Base class for syntax errors related to incorrect indentation. This is a " "subclass of :exc:`SyntaxError`." @@ -969,7 +969,7 @@ msgstr "" "Basisklasse für Syntaxfehler im Zusammenhang mit fehlerhafter Einrückung. " "Dies ist eine Unterklasse von :exc:`SyntaxError`." -#: ../../library/exceptions.rst:584 +#: ../../builtins/exceptions.rst:584 msgid "" "Raised when indentation contains an inconsistent use of tabs and spaces. " "This is a subclass of :exc:`IndentationError`." @@ -978,7 +978,7 @@ msgstr "" "und Leerzeichen aufweist. Dies ist eine Unterklasse von :exc:" "`IndentationError`." -#: ../../library/exceptions.rst:590 +#: ../../builtins/exceptions.rst:590 msgid "" "Raised when the interpreter finds an internal error, but the situation does " "not look so serious to cause it to abandon all hope. The associated value is " @@ -994,7 +994,7 @@ msgstr "" "durch die Rückgabe eines ``NULL``-Wertes, ohne dass eine Exception gesetzt " "wurde." -#: ../../library/exceptions.rst:596 +#: ../../builtins/exceptions.rst:596 msgid "" "If you're confident that this exception wasn't your fault, or the fault of a " "package you're using, you should report this to the author or maintainer of " @@ -1012,7 +1012,7 @@ msgstr "" "Fehlermeldung (den zugehörigen Wert der Exception) und nach Möglichkeit den " "Quelltext des Programms, das den Fehler ausgelöst hat." -#: ../../library/exceptions.rst:607 +#: ../../builtins/exceptions.rst:607 msgid "" "This exception is raised by the :func:`sys.exit` function. It inherits " "from :exc:`BaseException` instead of :exc:`Exception` so that it is not " @@ -1038,7 +1038,7 @@ msgstr "" "Zeichenkette), wird der Wert des Objekts ausgegeben und der Exit-Status ist " "eins." -#: ../../library/exceptions.rst:618 +#: ../../builtins/exceptions.rst:618 msgid "" "A call to :func:`sys.exit` is translated into an exception so that clean-up " "handlers (:keyword:`finally` clauses of :keyword:`try` statements) can be " @@ -1055,7 +1055,7 @@ msgstr "" "erforderlich ist (beispielsweise im Kindprozess nach einem Aufruf von :func:" "`os.fork`)." -#: ../../library/exceptions.rst:627 +#: ../../builtins/exceptions.rst:627 msgid "" "The exit status or error message that is passed to the constructor. " "(Defaults to ``None``.)" @@ -1063,7 +1063,7 @@ msgstr "" "Der Exit-Status oder die Fehlermeldung, die an den Konstruktor übergeben " "wird. (Standardwert ist ``None``.)" -#: ../../library/exceptions.rst:633 +#: ../../builtins/exceptions.rst:633 msgid "" "Raised when an operation or function is applied to an object of " "inappropriate type. The associated value is a string giving details about " @@ -1073,7 +1073,7 @@ msgstr "" "unpassenden Typs angewendet wird. Der zugehörige Wert ist eine Zeichenkette, " "die Details über die Typabweichung enthält." -#: ../../library/exceptions.rst:636 +#: ../../builtins/exceptions.rst:636 msgid "" "This exception may be raised by user code to indicate that an attempted " "operation on an object is not supported, and is not meant to be. If an " @@ -1086,7 +1086,7 @@ msgstr "" "unterstützen soll, dafür aber noch keine Implementierung bereitgestellt hat, " "ist :exc:`NotImplementedError` die passende Exception." -#: ../../library/exceptions.rst:641 +#: ../../builtins/exceptions.rst:641 msgid "" "Passing arguments of the wrong type (e.g. passing a :class:`list` when an :" "class:`int` is expected) should result in a :exc:`TypeError`, but passing " @@ -1099,7 +1099,7 @@ msgstr "" "eine Zahl außerhalb der erwarteten Grenzen) jedoch zu einem :exc:" "`ValueError`." -#: ../../library/exceptions.rst:648 +#: ../../builtins/exceptions.rst:648 msgid "" "Raised when a reference is made to a local variable in a function or method, " "but no value has been bound to that variable. This is a subclass of :exc:" @@ -1109,7 +1109,7 @@ msgstr "" "verwiesen wird, an diese Variable jedoch kein Wert gebunden ist. Dies ist " "eine Unterklasse von :exc:`NameError`." -#: ../../library/exceptions.rst:655 +#: ../../builtins/exceptions.rst:655 msgid "" "Raised when a Unicode-related encoding or decoding error occurs. It is a " "subclass of :exc:`ValueError`." @@ -1117,7 +1117,7 @@ msgstr "" "Wird ausgelöst, wenn ein Unicode-bezogener Kodierungs- oder " "Dekodierungsfehler auftritt. Dies ist eine Unterklasse von :exc:`ValueError`." -#: ../../library/exceptions.rst:658 +#: ../../builtins/exceptions.rst:658 msgid "" ":exc:`UnicodeError` has attributes that describe the encoding or decoding " "error. For example, ``err.object[err.start:err.end]`` gives the particular " @@ -1128,23 +1128,23 @@ msgstr "" "start:err.end]`` die konkrete ungültige Eingabe, an der der Codec " "gescheitert ist." -#: ../../library/exceptions.rst:664 +#: ../../builtins/exceptions.rst:664 msgid "The name of the encoding that raised the error." msgstr "Der Name der Kodierung, die den Fehler ausgelöst hat." -#: ../../library/exceptions.rst:668 +#: ../../builtins/exceptions.rst:668 msgid "A string describing the specific codec error." msgstr "Eine Zeichenkette, die den spezifischen Codec-Fehler beschreibt." -#: ../../library/exceptions.rst:672 +#: ../../builtins/exceptions.rst:672 msgid "The object the codec was attempting to encode or decode." msgstr "Das Objekt, das der Codec zu kodieren oder dekodieren versuchte." -#: ../../library/exceptions.rst:676 +#: ../../builtins/exceptions.rst:676 msgid "The first index of invalid data in :attr:`object`." msgstr "Der erste Index ungültiger Daten in :attr:`object`." -#: ../../library/exceptions.rst:678 ../../library/exceptions.rst:685 +#: ../../builtins/exceptions.rst:678 ../../builtins/exceptions.rst:685 msgid "" "This value should not be negative as it is interpreted as an absolute offset " "but this constraint is not enforced at runtime." @@ -1153,11 +1153,11 @@ msgstr "" "interpretiert wird; diese Einschränkung wird zur Laufzeit jedoch nicht " "erzwungen." -#: ../../library/exceptions.rst:683 +#: ../../builtins/exceptions.rst:683 msgid "The index after the last invalid data in :attr:`object`." msgstr "Der Index nach den letzten ungültigen Daten in :attr:`object`." -#: ../../library/exceptions.rst:691 +#: ../../builtins/exceptions.rst:691 msgid "" "Raised when a Unicode-related error occurs during encoding. It is a " "subclass of :exc:`UnicodeError`." @@ -1165,7 +1165,7 @@ msgstr "" "Wird ausgelöst, wenn bei der Kodierung ein Unicode-bezogener Fehler " "auftritt. Dies ist eine Unterklasse von :exc:`UnicodeError`." -#: ../../library/exceptions.rst:697 +#: ../../builtins/exceptions.rst:697 msgid "" "Raised when a Unicode-related error occurs during decoding. It is a " "subclass of :exc:`UnicodeError`." @@ -1173,7 +1173,7 @@ msgstr "" "Wird ausgelöst, wenn bei der Dekodierung ein Unicode-bezogener Fehler " "auftritt. Dies ist eine Unterklasse von :exc:`UnicodeError`." -#: ../../library/exceptions.rst:703 +#: ../../builtins/exceptions.rst:703 msgid "" "Raised when a Unicode-related error occurs during translating. It is a " "subclass of :exc:`UnicodeError`." @@ -1181,7 +1181,7 @@ msgstr "" "Wird ausgelöst, wenn bei der Übersetzung ein Unicode-bezogener Fehler " "auftritt. Dies ist eine Unterklasse von :exc:`UnicodeError`." -#: ../../library/exceptions.rst:709 +#: ../../builtins/exceptions.rst:709 msgid "" "Raised when an operation or function receives an argument that has the right " "type but an inappropriate value, and the situation is not described by a " @@ -1192,7 +1192,7 @@ msgstr "" "Situation nicht durch eine präzisere Exception wie :exc:`IndexError` " "beschrieben wird." -#: ../../library/exceptions.rst:716 +#: ../../builtins/exceptions.rst:716 msgid "" "Raised when the second argument of a division or modulo operation is zero. " "The associated value is a string indicating the type of the operands and the " @@ -1202,7 +1202,7 @@ msgstr "" "Operation null ist. Der zugehörige Wert ist eine Zeichenkette, die den Typ " "der Operanden und die Operation angibt." -#: ../../library/exceptions.rst:721 +#: ../../builtins/exceptions.rst:721 msgid "" "The following exceptions are kept for compatibility with previous versions; " "starting from Python 3.3, they are aliases of :exc:`OSError`." @@ -1210,15 +1210,15 @@ msgstr "" "Die folgenden Exceptions werden aus Kompatibilitätsgründen mit früheren " "Versionen beibehalten; ab Python 3.3 sind sie Aliase von :exc:`OSError`." -#: ../../library/exceptions.rst:730 +#: ../../builtins/exceptions.rst:730 msgid "Only available on Windows." msgstr "Nur unter Windows verfügbar." -#: ../../library/exceptions.rst:734 +#: ../../builtins/exceptions.rst:734 msgid "OS exceptions" msgstr "OS-Exceptions" -#: ../../library/exceptions.rst:736 +#: ../../builtins/exceptions.rst:736 msgid "" "The following exceptions are subclasses of :exc:`OSError`, they get raised " "depending on the system error code." @@ -1226,7 +1226,7 @@ msgstr "" "Die folgenden Exceptions sind Unterklassen von :exc:`OSError`; sie werden in " "Abhängigkeit vom Systemfehlercode ausgelöst." -#: ../../library/exceptions.rst:741 +#: ../../builtins/exceptions.rst:741 msgid "" "Raised when an operation would block on an object (e.g. socket) set for non-" "blocking operation. Corresponds to :c:data:`errno` :py:const:`~errno." @@ -1238,7 +1238,7 @@ msgstr "" "Entspricht der :c:data:`errno` :py:const:`~errno.EAGAIN`, :py:const:`~errno." "EALREADY`, :py:const:`~errno.EWOULDBLOCK` und :py:const:`~errno.EINPROGRESS`." -#: ../../library/exceptions.rst:746 +#: ../../builtins/exceptions.rst:746 msgid "" "In addition to those of :exc:`OSError`, :exc:`BlockingIOError` can have one " "more attribute:" @@ -1246,7 +1246,7 @@ msgstr "" "Zusätzlich zu denen von :exc:`OSError` kann :exc:`BlockingIOError` ein " "weiteres Attribut besitzen:" -#: ../../library/exceptions.rst:751 +#: ../../builtins/exceptions.rst:751 msgid "" "An integer containing the number of **bytes** written to the stream before " "it blocked. This attribute is available when using the buffered I/O classes " @@ -1256,7 +1256,7 @@ msgstr "" "geschrieben wurden, bevor er blockiert wurde. Dieses Attribut ist verfügbar, " "wenn die gepufferten I/O-Klassen aus dem Modul :mod:`io` verwendet werden." -#: ../../library/exceptions.rst:757 +#: ../../builtins/exceptions.rst:757 msgid "" "Raised when an operation on a child process failed. Corresponds to :c:data:" "`errno` :py:const:`~errno.ECHILD`." @@ -1264,11 +1264,11 @@ msgstr "" "Wird ausgelöst, wenn eine Operation auf einem Kindprozess fehlschlägt. " "Entspricht der :c:data:`errno` :py:const:`~errno.ECHILD`." -#: ../../library/exceptions.rst:762 +#: ../../builtins/exceptions.rst:762 msgid "A base class for connection-related issues." msgstr "Eine Basisklasse für verbindungsbezogene Probleme." -#: ../../library/exceptions.rst:764 +#: ../../builtins/exceptions.rst:764 msgid "" "Subclasses are :exc:`BrokenPipeError`, :exc:`ConnectionAbortedError`, :exc:" "`ConnectionRefusedError` and :exc:`ConnectionResetError`." @@ -1276,7 +1276,7 @@ msgstr "" "Unterklassen sind :exc:`BrokenPipeError`, :exc:`ConnectionAbortedError`, :" "exc:`ConnectionRefusedError` und :exc:`ConnectionResetError`." -#: ../../library/exceptions.rst:769 +#: ../../builtins/exceptions.rst:769 msgid "" "A subclass of :exc:`ConnectionError`, raised when trying to write on a pipe " "while the other end has been closed, or trying to write on a socket which " @@ -1289,7 +1289,7 @@ msgstr "" "heruntergefahren wurde. Entspricht der :c:data:`errno` :py:const:`~errno." "EPIPE` und :py:const:`~errno.ESHUTDOWN`." -#: ../../library/exceptions.rst:776 +#: ../../builtins/exceptions.rst:776 msgid "" "A subclass of :exc:`ConnectionError`, raised when a connection attempt is " "aborted by the peer. Corresponds to :c:data:`errno` :py:const:`~errno." @@ -1299,7 +1299,7 @@ msgstr "" "Verbindungsversuch von der Gegenstelle abgebrochen wird. Entspricht der :c:" "data:`errno` :py:const:`~errno.ECONNABORTED`." -#: ../../library/exceptions.rst:782 +#: ../../builtins/exceptions.rst:782 msgid "" "A subclass of :exc:`ConnectionError`, raised when a connection attempt is " "refused by the peer. Corresponds to :c:data:`errno` :py:const:`~errno." @@ -1309,7 +1309,7 @@ msgstr "" "Verbindungsversuch von der Gegenstelle abgelehnt wird. Entspricht der :c:" "data:`errno` :py:const:`~errno.ECONNREFUSED`." -#: ../../library/exceptions.rst:788 +#: ../../builtins/exceptions.rst:788 msgid "" "A subclass of :exc:`ConnectionError`, raised when a connection is reset by " "the peer. Corresponds to :c:data:`errno` :py:const:`~errno.ECONNRESET`." @@ -1318,7 +1318,7 @@ msgstr "" "Verbindung von der Gegenstelle zurückgesetzt wird. Entspricht der :c:data:" "`errno` :py:const:`~errno.ECONNRESET`." -#: ../../library/exceptions.rst:794 +#: ../../builtins/exceptions.rst:794 msgid "" "Raised when trying to create a file or directory which already exists. " "Corresponds to :c:data:`errno` :py:const:`~errno.EEXIST`." @@ -1327,7 +1327,7 @@ msgstr "" "erstellen, die bzw. das bereits existiert. Entspricht der :c:data:`errno` :" "py:const:`~errno.EEXIST`." -#: ../../library/exceptions.rst:799 +#: ../../builtins/exceptions.rst:799 msgid "" "Raised when a file or directory is requested but doesn't exist. Corresponds " "to :c:data:`errno` :py:const:`~errno.ENOENT`." @@ -1335,7 +1335,7 @@ msgstr "" "Wird ausgelöst, wenn eine Datei oder ein Verzeichnis angefordert wird, aber " "nicht existiert. Entspricht der :c:data:`errno` :py:const:`~errno.ENOENT`." -#: ../../library/exceptions.rst:804 +#: ../../builtins/exceptions.rst:804 msgid "" "Raised when a system call is interrupted by an incoming signal. Corresponds " "to :c:data:`errno` :py:const:`~errno.EINTR`." @@ -1343,7 +1343,7 @@ msgstr "" "Wird ausgelöst, wenn ein Systemaufruf durch ein eingehendes Signal " "unterbrochen wird. Entspricht der :c:data:`errno` :py:const:`~errno.EINTR`." -#: ../../library/exceptions.rst:807 +#: ../../builtins/exceptions.rst:807 msgid "" "Python now retries system calls when a syscall is interrupted by a signal, " "except if the signal handler raises an exception (see :pep:`475` for the " @@ -1354,7 +1354,7 @@ msgstr "" "(siehe :pep:`475` für die Begründung), anstatt :exc:`InterruptedError` " "auszulösen." -#: ../../library/exceptions.rst:814 +#: ../../builtins/exceptions.rst:814 msgid "" "Raised when a file operation (such as :func:`os.remove`) is requested on a " "directory. Corresponds to :c:data:`errno` :py:const:`~errno.EISDIR`." @@ -1363,7 +1363,7 @@ msgstr "" "Verzeichnis angewendet werden soll. Entspricht der :c:data:`errno` :py:const:" "`~errno.EISDIR`." -#: ../../library/exceptions.rst:820 +#: ../../builtins/exceptions.rst:820 msgid "" "Raised when a directory operation (such as :func:`os.listdir`) is requested " "on something which is not a directory. On most POSIX platforms, it may also " @@ -1378,7 +1378,7 @@ msgstr "" "durchlaufen, als wäre sie ein Verzeichnis. Entspricht der :c:data:`errno` :" "py:const:`~errno.ENOTDIR`." -#: ../../library/exceptions.rst:828 +#: ../../builtins/exceptions.rst:828 msgid "" "Raised when trying to run an operation without the adequate access rights - " "for example filesystem permissions. Corresponds to :c:data:`errno` :py:const:" @@ -1390,7 +1390,7 @@ msgstr "" "Entspricht der :c:data:`errno` :py:const:`~errno.EACCES`, :py:const:`~errno." "EPERM` und :py:const:`~errno.ENOTCAPABLE`." -#: ../../library/exceptions.rst:833 +#: ../../builtins/exceptions.rst:833 msgid "" "WASI's :py:const:`~errno.ENOTCAPABLE` is now mapped to :exc:" "`PermissionError`." @@ -1398,7 +1398,7 @@ msgstr "" ":py:const:`~errno.ENOTCAPABLE` von WASI ist nun auf :exc:`PermissionError` " "gemappt." -#: ../../library/exceptions.rst:839 +#: ../../builtins/exceptions.rst:839 msgid "" "Raised when a given process doesn't exist. Corresponds to :c:data:`errno` :" "py:const:`~errno.ESRCH`." @@ -1406,7 +1406,7 @@ msgstr "" "Wird ausgelöst, wenn ein angegebener Prozess nicht existiert. Entspricht " "der :c:data:`errno` :py:const:`~errno.ESRCH`." -#: ../../library/exceptions.rst:844 +#: ../../builtins/exceptions.rst:844 msgid "" "Raised when a system function timed out at the system level. Corresponds to :" "c:data:`errno` :py:const:`~errno.ETIMEDOUT`." @@ -1415,19 +1415,19 @@ msgstr "" "Zeitüberschreitung erlitten hat. Entspricht der :c:data:`errno` :py:const:" "`~errno.ETIMEDOUT`." -#: ../../library/exceptions.rst:847 +#: ../../builtins/exceptions.rst:847 msgid "All the above :exc:`OSError` subclasses were added." msgstr "Alle oben genannten :exc:`OSError`-Unterklassen wurden hinzugefügt." -#: ../../library/exceptions.rst:853 +#: ../../builtins/exceptions.rst:853 msgid ":pep:`3151` - Reworking the OS and IO exception hierarchy" msgstr ":pep:`3151` – Überarbeitung der OS- und IO-Exception-Hierarchie" -#: ../../library/exceptions.rst:859 +#: ../../builtins/exceptions.rst:859 msgid "Warnings" msgstr "Warnungen" -#: ../../library/exceptions.rst:861 +#: ../../builtins/exceptions.rst:861 msgid "" "The following exceptions are used as warning categories; see the :ref:" "`warning-categories` documentation for more details." @@ -1435,15 +1435,15 @@ msgstr "" "Die folgenden Exceptions werden als Warnungskategorien verwendet; siehe die " "Dokumentation zu :ref:`warning-categories` für weitere Details." -#: ../../library/exceptions.rst:866 +#: ../../builtins/exceptions.rst:866 msgid "Base class for warning categories." msgstr "Basisklasse für Warnungskategorien." -#: ../../library/exceptions.rst:871 +#: ../../builtins/exceptions.rst:871 msgid "Base class for warnings generated by user code." msgstr "Basisklasse für von Benutzercode erzeugte Warnungen." -#: ../../library/exceptions.rst:876 +#: ../../builtins/exceptions.rst:876 msgid "" "Base class for warnings about deprecated features when those warnings are " "intended for other Python developers." @@ -1451,7 +1451,7 @@ msgstr "" "Basisklasse für Warnungen über veraltete Features, wenn diese Warnungen für " "andere Python-Entwickler bestimmt sind." -#: ../../library/exceptions.rst:879 +#: ../../builtins/exceptions.rst:879 msgid "" "Ignored by the default warning filters, except in the ``__main__`` module (:" "pep:`565`). Enabling the :ref:`Python Development Mode ` shows this " @@ -1461,12 +1461,12 @@ msgstr "" "pep:`565`). Die Aktivierung des :ref:`Python-Entwicklungsmodus ` " "zeigt diese Warnung an." -#: ../../library/exceptions.rst:883 ../../library/exceptions.rst:899 +#: ../../builtins/exceptions.rst:883 ../../builtins/exceptions.rst:899 msgid "The deprecation policy is described in :pep:`387`." msgstr "" "Die Richtlinie für veraltete Funktionen wird in :pep:`387` beschrieben." -#: ../../library/exceptions.rst:888 +#: ../../builtins/exceptions.rst:888 msgid "" "Base class for warnings about features which are obsolete and expected to be " "deprecated in the future, but are not deprecated at the moment." @@ -1475,7 +1475,7 @@ msgstr "" "erwartet wird, dass sie in Zukunft als veraltet markiert werden, es derzeit " "jedoch noch nicht sind." -#: ../../library/exceptions.rst:892 +#: ../../builtins/exceptions.rst:892 msgid "" "This class is rarely used as emitting a warning about a possible upcoming " "deprecation is unusual, and :exc:`DeprecationWarning` is preferred for " @@ -1485,8 +1485,8 @@ msgstr "" "möglichen künftigen Veraltung unüblich ist; für bereits aktive Veraltungen " "wird :exc:`DeprecationWarning` bevorzugt." -#: ../../library/exceptions.rst:896 ../../library/exceptions.rst:925 -#: ../../library/exceptions.rst:952 +#: ../../builtins/exceptions.rst:896 ../../builtins/exceptions.rst:925 +#: ../../builtins/exceptions.rst:952 msgid "" "Ignored by the default warning filters. Enabling the :ref:`Python " "Development Mode ` shows this warning." @@ -1494,11 +1494,11 @@ msgstr "" "Wird von den Standard-Warnfiltern ignoriert. Die Aktivierung des :ref:" "`Python-Entwicklungsmodus ` zeigt diese Warnung an." -#: ../../library/exceptions.rst:904 +#: ../../builtins/exceptions.rst:904 msgid "Base class for warnings about dubious syntax." msgstr "Basisklasse für Warnungen bezüglich zweifelhafter Syntax." -#: ../../library/exceptions.rst:906 +#: ../../builtins/exceptions.rst:906 msgid "" "This warning is typically emitted when compiling Python source code, and " "usually won't be reported when running already compiled code." @@ -1507,11 +1507,11 @@ msgstr "" "ausgegeben und tritt beim Ausführen von bereits kompiliertem Code " "üblicherweise nicht auf." -#: ../../library/exceptions.rst:912 +#: ../../builtins/exceptions.rst:912 msgid "Base class for warnings about dubious runtime behavior." msgstr "Basisklasse für Warnungen bezüglich zweifelhaften Laufzeitverhaltens." -#: ../../library/exceptions.rst:917 +#: ../../builtins/exceptions.rst:917 msgid "" "Base class for warnings about deprecated features when those warnings are " "intended for end users of applications that are written in Python." @@ -1519,39 +1519,39 @@ msgstr "" "Basisklasse für Warnungen über veraltete Features, wenn diese Warnungen für " "Endbenutzer von in Python geschriebenen Anwendungen bestimmt sind." -#: ../../library/exceptions.rst:923 +#: ../../builtins/exceptions.rst:923 msgid "Base class for warnings about probable mistakes in module imports." msgstr "" "Basisklasse für Warnungen vor wahrscheinlichen Fehlern bei Modulimporten." -#: ../../library/exceptions.rst:931 +#: ../../builtins/exceptions.rst:931 msgid "Base class for warnings related to Unicode." msgstr "Basisklasse für Warnungen im Zusammenhang mit Unicode." -#: ../../library/exceptions.rst:936 +#: ../../builtins/exceptions.rst:936 msgid "Base class for warnings related to encodings." msgstr "Basisklasse für Warnungen im Zusammenhang mit Kodierungen." -#: ../../library/exceptions.rst:938 +#: ../../builtins/exceptions.rst:938 msgid "See :ref:`io-encoding-warning` for details." msgstr "Siehe :ref:`io-encoding-warning` für Details." -#: ../../library/exceptions.rst:945 +#: ../../builtins/exceptions.rst:945 msgid "" "Base class for warnings related to :class:`bytes` and :class:`bytearray`." msgstr "" "Basisklasse für Warnungen im Zusammenhang mit :class:`bytes` und :class:" "`bytearray`." -#: ../../library/exceptions.rst:950 +#: ../../builtins/exceptions.rst:950 msgid "Base class for warnings related to resource usage." msgstr "Basisklasse für Warnungen im Zusammenhang mit der Ressourcennutzung." -#: ../../library/exceptions.rst:961 +#: ../../builtins/exceptions.rst:961 msgid "Exception groups" msgstr "Exception-Gruppen" -#: ../../library/exceptions.rst:963 +#: ../../builtins/exceptions.rst:963 msgid "" "The following are used when it is necessary to raise multiple unrelated " "exceptions. They are part of the exception hierarchy so they can be handled " @@ -1566,7 +1566,7 @@ msgstr "" "erkannt, was ihre Untergruppen anhand der Typen der enthaltenen Exceptions " "abgleicht." -#: ../../library/exceptions.rst:972 +#: ../../builtins/exceptions.rst:972 msgid "" "Both of these exception types wrap the exceptions in the sequence ``excs``. " "The ``msg`` parameter must be a string. The difference between the two " @@ -1585,7 +1585,7 @@ msgstr "" "Exception`` eine :exc:`ExceptionGroup` abfängt, nicht jedoch :exc:" "`BaseExceptionGroup`." -#: ../../library/exceptions.rst:980 +#: ../../builtins/exceptions.rst:980 msgid "" "The :exc:`BaseExceptionGroup` constructor returns an :exc:`ExceptionGroup` " "rather than a :exc:`BaseExceptionGroup` if all contained exceptions are :exc:" @@ -1600,7 +1600,7 @@ msgstr "" "von :exc:`ExceptionGroup` hingegen löst einen :exc:`TypeError` aus, wenn " "eine enthaltene Exception keine Unterklasse von :exc:`Exception` ist." -#: ../../library/exceptions.rst:987 +#: ../../builtins/exceptions.rst:987 msgid "" "Exception groups are :ref:`generic ` over the type of their " "contained exceptions." @@ -1608,7 +1608,7 @@ msgstr "" "Exception-Gruppen sind hinsichtlich des Typs ihrer enthaltenen Ausnahmen :" "ref:`generisch `." -#: ../../library/exceptions.rst:992 +#: ../../builtins/exceptions.rst:992 msgid "" "The ``excs`` parameter may be any sequence, but lists and tuples are " "specifically processed more efficiently here. For optimal performance, pass " @@ -1618,13 +1618,13 @@ msgstr "" "Tupel hier speziell effizienter verarbeitet werden. Für optimale Leistung " "übergib ``excs`` als Tupel." -#: ../../library/exceptions.rst:998 +#: ../../builtins/exceptions.rst:998 msgid "The ``msg`` argument to the constructor. This is a read-only attribute." msgstr "" "Das Argument ``msg`` an den Konstruktor. Dies ist ein schreibgeschütztes " "Attribut." -#: ../../library/exceptions.rst:1002 +#: ../../builtins/exceptions.rst:1002 msgid "" "A tuple of the exceptions in the ``excs`` sequence given to the constructor. " "This is a read-only attribute." @@ -1632,7 +1632,7 @@ msgstr "" "Ein Tupel der Exceptions in der Sequenz ``excs``, die an den Konstruktor " "übergeben wurde. Dies ist ein schreibgeschütztes Attribut." -#: ../../library/exceptions.rst:1007 +#: ../../builtins/exceptions.rst:1007 msgid "" "Returns an exception group that contains only the exceptions from the " "current group that match *condition*, or ``None`` if the result is empty." @@ -1641,7 +1641,7 @@ msgstr "" "aktuellen Gruppe enthält, die auf *condition* zutreffen, oder ``None``, wenn " "das Ergebnis leer ist." -#: ../../library/exceptions.rst:1010 +#: ../../builtins/exceptions.rst:1010 msgid "" "The condition can be an exception type or tuple of exception types, in which " "case each exception is checked for a match using the same check that is used " @@ -1656,7 +1656,7 @@ msgstr "" "eine Exception als einziges Argument akzeptiert und für diejenigen " "Exceptions True zurückgibt, die in der Untergruppe enthalten sein sollen." -#: ../../library/exceptions.rst:1016 +#: ../../builtins/exceptions.rst:1016 msgid "" "The nesting structure of the current exception is preserved in the result, " "as are the values of its :attr:`message`, :attr:`~BaseException." @@ -1670,7 +1670,7 @@ msgstr "" "__context__` und :attr:`~BaseException.__notes__`. Leere verschachtelte " "Gruppen werden im Ergebnis weggelassen." -#: ../../library/exceptions.rst:1023 +#: ../../builtins/exceptions.rst:1023 msgid "" "The condition is checked for all exceptions in the nested exception group, " "including the top-level and any nested exception groups. If the condition is " @@ -1681,12 +1681,12 @@ msgstr "" "Exception-Gruppen. Wenn die Bedingung für eine solche Exception-Gruppe wahr " "ist, wird sie vollständig in das Ergebnis aufgenommen." -#: ../../library/exceptions.rst:1027 +#: ../../builtins/exceptions.rst:1027 msgid "``condition`` can be any callable which is not a type object." msgstr "" "``condition`` kann jedes aufrufbare Objekt sein, das kein Typobjekt ist." -#: ../../library/exceptions.rst:1032 +#: ../../builtins/exceptions.rst:1032 msgid "" "Like :meth:`subgroup`, but returns the pair ``(match, rest)`` where " "``match`` is ``subgroup(condition)`` and ``rest`` is the remaining non-" @@ -1696,7 +1696,7 @@ msgstr "" "``match`` ``subgroup(condition)`` entspricht und ``rest`` der verbleibende, " "nicht übereinstimmende Teil ist." -#: ../../library/exceptions.rst:1038 +#: ../../builtins/exceptions.rst:1038 msgid "" "Returns an exception group with the same :attr:`message`, but which wraps " "the exceptions in ``excs``." @@ -1704,7 +1704,7 @@ msgstr "" "Gibt eine Exception-Gruppe mit derselben :attr:`message` zurück, die jedoch " "die Exceptions in ``excs`` kapselt." -#: ../../library/exceptions.rst:1041 +#: ../../builtins/exceptions.rst:1041 msgid "" "This method is used by :meth:`subgroup` and :meth:`split`, which are used in " "various contexts to break up an exception group. A subclass needs to " @@ -1717,7 +1717,7 @@ msgstr "" "meth:`split` Instanzen der Unterklasse anstelle von :exc:`ExceptionGroup` " "zurückgeben." -#: ../../library/exceptions.rst:1047 +#: ../../builtins/exceptions.rst:1047 msgid "" ":meth:`subgroup` and :meth:`split` copy the :attr:`~BaseException." "__traceback__`, :attr:`~BaseException.__cause__`, :attr:`~BaseException." @@ -1731,7 +1731,7 @@ msgstr "" "Exception-Gruppe in die von :meth:`derive` zurückgegebene Gruppe, sodass " "diese Felder nicht von :meth:`derive` aktualisiert werden müssen." -#: ../../library/exceptions.rst:1054 +#: ../../builtins/exceptions.rst:1054 msgid "" ">>> class MyGroup(ExceptionGroup):\n" "... def derive(self, excs):\n" @@ -1785,7 +1785,7 @@ msgstr "" ">>> exc.__traceback__ is match.__traceback__ is rest.__traceback__\n" "True" -#: ../../library/exceptions.rst:1080 +#: ../../builtins/exceptions.rst:1080 msgid "" "Note that :exc:`BaseExceptionGroup` defines :meth:`~object.__new__`, so " "subclasses that need a different constructor signature need to override that " @@ -1800,7 +1800,7 @@ msgstr "" "einen exit_code entgegennimmt und daraus die Nachricht der Gruppe " "konstruiert::" -#: ../../library/exceptions.rst:1086 +#: ../../builtins/exceptions.rst:1086 msgid "" "class Errors(ExceptionGroup):\n" " def __new__(cls, errors, exit_code):\n" @@ -1820,7 +1820,7 @@ msgstr "" " def derive(self, excs):\n" " return Errors(excs, self.exit_code)" -#: ../../library/exceptions.rst:1095 +#: ../../builtins/exceptions.rst:1095 msgid "" "Like :exc:`ExceptionGroup`, any subclass of :exc:`BaseExceptionGroup` which " "is also a subclass of :exc:`Exception` can only wrap instances of :exc:" @@ -1830,15 +1830,15 @@ msgstr "" "`BaseExceptionGroup`, die zugleich eine Unterklasse von :exc:`Exception` " "ist, nur Instanzen von :exc:`Exception` kapseln." -#: ../../library/exceptions.rst:1103 +#: ../../builtins/exceptions.rst:1103 msgid "Exception hierarchy" msgstr "Exception-Hierarchie" -#: ../../library/exceptions.rst:1105 +#: ../../builtins/exceptions.rst:1105 msgid "The class hierarchy for built-in exceptions is:" msgstr "Die Klassenhierarchie für eingebaute Exceptions ist:" -#: ../../library/exceptions.rst:1107 +#: ../../builtins/exceptions.rst:1107 msgid "" "BaseException\n" " ├── BaseExceptionGroup\n" @@ -1980,51 +1980,51 @@ msgstr "" " ├── UnicodeWarning\n" " └── UserWarning\n" -#: ../../library/exceptions.rst:6 ../../library/exceptions.rst:17 -#: ../../library/exceptions.rst:196 +#: ../../builtins/exceptions.rst:6 ../../builtins/exceptions.rst:17 +#: ../../builtins/exceptions.rst:196 msgid "statement" msgstr "Anweisung" -#: ../../library/exceptions.rst:6 +#: ../../builtins/exceptions.rst:6 msgid "try" msgstr "try" -#: ../../library/exceptions.rst:6 +#: ../../builtins/exceptions.rst:6 msgid "except" msgstr "except" -#: ../../library/exceptions.rst:17 +#: ../../builtins/exceptions.rst:17 msgid "raise" msgstr "raise" -#: ../../library/exceptions.rst:41 +#: ../../builtins/exceptions.rst:41 msgid "exception" msgstr "Exception" -#: ../../library/exceptions.rst:41 +#: ../../builtins/exceptions.rst:41 msgid "chaining" msgstr "Verkettung" -#: ../../library/exceptions.rst:41 +#: ../../builtins/exceptions.rst:41 msgid "__cause__ (exception attribute)" msgstr "__cause__ (Exception-Attribut)" -#: ../../library/exceptions.rst:41 +#: ../../builtins/exceptions.rst:41 msgid "__context__ (exception attribute)" msgstr "__context__ (Exception-Attribut)" -#: ../../library/exceptions.rst:41 +#: ../../builtins/exceptions.rst:41 msgid "__suppress_context__ (exception attribute)" msgstr "__suppress_context__ (Exception-Attribut)" -#: ../../library/exceptions.rst:196 +#: ../../builtins/exceptions.rst:196 msgid "assert" msgstr "assert" -#: ../../library/exceptions.rst:361 +#: ../../builtins/exceptions.rst:361 msgid "module" msgstr "Modul" -#: ../../library/exceptions.rst:361 +#: ../../builtins/exceptions.rst:361 msgid "errno" msgstr "errno" diff --git a/builtins/functions.po b/builtins/functions.po index 41803d20..7594d7b9 100644 --- a/builtins/functions.po +++ b/builtins/functions.po @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-22 12:07+0200\n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" "PO-Revision-Date: 2026-08-16 00:01+0000\n" "Last-Translator: Swen Bachmann <142266608+sba72@users.noreply.github.com>\n" "Language-Team: German (https://app.transifex.com/python-doc/teams/5390/de/)\n" @@ -20,11 +20,12 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: ../../library/functions.rst:5 ../../library/functions.rst:11 -msgid "Built-in Functions" +#: ../../builtins/functions.rst:5 +#, fuzzy +msgid "Built-in functions" msgstr "Integrierte Funktionen" -#: ../../library/functions.rst:7 +#: ../../builtins/functions.rst:7 msgid "" "The Python interpreter has a number of functions and types built into it " "that are always available. They are listed here in alphabetical order." @@ -33,379 +34,383 @@ msgstr "" "Typen,die jederzeit verfügbar sind. Sie sind hier in alphabetischer " "Reihenfolge aufgeführt." -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:11 +msgid "Built-in Functions" +msgstr "Integrierte Funktionen" + +#: ../../builtins/functions.rst:13 msgid "**A**" msgstr "**A**" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:14 msgid ":func:`abs`" msgstr ":func:`abs`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:15 msgid ":func:`aiter`" msgstr ":func:`aiter`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:16 msgid ":func:`all`" msgstr ":func:`all`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:17 msgid ":func:`anext`" msgstr ":func:`anext`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:18 msgid ":func:`any`" msgstr ":func:`any`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:19 msgid ":func:`ascii`" msgstr ":func:`ascii`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:21 msgid "**B**" msgstr "**B**" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:22 msgid ":func:`bin`" msgstr ":func:`bin`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:23 msgid ":func:`bool`" msgstr ":func:`bool`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:24 msgid ":func:`breakpoint`" msgstr ":func:`breakpoint`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:25 msgid "|func-bytearray|_" msgstr "|func-bytearray|_" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:26 msgid "|func-bytes|_" msgstr "|func-bytes|_" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:28 msgid "**C**" msgstr "**C**" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:29 msgid ":func:`callable`" msgstr ":func:`callable`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:30 msgid ":func:`chr`" msgstr ":func:`chr`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:31 msgid ":func:`classmethod`" msgstr ":func:`classmethod`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:32 msgid ":func:`compile`" msgstr ":func:`compile`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:33 msgid ":func:`complex`" msgstr ":func:`complex`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:35 msgid "**D**" msgstr "**D**" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:36 msgid ":func:`delattr`" msgstr ":func:`delattr`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:37 msgid "|func-dict|_" msgstr "|func-dict|_" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:38 msgid ":func:`dir`" msgstr ":func:`dir`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:39 msgid ":func:`divmod`" msgstr ":func:`divmod`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:13 msgid "**E**" msgstr "**E**" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:14 msgid ":func:`enumerate`" msgstr ":func:`enumerate`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:15 msgid ":func:`eval`" msgstr ":func:`eval`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:16 msgid ":func:`exec`" msgstr ":func:`exec`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:18 msgid "**F**" msgstr "**F**" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:19 msgid ":func:`filter`" msgstr ":func:`filter`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:20 msgid ":func:`float`" msgstr ":func:`float`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:21 msgid ":func:`format`" msgstr ":func:`format`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:22 msgid "|func-frozendict|_" msgstr "|func-frozendict|_" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:23 msgid "|func-frozenset|_" msgstr "|func-frozenset|_" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:25 msgid "**G**" msgstr "**G**" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:26 msgid ":func:`getattr`" msgstr ":func:`getattr`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:27 msgid ":func:`globals`" msgstr ":func:`globals`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:29 msgid "**H**" msgstr "**H**" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:30 msgid ":func:`hasattr`" msgstr ":func:`hasattr`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:31 msgid ":func:`hash`" msgstr ":func:`hash`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:32 msgid ":func:`help`" msgstr ":func:`help`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:33 msgid ":func:`hex`" msgstr ":func:`hex`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:35 msgid "**I**" msgstr "**I**" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:36 msgid ":func:`id`" msgstr ":func:`id`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:37 msgid ":func:`input`" msgstr ":func:`input`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:38 msgid ":func:`int`" msgstr ":func:`int`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:39 msgid ":func:`isinstance`" msgstr ":func:`isinstance`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:40 msgid ":func:`issubclass`" msgstr ":func:`issubclass`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:41 msgid ":func:`iter`" msgstr ":func:`iter`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:13 msgid "**L**" msgstr "**L**" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:14 msgid ":func:`len`" msgstr ":func:`len`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:15 msgid "|func-list|_" msgstr "|func-list|_" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:16 msgid ":func:`locals`" msgstr ":func:`locals`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:18 msgid "**M**" msgstr "**M**" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:19 msgid ":func:`map`" msgstr ":func:`map`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:20 msgid ":func:`max`" msgstr ":func:`max`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:21 msgid "|func-memoryview|_" msgstr "|func-memoryview|_" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:22 msgid ":func:`min`" msgstr ":func:`min`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:24 msgid "**N**" msgstr "**N**" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:25 msgid ":func:`next`" msgstr ":func:`next`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:27 msgid "**O**" msgstr "**O**" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:28 msgid ":func:`object`" msgstr ":func:`object`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:29 msgid ":func:`oct`" msgstr ":func:`oct`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:30 msgid ":func:`open`" msgstr ":func:`open`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:31 msgid ":func:`ord`" msgstr ":func:`ord`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:33 msgid "**P**" msgstr "**P**" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:34 msgid ":func:`pow`" msgstr ":func:`pow`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:35 msgid ":func:`print`" msgstr ":func:`print`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:36 msgid ":func:`property`" msgstr ":func:`property`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:13 msgid "**R**" msgstr "**R**" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:14 msgid "|func-range|_" msgstr "|func-range|_" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:15 msgid ":func:`repr`" msgstr ":func:`repr`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:16 msgid ":func:`reversed`" msgstr ":func:`reversed`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:17 msgid ":func:`round`" msgstr ":func:`round`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:19 msgid "**S**" msgstr "**S**" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:20 msgid "|func-set|_" msgstr "|func-set|_" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:21 msgid ":func:`setattr`" msgstr ":func:`setattr`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:22 msgid ":func:`sentinel`" msgstr ":func:`sentinel`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:23 msgid ":func:`slice`" msgstr ":func:`slice`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:24 msgid ":func:`sorted`" msgstr ":func:`sorted`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:25 msgid ":func:`staticmethod`" msgstr ":func:`staticmethod`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:26 msgid "|func-str|_" msgstr "|func-str|_" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:27 msgid ":func:`sum`" msgstr ":func:`sum`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:28 msgid ":func:`super`" msgstr ":func:`super`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:30 msgid "**T**" msgstr "**T**" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:31 msgid "|func-tuple|_" msgstr "|func-tuple|_" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:32 msgid ":func:`type`" msgstr ":func:`type`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:34 msgid "**V**" msgstr "**V**" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:35 msgid ":func:`vars`" msgstr ":func:`vars`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:37 msgid "**Z**" msgstr "**Z**" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:38 msgid ":func:`zip`" msgstr ":func:`zip`" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:40 msgid "**_**" msgstr "**_**" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:41 msgid ":func:`__import__`" msgstr ":func:`__import__`" -#: ../../library/functions.rst:61 +#: ../../builtins/functions.rst:61 msgid "" "Return the absolute value of a number. The argument may be an integer, a " "floating-point number, or an object implementing :meth:`~object.__abs__`. If " @@ -416,7 +421,7 @@ msgstr "" "implementiert. Handelt es sich bei dem Argument um eine komplexe Zahl, wird " "deren Betrag zurückgegeben." -#: ../../library/functions.rst:69 +#: ../../builtins/functions.rst:69 msgid "" "Return an :term:`asynchronous iterator` for an :term:`asynchronous " "iterable`. Equivalent to calling ``x.__aiter__()``." @@ -424,13 +429,13 @@ msgstr "" "Gibt einen :term:`asynchronous iterator` für ein :term:`asynchronous " "iterable` zurück. Entspricht dem Aufruf von ``x.__aiter__()``." -#: ../../library/functions.rst:72 +#: ../../builtins/functions.rst:72 msgid "Note: Unlike :func:`iter`, :func:`aiter` has no 2-argument variant." msgstr "" "Hinweis: Im Gegensatz zu :func:`iter` gibt es bei :func:`aiter` keine " "Variante mit zwei Argumenten" -#: ../../library/functions.rst:78 +#: ../../builtins/functions.rst:78 msgid "" "Return ``True`` if all elements of the *iterable* are true (or if the " "iterable is empty). Equivalent to::" @@ -438,7 +443,7 @@ msgstr "" "Gibt ``True`` zurück, wenn alle Elemente des *iterable* wahr sind (oder wenn " "das iterable leer ist). Entspricht::" -#: ../../library/functions.rst:81 +#: ../../builtins/functions.rst:81 msgid "" "def all(iterable):\n" " for element in iterable:\n" @@ -452,23 +457,24 @@ msgstr "" " return False\n" " return True" -#: ../../library/functions.rst:91 +#: ../../builtins/functions.rst:91 +#, fuzzy msgid "" "When awaited, return the next item from the given :term:`asynchronous " -"iterator`, or *default* if given and the iterator is exhausted." +"iterator`, or *default* if given and the iterator is :term:`exhausted`." msgstr "" "Gibt, wenn erwartet, das nächste Element des angegebenen :term:`asynchronen " "Iterators ` zurück – oder *default*, falls angegeben " "und der Iterator erschöpft ist." -#: ../../library/functions.rst:94 +#: ../../builtins/functions.rst:94 msgid "" "This is the async variant of the :func:`next` builtin, and behaves similarly." msgstr "" "Dies ist die asynchrone Variante der eingebauten Funktion :func:`next` und " "verhält sich ähnlich." -#: ../../library/functions.rst:97 +#: ../../builtins/functions.rst:97 msgid "" "This calls the :meth:`~object.__anext__` method of *async_iterator*, " "returning an :term:`awaitable`. Awaiting this returns the next value of the " @@ -481,7 +487,7 @@ msgstr "" "dieser Wert zurückgegeben, falls der Iterator erschöpft ist; andernfalls " "wird :exc:`StopAsyncIteration` ausgelöst." -#: ../../library/functions.rst:106 +#: ../../builtins/functions.rst:106 msgid "" "Return ``True`` if any element of the *iterable* is true. If the iterable " "is empty, return ``False``. Equivalent to::" @@ -489,7 +495,7 @@ msgstr "" "Gibt ``True`` zurück, wenn mindestens ein Element des *iterable* wahr ist. " "Wenn das Iterable leer ist, wird ``False`` zurückgegeben. Entspricht::" -#: ../../library/functions.rst:109 +#: ../../builtins/functions.rst:109 msgid "" "def any(iterable):\n" " for element in iterable:\n" @@ -503,7 +509,7 @@ msgstr "" " return True\n" " return False" -#: ../../library/functions.rst:118 +#: ../../builtins/functions.rst:118 msgid "" "As :func:`repr`, return a string containing a printable representation of an " "object, but escape the non-ASCII characters in the string returned by :func:" @@ -516,7 +522,7 @@ msgstr "" "Escapes maskiert. Dies erzeugt einen String, der dem ähnelt, den :func:" "`repr` in Python 2 zurückgibt." -#: ../../library/functions.rst:126 +#: ../../builtins/functions.rst:126 msgid "" "Convert an integer number to a binary string prefixed with \"0b\". The " "result is a valid Python expression. If *integer* is not a Python :class:" @@ -528,7 +534,7 @@ msgstr "" "vom Typ :class:`int` ist, muss es eine :meth:`~object.__index__`-Methode " "definieren, die eine Ganzzahl zurückgibt. Einige Beispiele:" -#: ../../library/functions.rst:136 +#: ../../builtins/functions.rst:136 msgid "" "If the prefix \"0b\" is desired or not, you can use either of the following " "ways." @@ -536,19 +542,19 @@ msgstr "" "Je nachdem, ob das Präfix „0b“ gewünscht ist oder nicht, kannst du eine der " "folgenden Methoden verwenden." -#: ../../library/functions.rst:143 +#: ../../builtins/functions.rst:143 msgid "" "See also :func:`enum.bin` to represent negative values as twos-complement." msgstr "" "Siehe auch :func:`enum.bin`, um negative Werte als Zweierkomplement " "darzustellen." -#: ../../library/functions.rst:145 ../../library/functions.rst:990 -#: ../../library/functions.rst:1374 +#: ../../builtins/functions.rst:145 ../../builtins/functions.rst:990 +#: ../../builtins/functions.rst:1374 msgid "See also :func:`format` for more information." msgstr "Weitere Informationen findest du unter :func:`format`." -#: ../../library/functions.rst:150 +#: ../../builtins/functions.rst:150 msgid "" "Return a Boolean value, i.e. one of ``True`` or ``False``. The argument is " "converted using the standard :ref:`truth testing procedure `. If the " @@ -565,11 +571,11 @@ msgstr "" "`int` (siehe :ref:`typesnumeric`). Sie kann nicht weiter unterteilt werden. " "Ihre einzigen Instanzen sind ``False`` und ``True`` (siehe :ref:`typebool`)." -#: ../../library/functions.rst:160 ../../library/functions.rst:840 +#: ../../builtins/functions.rst:160 ../../builtins/functions.rst:840 msgid "The parameter is now positional-only." msgstr "Der Parameter ist jetzt rein positionsgebunden." -#: ../../library/functions.rst:165 +#: ../../builtins/functions.rst:165 msgid "" "This function drops you into the debugger at the call site. Specifically, " "it calls :func:`sys.breakpointhook`, passing ``args`` and ``kws`` straight " @@ -593,7 +599,7 @@ msgstr "" "breakpointhook` nicht verfügbar, löst diese Funktion einen :exc:" "`RuntimeError` aus." -#: ../../library/functions.rst:177 +#: ../../builtins/functions.rst:177 msgid "" "By default, the behavior of :func:`breakpoint` can be changed with the :" "envvar:`PYTHONBREAKPOINT` environment variable. See :func:`sys." @@ -603,7 +609,7 @@ msgstr "" "Umgebungsvariable :envvar:`PYTHONBREAKPOINT` ändern. Einzelheiten zur " "Verwendung findest du unter :func:`sys.breakpointhook`." -#: ../../library/functions.rst:181 +#: ../../builtins/functions.rst:181 msgid "" "Note that this is not guaranteed if :func:`sys.breakpointhook` has been " "replaced." @@ -611,7 +617,7 @@ msgstr "" "Beachte, dass dies nicht garantiert ist, wenn :func:`sys.breakpointhook` " "ersetzt wurde." -#: ../../library/functions.rst:184 +#: ../../builtins/functions.rst:184 msgid "" "Raises an :ref:`auditing event ` ``builtins.breakpoint`` with " "argument ``breakpointhook``." @@ -619,7 +625,7 @@ msgstr "" "Löst ein :ref:`Audit-Ereignis ` ``builtins.breakpoint`` mit dem " "Argument ``breakpointhook`` aus." -#: ../../library/functions.rst:193 +#: ../../builtins/functions.rst:193 msgid "" "Return a new array of bytes. The :class:`bytearray` class is a mutable " "sequence of integers in the range 0 <= x < 256. It has most of the usual " @@ -632,7 +638,7 @@ msgstr "" "ref:`typesseq-mutable` beschrieben sind, sowie über die meisten Methoden des " "Typs :class:`bytes`, siehe :ref:`bytes-methods`." -#: ../../library/functions.rst:198 +#: ../../builtins/functions.rst:198 msgid "" "The optional *source* parameter can be used to initialize the array in a few " "different ways:" @@ -640,7 +646,7 @@ msgstr "" "Der optionale Parameter *source* kann verwendet werden, um das Array auf " "unterschiedlichen Wegen zu initialisieren:" -#: ../../library/functions.rst:201 +#: ../../builtins/functions.rst:201 msgid "" "If it is a *string*, you must also give the *encoding* (and optionally, " "*errors*) parameters; :func:`bytearray` then converts the string to bytes " @@ -650,7 +656,7 @@ msgstr "" "*encoding* (und optional *errors*) angeben; :func:`bytearray` wandelt den " "String dann mithilfe von :meth:`str.encode` in Bytes um." -#: ../../library/functions.rst:205 +#: ../../builtins/functions.rst:205 msgid "" "If it is an *integer*, the array will have that size and will be initialized " "with null bytes." @@ -658,7 +664,7 @@ msgstr "" "Wenn es sich um eine Ganzzahl (*integer*) handelt, erhält das Array diese " "Größe und wird mit Null-Bytes initialisiert." -#: ../../library/functions.rst:208 +#: ../../builtins/functions.rst:208 msgid "" "If it is an object conforming to the :ref:`buffer interface " "`, a read-only buffer of the object will be used to " @@ -668,7 +674,7 @@ msgstr "" "` entspricht, so wird ein schreibgeschützter Puffer des " "Objekts verwendet, um das Bytes-Array zu initialisieren." -#: ../../library/functions.rst:211 +#: ../../builtins/functions.rst:211 msgid "" "If it is an *iterable*, it must be an iterable of integers in the range ``0 " "<= x < 256``, which are used as the initial contents of the array." @@ -677,15 +683,15 @@ msgstr "" "Bereich ``0 <= x < 256`` sein, die als anfänglicher Inhalt des Arrays " "verwendet werden." -#: ../../library/functions.rst:214 +#: ../../builtins/functions.rst:214 msgid "Without an argument, an array of size 0 is created." msgstr "Ohne Argument wird ein Array der Größe 0 erstellt." -#: ../../library/functions.rst:216 +#: ../../builtins/functions.rst:216 msgid "See also :ref:`binaryseq` and :ref:`typebytearray`." msgstr "Siehe auch :ref:`binaryseq` und :ref:`typebytearray`." -#: ../../library/functions.rst:224 +#: ../../builtins/functions.rst:224 msgid "" "Return a new \"bytes\" object which is an immutable sequence of integers in " "the range ``0 <= x < 256``. :class:`bytes` is an immutable version of :" @@ -698,25 +704,25 @@ msgstr "" "verfügt über dieselben nicht-modifizierenden Methoden sowie dasselbe " "Verhalten bei Indizierung und Slicing." -#: ../../library/functions.rst:229 +#: ../../builtins/functions.rst:229 msgid "" "Accordingly, constructor arguments are interpreted as for :func:`bytearray`." msgstr "" "Demzufolge werden die Konstruktorargumente wie bei :func:`bytearray` " "interpretiert." -#: ../../library/functions.rst:231 +#: ../../builtins/functions.rst:231 msgid "Bytes objects can also be created with literals, see :ref:`strings`." msgstr "" "Bytes-Objekte können auch mithilfe von Literalen erstellt werden; siehe :ref:" "`strings`." -#: ../../library/functions.rst:233 +#: ../../builtins/functions.rst:233 msgid "See also :ref:`binaryseq`, :ref:`typebytes`, and :ref:`bytes-methods`." msgstr "" "Siehe auch :ref:`binaryseq`, :ref:`typebytes` und :ref:`bytes-methods`." -#: ../../library/functions.rst:238 +#: ../../builtins/functions.rst:238 msgid "" "Return :const:`True` if the *object* argument appears callable, :const:" "`False` if not. If this returns ``True``, it is still possible that a call " @@ -732,7 +738,7 @@ msgstr "" "Instanzen sind aufrufbar, wenn ihre Klasse über eine Methode :meth:`~object." "__call__` verfügt." -#: ../../library/functions.rst:244 +#: ../../builtins/functions.rst:244 msgid "" "This function was first removed in Python 3.0 and then brought back in " "Python 3.2." @@ -740,7 +746,7 @@ msgstr "" "Diese Funktion wurde zunächst in Python 3.0 entfernt und dann in Python 3.2 " "wieder eingeführt." -#: ../../library/functions.rst:251 +#: ../../builtins/functions.rst:251 msgid "" "Return the string representing a character with the specified Unicode code " "point. For example, ``chr(97)`` returns the string ``'a'``, while " @@ -751,7 +757,7 @@ msgstr "" "während ``chr(8364)`` den String ``'€'`` liefert. Dies ist die " "Umkehrfunktion zu :func:`ord`." -#: ../../library/functions.rst:255 +#: ../../builtins/functions.rst:255 msgid "" "The valid range for the argument is from 0 through 1,114,111 (0x10FFFF in " "base 16). :exc:`ValueError` will be raised if it is outside that range." @@ -760,11 +766,11 @@ msgstr "" "(0x10FFFF im Hexadezimalsystem). Liegt der Wert außerhalb dieses Bereichs, " "wird eine :exc:`ValueError`-Ausnahme ausgelöst." -#: ../../library/functions.rst:261 +#: ../../builtins/functions.rst:261 msgid "Transform a method into a class method." msgstr "Wandeln Sie eine Methode in eine Klassenmethode um." -#: ../../library/functions.rst:263 +#: ../../builtins/functions.rst:263 msgid "" "A class method receives the class as an implicit first argument, just like " "an instance method receives the instance. To declare a class method, use " @@ -774,7 +780,7 @@ msgstr "" "wie eine Instanzmethode die Instanz erhält. Um eine Klassenmethode zu " "deklarieren, verwende dieses Idiom::" -#: ../../library/functions.rst:267 +#: ../../builtins/functions.rst:267 msgid "" "class C:\n" " @classmethod\n" @@ -784,7 +790,7 @@ msgstr "" " @classmethod\n" " def f(cls, arg1, arg2): ..." -#: ../../library/functions.rst:271 +#: ../../builtins/functions.rst:271 msgid "" "The ``@classmethod`` form is a function :term:`decorator` -- see :ref:" "`function` for details." @@ -792,7 +798,7 @@ msgstr "" "Die ``@classmethod``-Form ist eine Funktion :term:`Decorator ` – " "siehe :ref:`function` für Details." -#: ../../library/functions.rst:274 +#: ../../builtins/functions.rst:274 msgid "" "A class method can be called either on the class (such as ``C.f()``) or on " "an instance (such as ``C().f()``). The instance is ignored except for its " @@ -805,7 +811,7 @@ msgstr "" "abgeleitete Klasse aufgerufen, so wird das Objekt der abgeleiteten Klasse " "als implizites erstes Argument übergeben." -#: ../../library/functions.rst:279 +#: ../../builtins/functions.rst:279 msgid "" "Class methods are different than C++ or Java static methods. If you want " "those, see :func:`staticmethod` in this section. For more information on " @@ -815,7 +821,7 @@ msgstr "" "Wenn du solche benötigen, siehe :func:`staticmethod` in diesem Abschnitt. " "Weitere Informationen zu Klassenmethoden findest du unter :ref:`types`." -#: ../../library/functions.rst:283 +#: ../../builtins/functions.rst:283 msgid "" "Class methods can now wrap other :term:`descriptors ` such as :" "func:`property`." @@ -823,7 +829,7 @@ msgstr "" "Klassenmethoden können nun andere :term:`Deskriptoren ` wie :" "func:`property` umschließen." -#: ../../library/functions.rst:287 +#: ../../builtins/functions.rst:287 msgid "" "Class methods now inherit the method attributes (:attr:`~function." "__module__`, :attr:`~function.__name__`, :attr:`~function.__qualname__`, :" @@ -835,7 +841,7 @@ msgstr "" "attr:`~function.__doc__` und :attr:`~function.__annotations__`) und verfügen " "über ein neues ``__wrapped__``-Attribut." -#: ../../library/functions.rst:294 +#: ../../builtins/functions.rst:294 msgid "" "Class methods can no longer wrap other :term:`descriptors ` such " "as :func:`property`." @@ -843,7 +849,7 @@ msgstr "" "Klassenmethoden können keine anderen :term:`Deskriptoren ` mehr " "kapseln, wie etwa :func:`property`." -#: ../../library/functions.rst:303 +#: ../../builtins/functions.rst:303 msgid "" "Compile the *source* into a code or AST object. Code objects can be " "executed by :func:`exec` or :func:`eval`. *source* can either be a normal " @@ -855,7 +861,7 @@ msgstr "" "normaler String, ein Byte-String oder ein AST-Objekt sein. Informationen zur " "Arbeit mit AST-Objekten findest du in der Dokumentation zum Modul :mod:`ast`." -#: ../../library/functions.rst:308 +#: ../../builtins/functions.rst:308 msgid "" "The *filename* argument should give the file from which the code was read; " "pass some recognizable value if it wasn't read from a file (``''`` " @@ -865,7 +871,7 @@ msgstr "" "wurde. Übergeben Sie einen erkennbaren Wert, falls er nicht aus einer Datei " "gelesen wurde (häufig wird ``''`` verwendet)." -#: ../../library/functions.rst:312 +#: ../../builtins/functions.rst:312 msgid "" "The *mode* argument specifies what kind of code must be compiled; it can be " "``'exec'`` if *source* consists of a sequence of statements, ``'eval'`` if " @@ -880,7 +886,7 @@ msgstr "" "letzteren Fall werden Ausdrucksanweisungen, die einen anderen Wert als " "``None`` ergeben, ausgegeben)." -#: ../../library/functions.rst:318 +#: ../../builtins/functions.rst:318 msgid "" "The optional arguments *flags* and *dont_inherit* control which :ref:" "`compiler options ` should be activated and which :ref:" @@ -905,7 +911,7 @@ msgstr "" "allein maßgeblich – die Flags (future-Funktionen und Compiler-Optionen) des " "umgebenden Codes werden ignoriert." -#: ../../library/functions.rst:329 +#: ../../builtins/functions.rst:329 msgid "" "Compiler options and future statements are specified by bits which can be " "bitwise ORed together to specify multiple options. The bitfield required to " @@ -922,7 +928,7 @@ msgstr "" "finden. :ref:`Compiler-Flags ` sind im Modul :mod:`ast` " "unter dem Präfix ``PyCF_`` zu finden." -#: ../../library/functions.rst:337 +#: ../../builtins/functions.rst:337 msgid "" "The argument *optimize* specifies the optimization level of the compiler; " "the default value of ``-1`` selects the optimization level of the " @@ -937,7 +943,7 @@ msgstr "" "entfernt, ``__debug__`` ist falsch) oder ``2`` (auch Docstrings werden " "entfernt)." -#: ../../library/functions.rst:343 +#: ../../builtins/functions.rst:343 msgid "" "The optional argument *module* specifies the module name. It is needed to " "unambiguous :ref:`filter ` syntax warnings by module name." @@ -946,7 +952,7 @@ msgstr "" "Syntax-Warnungen anhand des Modulnamens eindeutig zu :ref:`filtern ` zu können." -#: ../../library/functions.rst:347 +#: ../../builtins/functions.rst:347 msgid "" "This function raises :exc:`SyntaxError` or :exc:`ValueError` if the compiled " "source is invalid." @@ -954,7 +960,7 @@ msgstr "" "Diese Funktion löst :exc:`SyntaxError` oder :exc:`ValueError` aus, wenn die " "kompilierte Quelle ungültig ist." -#: ../../library/functions.rst:350 +#: ../../builtins/functions.rst:350 msgid "" "If you want to parse Python code into its AST representation, see :func:`ast." "parse`." @@ -962,7 +968,7 @@ msgstr "" "Wenn du Python-Code in seine AST-Darstellung parsen möchtest, siehe :func:" "`ast.parse`." -#: ../../library/functions.rst:353 ../../library/functions.rst:355 +#: ../../builtins/functions.rst:353 ../../builtins/functions.rst:355 msgid "" "Raises an :ref:`auditing event ` ``compile`` with arguments " "``source`` and ``filename``. This event may also be raised by implicit " @@ -972,7 +978,7 @@ msgstr "" "Argumenten ``source`` und ``filename`` aus. Dieses Ereignis kann auch durch " "implizite Kompilierung ausgelöst werden." -#: ../../library/functions.rst:361 +#: ../../builtins/functions.rst:361 msgid "" "When compiling a string with multi-line code in ``'single'`` or ``'eval'`` " "mode, input must be terminated by at least one newline character. This is " @@ -984,7 +990,7 @@ msgstr "" "Zeilenumbruchzeichen enden. Dies dient dazu, die Erkennung unvollständiger " "und vollständiger Anweisungen im Modul :mod:`code` zu ​​erleichtern." -#: ../../library/functions.rst:368 +#: ../../builtins/functions.rst:368 msgid "" "It is possible to crash the Python interpreter with a sufficiently large/" "complex string when compiling to an AST object due to stack depth " @@ -994,7 +1000,7 @@ msgstr "" "mit einem hinreichend großen oder komplexen String zum Absturz zu bringen – " "bedingt durch die Beschränkungen der Stack-Tiefe im AST-Compiler von Python." -#: ../../library/functions.rst:372 +#: ../../builtins/functions.rst:372 msgid "" "Allowed use of Windows and Mac newlines. Also, input in ``'exec'`` mode " "does not have to end in a newline anymore. Added the *optimize* parameter." @@ -1003,7 +1009,7 @@ msgstr "" "muss die Eingabe im Modus ``'exec'`` nicht mehr mit einem Zeilenumbruch " "enden. Der Parameter *optimize* wurde hinzugefügt." -#: ../../library/functions.rst:376 +#: ../../builtins/functions.rst:376 msgid "" "Previously, :exc:`TypeError` was raised when null bytes were encountered in " "*source*." @@ -1011,7 +1017,7 @@ msgstr "" "Früher wurde ein :exc:`TypeError` ausgelöst, wenn in *source* Null-Bytes " "auftraten." -#: ../../library/functions.rst:380 +#: ../../builtins/functions.rst:380 msgid "" "``ast.PyCF_ALLOW_TOP_LEVEL_AWAIT`` can now be passed in flags to enable " "support for top-level ``await``, ``async for``, and ``async with``." @@ -1020,11 +1026,11 @@ msgstr "" "um die Unterstützung für ``await``, ``async for`` und ``async with`` auf " "oberster Ebene zu aktivieren." -#: ../../library/functions.rst:384 +#: ../../builtins/functions.rst:384 msgid "Added the *module* parameter." msgstr "Der Parameter *module* wurde hinzugefügt." -#: ../../library/functions.rst:392 +#: ../../builtins/functions.rst:392 msgid "" "Convert a single string or number to a complex number, or create a complex " "number from real and imaginary parts." @@ -1032,12 +1038,12 @@ msgstr "" "Wandelst du eine einzelne Zeichenkette oder Zahl in eine komplexe Zahl um " "oder erstelle eine komplexe Zahl aus Real- und Imaginärteil." -#: ../../library/functions.rst:395 ../../library/functions.rst:783 -#: ../../library/functions.rst:1046 +#: ../../builtins/functions.rst:395 ../../builtins/functions.rst:783 +#: ../../builtins/functions.rst:1046 msgid "Examples:" msgstr "Beispiele:" -#: ../../library/functions.rst:397 +#: ../../builtins/functions.rst:397 msgid "" ">>> complex('+1.23')\n" "(1.23+0j)\n" @@ -1073,7 +1079,7 @@ msgstr "" ">>> complex(-1.23, 4.5)\n" "(-1.23+4.5j)" -#: ../../library/functions.rst:416 +#: ../../builtins/functions.rst:416 msgid "" "If the argument is a string, it must contain either a real part (in the same " "format as for :func:`float`) or an imaginary part (in the same format but " @@ -1101,7 +1107,7 @@ msgstr "" "nachgestellten Leerzeichen – der Produktionsregel :token:`~float:" "complexvalue` in der folgenden Grammatik entsprechen:" -#: ../../library/functions.rst:435 +#: ../../builtins/functions.rst:435 msgid "" "If the argument is a number, the constructor serves as a numeric conversion " "like :class:`int` and :class:`float`. For a general Python object ``x``, " @@ -1117,7 +1123,7 @@ msgstr "" "meth:`~object.__float__` zurückgegriffen. Ist :meth:`!__float__` nicht " "definiert, wird auf :meth:`~object.__index__` zurückgegriffen." -#: ../../library/functions.rst:444 +#: ../../builtins/functions.rst:444 msgid "" "If two arguments are provided or keyword arguments are used, each argument " "may be any numeric type (including complex). If both arguments are real " @@ -1136,7 +1142,7 @@ msgstr "" "imag+imag.real`` zurückgegeben. Ist eines der Argumente eine reelle Zahl, " "wird in den obigen Ausdrücken nur deren Realteil verwendet." -#: ../../library/functions.rst:454 +#: ../../builtins/functions.rst:454 msgid "" "See also :meth:`complex.from_number` which only accepts a single numeric " "argument." @@ -1144,22 +1150,22 @@ msgstr "" "Siehe auch :meth:`complex.from_number`, das nur ein einzelnes numerisches " "Argument akzeptiert." -#: ../../library/functions.rst:456 +#: ../../builtins/functions.rst:456 msgid "If all arguments are omitted, returns ``0j``." msgstr "Wenn keine Argumente angegeben werden, wird ``0j`` zurückgegeben." -#: ../../library/functions.rst:458 +#: ../../builtins/functions.rst:458 msgid "The complex type is described in :ref:`typesnumeric`." msgstr "Der komplexe Typ wird unter :ref:`typesnumeric` beschrieben." -#: ../../library/functions.rst:460 ../../library/functions.rst:837 -#: ../../library/functions.rst:1094 +#: ../../builtins/functions.rst:460 ../../builtins/functions.rst:837 +#: ../../builtins/functions.rst:1094 msgid "Grouping digits with underscores as in code literals is allowed." msgstr "" "Die Gruppierung von Ziffern mittels Unterstrichen, wie bei Code-Literalen, " "ist zulässig." -#: ../../library/functions.rst:463 +#: ../../builtins/functions.rst:463 msgid "" "Falls back to :meth:`~object.__index__` if :meth:`~object.__complex__` and :" "meth:`~object.__float__` are not defined." @@ -1167,7 +1173,7 @@ msgstr "" "Fällt auf :meth:`~object.__index__` zurück, wenn :meth:`~object.__complex__` " "und :meth:`~object.__float__` nicht definiert sind." -#: ../../library/functions.rst:467 +#: ../../builtins/functions.rst:467 msgid "" "Passing a complex number as the *real* or *imag* argument is now deprecated; " "it should only be passed as a single positional argument." @@ -1176,7 +1182,7 @@ msgstr "" "veraltet;sie sollte nur noch als einzelnes Positionsargument übergeben " "werden." -#: ../../library/functions.rst:474 +#: ../../builtins/functions.rst:474 msgid "" "This is a relative of :func:`setattr`. The arguments are an object and a " "string. The string must be the name of one of the object's attributes. The " @@ -1191,7 +1197,7 @@ msgstr "" "der Anweisung ``del x.foobar``. *name* muss kein Python-Bezeichner sein " "(siehe :func:`setattr`)." -#: ../../library/functions.rst:487 +#: ../../builtins/functions.rst:487 msgid "" "Create a new dictionary. The :class:`dict` object is the dictionary class. " "See also :ref:`typesmapping` for documentation about this class." @@ -1200,7 +1206,7 @@ msgstr "" "Klasse. Siehe auch :ref:`typesmapping` für die Dokumentation zu dieser " "Klasse." -#: ../../library/functions.rst:490 +#: ../../builtins/functions.rst:490 msgid "" "For other containers see the built-in :class:`frozendict`, :class:`list`, :" "class:`set`, and :class:`tuple` classes, as well as the :mod:`collections` " @@ -1210,7 +1216,7 @@ msgstr "" "class:`list`, :class:`set` und :class:`tuple` sowie das Modul :mod:" "`collections`." -#: ../../library/functions.rst:497 +#: ../../builtins/functions.rst:497 msgid "" "Without arguments, return the list of names in the current local scope. " "With an argument, attempt to return a list of valid attributes for that " @@ -1220,7 +1226,7 @@ msgstr "" "Gültigkeitsbereich zurückgegeben. Mit einem Argument wird versucht, eine " "Liste der gültigen Attribute für dieses Objekt zurückzugeben." -#: ../../library/functions.rst:500 +#: ../../builtins/functions.rst:500 msgid "" "If the object has a method named :meth:`~object.__dir__`, this method will " "be called and must return the list of attributes. This allows objects that " @@ -1234,7 +1240,7 @@ msgstr "" "__getattr__` oder :func:`~object.__getattribute__` implementieren, die Art " "und Weise anzupassen, wie :func:`dir` ihre Attribute auflistet." -#: ../../library/functions.rst:507 +#: ../../builtins/functions.rst:507 msgid "" "If the object does not provide :meth:`~object.__dir__`, the function tries " "its best to gather information from the object's :attr:`~object.__dict__` " @@ -1249,7 +1255,7 @@ msgstr "" "kann ungenau sein, wenn das Objekt über eine benutzerdefinierte :func:" "`~object.__getattr__`-Methode verfügt." -#: ../../library/functions.rst:513 +#: ../../builtins/functions.rst:513 msgid "" "The default :func:`dir` mechanism behaves differently with different types " "of objects, as it attempts to produce the most relevant, rather than " @@ -1259,7 +1265,7 @@ msgstr "" "Objekttypen unterschiedlich, da er versucht, die relevantesten – und nicht " "etwa die vollständigen – Informationen zu liefern:" -#: ../../library/functions.rst:517 +#: ../../builtins/functions.rst:517 msgid "" "If the object is a module object, the list contains the names of the " "module's attributes." @@ -1267,7 +1273,7 @@ msgstr "" "Wenn es sich bei dem Objekt um ein Modulobjekt handelt, enthält die Liste " "die Namen der Attribute des Moduls." -#: ../../library/functions.rst:520 +#: ../../builtins/functions.rst:520 msgid "" "If the object is a type or class object, the list contains the names of its " "attributes, and recursively of the attributes of its bases." @@ -1276,7 +1282,7 @@ msgstr "" "die Liste die Namen seiner Attribute sowie – rekursiv – die Namen der " "Attribute seiner Basisklassen." -#: ../../library/functions.rst:523 +#: ../../builtins/functions.rst:523 msgid "" "Otherwise, the list contains the object's attributes' names, the names of " "its class's attributes, and recursively of the attributes of its class's " @@ -1286,11 +1292,11 @@ msgstr "" "der Attribute seiner Klasse sowie – rekursiv – die Namen der Attribute der " "Basisklassen seiner Klasse." -#: ../../library/functions.rst:527 +#: ../../builtins/functions.rst:527 msgid "The resulting list is sorted alphabetically. For example:" msgstr "Die resultierende Liste ist alphabetisch sortiert. Zum Beispiel:" -#: ../../library/functions.rst:547 +#: ../../builtins/functions.rst:547 msgid "" "Because :func:`dir` is supplied primarily as a convenience for use at an " "interactive prompt, it tries to supply an interesting set of names more than " @@ -1306,7 +1312,7 @@ msgstr "" "Attribute nicht in der Ergebnisliste enthalten, wenn das Argument eine " "Klasse ist." -#: ../../library/functions.rst:557 +#: ../../builtins/functions.rst:557 msgid "" "Take two (non-complex) numbers as arguments and return a pair of numbers " "consisting of their quotient and remainder when using integer division. " @@ -1327,7 +1333,7 @@ msgstr "" "% b`` ungleich null, so hat es dasselbe Vorzeichen wie *b*, und es gilt ``0 " "<= abs(a % b) < abs(b)``." -#: ../../library/functions.rst:569 +#: ../../builtins/functions.rst:569 msgid "" "Return an enumerate object. *iterable* must be a sequence, an :term:" "`iterator`, or some other object which supports iteration. The :meth:" @@ -1342,11 +1348,11 @@ msgstr "" "(beginnend bei *start*, standardmäßig 0) und die durch Iteration über " "*iterable* erhaltenen Werte enthält." -#: ../../library/functions.rst:581 +#: ../../builtins/functions.rst:581 msgid "Equivalent to::" msgstr "Gleichbedeutend mit::" -#: ../../library/functions.rst:583 +#: ../../builtins/functions.rst:583 msgid "" "def enumerate(iterable, start=0):\n" " n = start\n" @@ -1360,39 +1366,39 @@ msgstr "" " yield n, elem\n" " n += 1" -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:0 msgid "Parameters" msgstr "Parameter" -#: ../../library/functions.rst:593 +#: ../../builtins/functions.rst:593 msgid "A Python expression." msgstr "Ein Python Ausdruck" -#: ../../library/functions.rst:597 +#: ../../builtins/functions.rst:597 msgid "The global namespace (default: ``None``)." msgstr "Der globale Namensraum (default: ``None``)." -#: ../../library/functions.rst:601 +#: ../../builtins/functions.rst:601 msgid "The local namespace (default: ``None``)." msgstr "Der lokale Namensraum (default: ``None``)." -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:0 msgid "Returns" msgstr "Rückgaben" -#: ../../library/functions.rst:605 +#: ../../builtins/functions.rst:605 msgid "The result of the evaluated expression." msgstr "Das Ergebnis des ausgewerteten Ausdrucks." -#: ../../library/functions.rst:0 +#: ../../builtins/functions.rst:0 msgid "raises" msgstr "Meldung" -#: ../../library/functions.rst:606 +#: ../../builtins/functions.rst:606 msgid "Syntax errors are reported as exceptions." msgstr "Syntaxfehler werden als Ausnahmen gemeldet." -#: ../../library/functions.rst:610 ../../library/functions.rst:680 +#: ../../builtins/functions.rst:610 ../../builtins/functions.rst:680 msgid "" "This function executes arbitrary code. Calling it with untrusted user-" "supplied input will lead to security vulnerabilities." @@ -1400,7 +1406,7 @@ msgstr "" "Diese Funktion führt beliebigen Code aus. Der Aufruf mit nicht " "vertrauenswürdigen, benutzerdefinierten Eingaben führt zu Sicherheitslücken." -#: ../../library/functions.rst:613 +#: ../../builtins/functions.rst:613 msgid "" "The *source* argument is parsed and evaluated as a Python expression " "(technically speaking, an :ref:`expression list `) using the " @@ -1436,11 +1442,11 @@ msgstr "" "bereits im Gültigkeitsbereich referenziert werden, der :func:`eval` aufruft " "(z. B. über eine :keyword:`nonlocal`-Anweisung)." -#: ../../library/functions.rst:631 +#: ../../builtins/functions.rst:631 msgid "Example:" msgstr "Beispiel:" -#: ../../library/functions.rst:640 +#: ../../builtins/functions.rst:640 msgid "" "This function can also be used to execute arbitrary code objects (such as " "those created by :func:`compile`). In this case, pass a code object instead " @@ -1453,7 +1459,7 @@ msgstr "" "Code-Objekt mit ``'exec'`` als *mode*-Argument kompiliert wurde, ist der " "Rückgabewert von :func:`eval` ``None``." -#: ../../library/functions.rst:645 +#: ../../builtins/functions.rst:645 msgid "" "Hints: dynamic execution of statements is supported by the :func:`exec` " "function. The :func:`globals` and :func:`locals` functions return the " @@ -1465,7 +1471,7 @@ msgstr "" "liefern das aktuelle globale beziehungsweise lokale Dictionary zurück; dies " "kann nützlich sein, um sie an :func:`eval` oder :func:`exec` weiterzugeben." -#: ../../library/functions.rst:650 +#: ../../builtins/functions.rst:650 msgid "" "If the given source is a string, then leading and trailing spaces and tabs " "are stripped." @@ -1473,7 +1479,7 @@ msgstr "" "Wenn die angegebene Quelle eine Zeichenkette ist, werden führende und " "nachstehende Leerzeichen sowie Tabulatoren entfernt." -#: ../../library/functions.rst:653 +#: ../../builtins/functions.rst:653 msgid "" "See :func:`ast.literal_eval` for a function to evaluate strings with " "expressions containing only literals." @@ -1481,8 +1487,8 @@ msgstr "" "Siehe :func:`ast.literal_eval` für eine Funktion, um Zeichenketten mit " "Ausdrücken auszuwerten, die nur Literale enthalten." -#: ../../library/functions.rst:656 ../../library/functions.rst:658 -#: ../../library/functions.rst:723 ../../library/functions.rst:725 +#: ../../builtins/functions.rst:656 ../../builtins/functions.rst:658 +#: ../../builtins/functions.rst:723 ../../builtins/functions.rst:725 msgid "" "Raises an :ref:`auditing event ` ``exec`` with the code object as " "the argument. Code compilation events may also be raised." @@ -1491,13 +1497,13 @@ msgstr "" "Argument aus. Es können auch Ereignisse zur Code-Kompilierung ausgelöst " "werden." -#: ../../library/functions.rst:663 ../../library/functions.rst:745 +#: ../../builtins/functions.rst:663 ../../builtins/functions.rst:745 msgid "The *globals* and *locals* arguments can now be passed as keywords." msgstr "" "Die Argumente *globals* und *locals* können nun als Schlüsselwortargumente " "übergeben werden." -#: ../../library/functions.rst:667 ../../library/functions.rst:749 +#: ../../builtins/functions.rst:667 ../../builtins/functions.rst:749 msgid "" "The semantics of the default *locals* namespace have been adjusted as " "described for the :func:`locals` builtin." @@ -1505,11 +1511,11 @@ msgstr "" "Die Semantik des Standard-Namensraums für lokale Variablen (*locals*) wurde " "wie für die eingebaute Funktion :func:`locals` beschrieben angepasst." -#: ../../library/functions.rst:672 ../../library/functions.rst:754 +#: ../../builtins/functions.rst:672 ../../builtins/functions.rst:754 msgid "*globals* can now be a :class:`frozendict`." msgstr "*globals* kann jetzt ein :class:`frozendict` sein." -#: ../../library/functions.rst:683 +#: ../../builtins/functions.rst:683 msgid "" "This function supports dynamic execution of Python code. *source* must be " "either a string or a code object. If it is a string, the string is parsed " @@ -1533,7 +1539,7 @@ msgstr "" "nicht außerhalb von Funktionsdefinitionen verwendet werden dürfen. Der " "Rückgabewert ist ``None``." -#: ../../library/functions.rst:694 +#: ../../builtins/functions.rst:694 msgid "" "In all cases, if the optional parts are omitted, the code is executed in the " "current scope. If only *globals* is provided, it must be a dictionary (and " @@ -1553,7 +1559,7 @@ msgstr "" "sein. Beachte, dass auf Modulebene globale und lokale Variablen dasselbe " "Dictionary darstellen." -#: ../../library/functions.rst:704 +#: ../../builtins/functions.rst:704 msgid "" "When ``exec`` gets two separate objects as *globals* and *locals*, the code " "will be executed as if it were embedded in a class definition. This means " @@ -1568,7 +1574,7 @@ msgstr "" "wurden (da diese Variablen der „obersten Ebene“ in einer Klassendefinition " "als Klassenvariablen behandelt werden)." -#: ../../library/functions.rst:710 +#: ../../builtins/functions.rst:710 msgid "" "If the *globals* dictionary does not contain a value for the key " "``__builtins__``, a reference to the dictionary of the built-in module :mod:" @@ -1584,7 +1590,7 @@ msgstr "" "Sicherheitsmechanismus: Der ausgeführte Code kann weiterhin auf alle " "Builtins zugreifen." -#: ../../library/functions.rst:717 +#: ../../builtins/functions.rst:717 msgid "" "The *closure* argument specifies a closure--a tuple of cellvars. It's only " "valid when the *object* is a code object containing :term:`free (closure) " @@ -1597,7 +1603,7 @@ msgstr "" "des Tupels muss exakt der Länge des Attributs :attr:`~codeobject." "co_freevars` des Code-Objekts entsprechen." -#: ../../library/functions.rst:730 +#: ../../builtins/functions.rst:730 msgid "" "The built-in functions :func:`globals` and :func:`locals` return the current " "global and local namespace, respectively, which may be useful to pass around " @@ -1608,7 +1614,7 @@ msgstr "" "nützlich sein, um sie als zweites und drittes Argument an :func:`exec` zu " "übergeben." -#: ../../library/functions.rst:736 +#: ../../builtins/functions.rst:736 msgid "" "The default *locals* act as described for function :func:`locals` below. " "Pass an explicit *locals* dictionary if you need to see effects of the code " @@ -1619,11 +1625,11 @@ msgstr "" "Auswirkungen des Codes auf die *locals* sehen möchten, nachdem die Funktion :" "func:`exec` zurückgekehrt ist." -#: ../../library/functions.rst:740 +#: ../../builtins/functions.rst:740 msgid "Added the *closure* parameter." msgstr "Der Parameter *closure* wurde hinzugefügt." -#: ../../library/functions.rst:759 +#: ../../builtins/functions.rst:759 msgid "" "Construct an iterator from those elements of *iterable* for which *function* " "is true. *iterable* may be either a sequence, a container which supports " @@ -1636,7 +1642,7 @@ msgstr "" "``None``, so wird die Identitätsfunktion angenommen; das heißt, alle " "Elemente von *iterable*, die „falsch“ sind, werden entfernt." -#: ../../library/functions.rst:765 +#: ../../builtins/functions.rst:765 msgid "" "Note that ``filter(function, iterable)`` is equivalent to the generator " "expression ``(item for item in iterable if function(item))`` if function is " @@ -1648,7 +1654,7 @@ msgstr "" "nicht ``None`` ist, und ``(item for item in iterable if item)``, wenn " "``function`` ``None`` ist." -#: ../../library/functions.rst:770 +#: ../../builtins/functions.rst:770 msgid "" "See :func:`itertools.filterfalse` for the complementary function that " "returns elements of *iterable* for which *function* is false." @@ -1656,13 +1662,13 @@ msgstr "" "Siehe :func:`itertools.filterfalse` für die komplementäre Funktion, die " "Elemente von *iterable* zurückgibt, für die *function* falsch ist." -#: ../../library/functions.rst:781 +#: ../../builtins/functions.rst:781 msgid "Return a floating-point number constructed from a number or a string." msgstr "" "Gibt eine Gleitkommazahl zurück, die aus einer Zahl oder einer Zeichenkette " "erstellt wurde." -#: ../../library/functions.rst:785 +#: ../../builtins/functions.rst:785 msgid "" ">>> float('+1.23')\n" "1.23\n" @@ -1686,7 +1692,7 @@ msgstr "" ">>> float('-Infinity')\n" "-inf" -#: ../../library/functions.rst:798 +#: ../../builtins/functions.rst:798 msgid "" "If the argument is a string, it should contain a decimal number, optionally " "preceded by a sign, and optionally embedded in whitespace. The optional " @@ -1706,7 +1712,7 @@ msgstr "" "Leerzeichen – der Produktionsregel :token:`~float:floatvalue` in der " "folgenden Grammatik entsprechen:" -#: ../../library/functions.rst:819 +#: ../../builtins/functions.rst:819 msgid "" "Case is not significant, so, for example, \"inf\", \"Inf\", \"INFINITY\", " "and \"iNfINity\" are all acceptable spellings for positive infinity." @@ -1715,7 +1721,7 @@ msgstr "" "„Inf“, „INFINITY“ und „iNfINity“ allesamt zulässige Schreibweisen für " "positive Unendlichkeit." -#: ../../library/functions.rst:822 +#: ../../builtins/functions.rst:822 msgid "" "Otherwise, if the argument is an integer or a floating-point number, a " "floating-point number with the same value (within Python's floating-point " @@ -1728,7 +1734,7 @@ msgstr "" "außerhalb des Wertebereichs eines Python-Floats, wird ein :exc:" "`OverflowError` ausgelöst." -#: ../../library/functions.rst:827 +#: ../../builtins/functions.rst:827 msgid "" "For a general Python object ``x``, ``float(x)`` delegates to ``x." "__float__()``. If :meth:`~object.__float__` is not defined then it falls " @@ -1738,22 +1744,22 @@ msgstr "" "__float__()``. Wenn :meth:`~object.__float__` nicht definiert ist, fällt es " "zurück zu :meth:`~object.__index__`." -#: ../../library/functions.rst:831 +#: ../../builtins/functions.rst:831 msgid "" "See also :meth:`float.from_number` which only accepts a numeric argument." msgstr "" "Siehe auch :meth:`float.from_number`, das nur ein numerisches Argument " "akzeptiert." -#: ../../library/functions.rst:833 +#: ../../builtins/functions.rst:833 msgid "If no argument is given, ``0.0`` is returned." msgstr "Wenn kein Argument angegeben wird, wird ``0.0`` zurückgegeben." -#: ../../library/functions.rst:835 +#: ../../builtins/functions.rst:835 msgid "The float type is described in :ref:`typesnumeric`." msgstr "Der Typ „float“ wird in :ref:`typesnumeric` beschrieben." -#: ../../library/functions.rst:843 +#: ../../builtins/functions.rst:843 msgid "" "Falls back to :meth:`~object.__index__` if :meth:`~object.__float__` is not " "defined." @@ -1761,7 +1767,7 @@ msgstr "" "Fällt auf :meth:`~object.__index__` zurück, wenn :meth:`~object.__float__` " "nicht definiert ist." -#: ../../library/functions.rst:853 +#: ../../builtins/functions.rst:853 msgid "" "Convert a *value* to a \"formatted\" representation, as controlled by " "*format_spec*. The interpretation of *format_spec* will depend on the type " @@ -1773,7 +1779,7 @@ msgstr "" "des Arguments *Wert* ab; es gibt jedoch eine Standard-Formatierungssyntax, " "die von den meisten eingebauten Typen verwendet wird: :ref:`formatspec`." -#: ../../library/functions.rst:858 +#: ../../builtins/functions.rst:858 msgid "" "The default *format_spec* is an empty string which usually gives the same " "effect as calling :func:`str(value) `." @@ -1781,7 +1787,7 @@ msgstr "" "Die Standard *format_spec* ist eine leere Zeichenkette, was normalerweise " "denselben Effekt hat wie der Aufruf von :func:`str(value) `." -#: ../../library/functions.rst:861 +#: ../../builtins/functions.rst:861 msgid "" "A call to ``format(value, format_spec)`` is translated to ``type(value)." "__format__(value, format_spec)`` which bypasses the instance dictionary when " @@ -1797,7 +1803,7 @@ msgstr "" "mod:`object` erreicht und *format_spec* nicht leer ist, oder wenn entweder " "*format_spec* oder der Rückgabewert keine Zeichenkette ist." -#: ../../library/functions.rst:868 +#: ../../builtins/functions.rst:868 msgid "" "``object().__format__(format_spec)`` raises :exc:`TypeError` if " "*format_spec* is not an empty string." @@ -1805,7 +1811,7 @@ msgstr "" "``object().__format__(format_spec)`` löst :exc:`TypeError` aus, wenn " "*format_spec* keine leere Zeichenkette ist." -#: ../../library/functions.rst:879 +#: ../../builtins/functions.rst:879 msgid "" "Create a new frozen dictionary. The :class:`frozendict` object is a built-" "in class. See also :ref:`typesmapping` for documentation about this class." @@ -1814,7 +1820,7 @@ msgstr "" "`frozendict` ist eine eingebaute Klasse. Siehe auch :ref:`typesmapping` für " "die Dokumentation zu dieser Klasse." -#: ../../library/functions.rst:882 +#: ../../builtins/functions.rst:882 msgid "" "For other containers see the built-in :class:`dict`, :class:`list`, :class:" "`set`, and :class:`tuple` classes, as well as the :mod:`collections` module." @@ -1822,7 +1828,7 @@ msgstr "" "Für andere Container siehe die eingebauten Klassen :class:`dict`, :class:" "`list`, :class:`set` und :class:`tuple` sowie das Modul :mod:`collections`." -#: ../../library/functions.rst:892 +#: ../../builtins/functions.rst:892 msgid "" "Return a new :class:`frozenset` object, optionally with elements taken from " "*iterable*. :class:`frozenset` is a built-in class. See also :ref:`types-" @@ -1832,7 +1838,7 @@ msgstr "" "*iterable*. :class:`frozenset` ist eine eingebaute Klasse. Siehe auch :ref:" "`types-set` für die Dokumentation zu dieser Klasse." -#: ../../library/functions.rst:896 +#: ../../builtins/functions.rst:896 msgid "" "For other containers see the built-in :class:`set`, :class:`list`, :class:" "`tuple`, and :class:`dict` classes, as well as the :mod:`collections` module." @@ -1840,7 +1846,7 @@ msgstr "" "Für weitere Container siehe die eingebauten Klassen :class:`set`, :class:" "`list`, :class:`tuple` und :class:`dict` sowie das Modul :mod:`collections`." -#: ../../library/functions.rst:904 +#: ../../builtins/functions.rst:904 msgid "" "Return the value of the named attribute of *object*. *name* must be a " "string. If the string is the name of one of the object's attributes, the " @@ -1857,7 +1863,7 @@ msgstr "" "wird ein :exc:`AttributeError` ausgelöst. *name* muss kein Python-Bezeichner " "sein (siehe :func:`setattr`)." -#: ../../library/functions.rst:913 +#: ../../builtins/functions.rst:913 msgid "" "Since :ref:`private name mangling ` happens at " "compilation time, one must manually mangle a private attribute's (attributes " @@ -1869,7 +1875,7 @@ msgstr "" "führenden Unterstrichen) manuell umgewandelt werden, um es mittels :func:" "`getattr` abrufen zu können." -#: ../../library/functions.rst:921 +#: ../../builtins/functions.rst:921 msgid "" "Return the dictionary implementing the current module namespace. For code " "within functions, this is set when the function is defined and remains the " @@ -1880,7 +1886,7 @@ msgstr "" "Definition der Funktion festgelegt und bleibt unverändert, unabhängig davon, " "von wo aus die Funktion aufgerufen wird." -#: ../../library/functions.rst:928 +#: ../../builtins/functions.rst:928 msgid "" "The arguments are an object and a string. The result is ``True`` if the " "string is the name of one of the object's attributes, ``False`` if not. " @@ -1893,7 +1899,7 @@ msgstr "" "aufgerufen und geprüft wird, ob ein :exc:`AttributeError` ausgelöst wird " "oder nicht.)" -#: ../../library/functions.rst:936 +#: ../../builtins/functions.rst:936 msgid "" "Return the hash value of the object (if it has one). Hash values are " "integers. They are used to quickly compare dictionary keys during a " @@ -1906,7 +1912,7 @@ msgstr "" "haben denselben Hash-Wert (selbst wenn sie unterschiedlichen Typs sind, wie " "es bei 1 und 1.0 der Fall ist)." -#: ../../library/functions.rst:943 +#: ../../builtins/functions.rst:943 msgid "" "For objects with custom :meth:`~object.__hash__` methods, note that :func:" "`hash` truncates the return value based on the bit width of the host machine." @@ -1915,7 +1921,7 @@ msgstr "" "Methoden, dass :func:`hash` den Rückgabewert basierend auf der Bitbreite des " "Host-Rechners abschneidet." -#: ../../library/functions.rst:950 +#: ../../builtins/functions.rst:950 msgid "" "Invoke the built-in help system. (This function is intended for interactive " "use.) If no argument is given, the interactive help system starts on the " @@ -1933,7 +1939,7 @@ msgstr "" "ausgegeben. Wenn das Argument ein anderes Objekt ist, wird eine Hilfeseite " "zu diesem Objekt generiert." -#: ../../library/functions.rst:957 +#: ../../builtins/functions.rst:957 msgid "" "Note that if a slash(/) appears in the parameter list of a function when " "invoking :func:`help`, it means that the parameters prior to the slash are " @@ -1946,14 +1952,14 @@ msgstr "" "findest du unter :ref:`dem FAQ-Eintrag zu reinen Positionsparametern `." -#: ../../library/functions.rst:962 +#: ../../builtins/functions.rst:962 msgid "" "This function is added to the built-in namespace by the :mod:`site` module." msgstr "" "Diese Funktion wird vom Modul :mod:`site` dem eingebauten Namensraum " "hinzugefügt." -#: ../../library/functions.rst:964 +#: ../../builtins/functions.rst:964 msgid "" "Changes to :mod:`pydoc` and :mod:`inspect` mean that the reported signatures " "for callables are now more comprehensive and consistent." @@ -1962,7 +1968,7 @@ msgstr "" "aufrufbare Objekte (Callables) gemeldeten Signaturen nun umfassender und " "konsistenter sind." -#: ../../library/functions.rst:971 +#: ../../builtins/functions.rst:971 msgid "" "Convert an integer number to a lowercase hexadecimal string prefixed with " "\"0x\". If *integer* is not a Python :class:`int` object, it has to define " @@ -1973,7 +1979,7 @@ msgstr "" "`int` ist, muss es eine :meth:`~object.__index__`-Methode definieren, die " "eine Ganzzahl zurückgibt. Einige Beispiele:" -#: ../../library/functions.rst:980 +#: ../../builtins/functions.rst:980 msgid "" "If you want to convert an integer number to an uppercase or lower " "hexadecimal string with prefix or not, you can use either of the following " @@ -1983,7 +1989,7 @@ msgstr "" "Kleinbuchstaben umwandeln möchten – wahlweise mit oder ohne Präfix –, können " "Sie eine der folgenden Methoden verwenden:" -#: ../../library/functions.rst:992 +#: ../../builtins/functions.rst:992 msgid "" "See also :func:`int` for converting a hexadecimal string to an integer using " "a base of 16." @@ -1991,7 +1997,7 @@ msgstr "" "Siehe auch :func:`int` für die Umwandlung einer Hexadezimalzeichenkette in " "eine Ganzzahl unter Verwendung der Basis 16." -#: ../../library/functions.rst:997 +#: ../../builtins/functions.rst:997 msgid "" "To obtain a hexadecimal string representation for a float, use the :meth:" "`float.hex` method." @@ -1999,7 +2005,7 @@ msgstr "" "Um eine hexadezimale String-Darstellung für einen Float-Wert zu erhalten, " "verwende die Methode :meth:`float.hex`." -#: ../../library/functions.rst:1003 +#: ../../builtins/functions.rst:1003 msgid "" "Return the \"identity\" of an object. This is an integer which is " "guaranteed to be unique and constant for this object during its lifetime. " @@ -2011,11 +2017,11 @@ msgstr "" "bleibt. Zwei Objekte, deren Lebensdauern sich nicht überschneiden, können " "denselben :func:`id`-Wert haben." -#: ../../library/functions.rst:1008 +#: ../../builtins/functions.rst:1008 msgid "This is the address of the object in memory." msgstr "Dies ist die Adresse des Objekts im Speicher." -#: ../../library/functions.rst:1010 +#: ../../builtins/functions.rst:1010 msgid "" "Raises an :ref:`auditing event ` ``builtins.id`` with argument " "``id``." @@ -2023,7 +2029,7 @@ msgstr "" "Löst ein :ref:`Audit-Ereignis ` ``builtins.id`` mit dem Argument " "``id`` aus." -#: ../../library/functions.rst:1016 +#: ../../builtins/functions.rst:1016 msgid "" "If the *prompt* argument is present, it is written to standard output " "without a trailing newline. The function then reads a line from input, " @@ -2037,7 +2043,7 @@ msgstr "" "zurück. Beim Erreichen des Dateiendes (EOF) wird :exc:`EOFError` ausgelöst. " "Beispiel::" -#: ../../library/functions.rst:1021 +#: ../../builtins/functions.rst:1021 msgid "" ">>> s = input('--> ')\n" "--> Monty Python's Flying Circus\n" @@ -2049,7 +2055,7 @@ msgstr "" ">>> s\n" "\"Monty Python's Flying Circus\"" -#: ../../library/functions.rst:1026 +#: ../../builtins/functions.rst:1026 msgid "" "If the :mod:`readline` module was loaded, then :func:`input` will use it to " "provide elaborate line editing and history features." @@ -2058,7 +2064,7 @@ msgstr "" "umfangreiche Funktionen zur Zeilenbearbeitung und Historienverwaltung " "bereitzustellen." -#: ../../library/functions.rst:1029 ../../library/functions.rst:1031 +#: ../../builtins/functions.rst:1029 ../../builtins/functions.rst:1031 msgid "" "Raises an :ref:`auditing event ` ``builtins.input`` with argument " "``prompt`` before reading input" @@ -2066,7 +2072,7 @@ msgstr "" "Löst ein :ref:`Audit-Ereignis ` ``builtins.input`` mit dem " "Argument ``prompt`` aus, bevor die Eingabe gelesen wird" -#: ../../library/functions.rst:1034 ../../library/functions.rst:1036 +#: ../../builtins/functions.rst:1034 ../../builtins/functions.rst:1036 msgid "" "Raises an :ref:`auditing event ` ``builtins.input/result`` with " "the result after successfully reading input." @@ -2074,7 +2080,7 @@ msgstr "" "Löst ein :ref:`Audit-Ereignis ` ``builtins.input/result`` mit dem " "Ergebnis nach erfolgreichem Einlesen der Eingabe aus." -#: ../../library/functions.rst:1043 +#: ../../builtins/functions.rst:1043 msgid "" "Return an integer object constructed from a number or a string, or return " "``0`` if no arguments are given." @@ -2082,7 +2088,7 @@ msgstr "" "Gibt ein Integer-Objekt zurück, das aus einer Zahl oder einer Zeichenkette " "erstellt wurde, oder gibt ``0`` zurück, wenn keine Argumente angegeben sind." -#: ../../library/functions.rst:1048 +#: ../../builtins/functions.rst:1048 msgid "" ">>> int(123.45)\n" "123\n" @@ -2110,7 +2116,7 @@ msgstr "" ">>> int('01110011', base=2)\n" "115" -#: ../../library/functions.rst:1063 +#: ../../builtins/functions.rst:1063 msgid "" "If the argument defines :meth:`~object.__int__`, ``int(x)`` returns ``x." "__int__()``. If the argument defines :meth:`~object.__index__`, it returns " @@ -2121,7 +2127,7 @@ msgstr "" "gibt es ``x.__index__()`` zurück. Bei Gleitkommazahlen erfolgt dabei eine " "Rundung in Richtung Null." -#: ../../library/functions.rst:1068 +#: ../../builtins/functions.rst:1068 msgid "" "If the argument is not a number or if *base* is given, then it must be a " "string, :class:`bytes`, or :class:`bytearray` instance representing an " @@ -2136,7 +2142,7 @@ msgstr "" "dazwischen), sie kann führende Nullen haben, von Whitespace umgeben sein und " "einzelne Unterstriche zwischen den Ziffern eingestreut haben." -#: ../../library/functions.rst:1074 +#: ../../builtins/functions.rst:1074 msgid "" "A base-n integer string contains digits, each representing a value from 0 to " "n-1. The values 0--9 can be represented by any Unicode decimal digit. The " @@ -2163,11 +2169,11 @@ msgstr "" "führenden Nullen zulässig: ``int('010', 0)`` ist ungültig, während " "``int('010')`` und ``int('010', 8)`` zulässig sind." -#: ../../library/functions.rst:1085 +#: ../../builtins/functions.rst:1085 msgid "The integer type is described in :ref:`typesnumeric`." msgstr "Der Ganzzahltyp wird in :ref:`typesnumeric` beschrieben." -#: ../../library/functions.rst:1087 +#: ../../builtins/functions.rst:1087 msgid "" "If *base* is not an instance of :class:`int` and the *base* object has a :" "meth:`base.__index__ ` method, that method is called to " @@ -2180,11 +2186,11 @@ msgstr "" "Versionen wurde :meth:`base.__int__ ` anstelle von :meth:" "`base.__index__ ` verwendet." -#: ../../library/functions.rst:1097 +#: ../../builtins/functions.rst:1097 msgid "The first parameter is now positional-only." msgstr "Der erste Parameter ist nun rein positional." -#: ../../library/functions.rst:1100 +#: ../../builtins/functions.rst:1100 msgid "" "Falls back to :meth:`~object.__index__` if :meth:`~object.__int__` is not " "defined." @@ -2192,7 +2198,7 @@ msgstr "" "Greift auf :meth:`~object.__index__` zurück, wenn :meth:`~object.__int__` " "nicht definiert ist." -#: ../../library/functions.rst:1103 +#: ../../builtins/functions.rst:1103 msgid "" ":class:`int` string inputs and string representations can be limited to help " "avoid denial of service attacks. A :exc:`ValueError` is raised when the " @@ -2209,13 +2215,13 @@ msgstr "" "würde. Siehe die Dokumentation zur :ref:`Längenbegrenzung bei der Umwandlung " "von Ganzzahlen in Zeichenketten `." -#: ../../library/functions.rst:1111 +#: ../../builtins/functions.rst:1111 msgid "" ":func:`int` no longer delegates to the :meth:`~object.__trunc__` method." msgstr "" ":func:`int` delegiert nicht mehr an die Methode :meth:`~object.__trunc__`." -#: ../../library/functions.rst:1116 +#: ../../builtins/functions.rst:1116 msgid "" "Return ``True`` if the *object* argument is an instance of the *classinfo* " "argument, or of a (direct, indirect, or :term:`virtual `) of *classinfo*. A class is considered a subclass of " @@ -2260,7 +2266,7 @@ msgstr "" "Unterklasse eines beliebigen Eintrags in *classinfo* ist. In jedem anderen " "Fall wird eine Ausnahme vom Typ :exc:`TypeError` ausgelöst." -#: ../../library/functions.rst:1148 +#: ../../builtins/functions.rst:1148 msgid "" "Return an :term:`iterator` object. The first argument is interpreted very " "differently depending on the presence of the second argument. Without a " @@ -2289,11 +2295,11 @@ msgstr "" "Rückgabewert *sentinel*, so wird :exc:`StopIteration` ausgelöst, andernfalls " "wird der Wert zurückgegeben." -#: ../../library/functions.rst:1162 +#: ../../builtins/functions.rst:1162 msgid "See also :ref:`typeiter`." msgstr "Siehe auch :ref:`typeiter`." -#: ../../library/functions.rst:1164 +#: ../../builtins/functions.rst:1164 msgid "" "One useful application of the second form of :func:`iter` is to build a " "block-reader. For example, reading fixed-width blocks from a binary database " @@ -2303,7 +2309,7 @@ msgstr "" "Erstellung eines Block-Readers. Zum Beispiel das Lesen von Blöcken fester " "Größe aus einer binären Datenbankdatei bis zum Erreichen des Dateiende::" -#: ../../library/functions.rst:1168 +#: ../../builtins/functions.rst:1168 msgid "" "from functools import partial\n" "with open('mydata.db', 'rb') as f:\n" @@ -2315,7 +2321,7 @@ msgstr "" " for block in iter(partial(f.read, 64), b''):\n" " process_block(block)" -#: ../../library/functions.rst:1176 +#: ../../builtins/functions.rst:1176 msgid "" "Return the length (the number of items) of an object. The argument may be a " "sequence (such as a string, bytes, tuple, list, or range) or a collection " @@ -2326,7 +2332,7 @@ msgstr "" "ein Range-Objekt) oder eine Collection (wie etwa ein Dictionary, ein Set " "oder ein Frozen Set) sein." -#: ../../library/functions.rst:1182 +#: ../../builtins/functions.rst:1182 msgid "" "``len`` raises :exc:`OverflowError` on lengths larger than :data:`sys." "maxsize`, such as :class:`range(2 ** 100) `." @@ -2334,7 +2340,7 @@ msgstr "" "``len`` löst bei Längen größer als :data:`sys.maxsize` eine :exc:" "`OverflowError`-Ausnahme aus.Z. B. :class:`range(2 ** 100) `." -#: ../../library/functions.rst:1190 +#: ../../builtins/functions.rst:1190 msgid "" "Rather than being a function, :class:`list` is actually a mutable sequence " "type, as documented in :ref:`typesseq-list` and :ref:`typesseq`." @@ -2343,7 +2349,7 @@ msgstr "" "veränderbarer Sequenztyp, wie in :ref:`typesseq-list` und :ref:`typesseq` " "dokumentiert." -#: ../../library/functions.rst:1196 +#: ../../builtins/functions.rst:1196 msgid "" "Return a mapping object representing the current local symbol table, with " "variable names as the keys, and their currently bound references as the " @@ -2353,7 +2359,7 @@ msgstr "" "repräsentiert, wobei die Variablennamen als Schlüssel und die aktuell daran " "gebundenen Referenzen als Werte dienen." -#: ../../library/functions.rst:1200 +#: ../../builtins/functions.rst:1200 msgid "" "At module scope, as well as when using :func:`exec` or :func:`eval` with a " "single namespace, this function returns the same namespace as :func:" @@ -2363,7 +2369,7 @@ msgstr "" "mit einem einzigen Namensraum gibt diese Funktion denselben Namensraum " "zurück wie :func:`globals`." -#: ../../library/functions.rst:1204 +#: ../../builtins/functions.rst:1204 msgid "" "At class scope, it returns the namespace that will be passed to the " "metaclass constructor." @@ -2371,7 +2377,7 @@ msgstr "" "Auf Klassenebene gibt es den Namensraum zurück, der an den Metaklassen-" "Konstruktor übergeben wird." -#: ../../library/functions.rst:1207 +#: ../../builtins/functions.rst:1207 msgid "" "When using ``exec()`` or ``eval()`` with separate local and global " "arguments, it returns the local namespace passed in to the function call." @@ -2380,7 +2386,7 @@ msgstr "" "globalen Argumenten wird der lokale Namensraum zurückgegeben, der an den " "Funktionsaufruf übergeben wurde." -#: ../../library/functions.rst:1210 +#: ../../builtins/functions.rst:1210 msgid "" "In all of the above cases, each call to ``locals()`` in a given frame of " "execution will return the *same* mapping object. Changes made through the " @@ -2397,7 +2403,7 @@ msgstr "" "Löschen lokaler Variablen unmittelbar auf den Inhalt des zurückgegebenen " "Mapping-Objekts aus." -#: ../../library/functions.rst:1217 +#: ../../builtins/functions.rst:1217 msgid "" "In an :term:`optimized scope` (including functions, generators, and " "coroutines), each call to ``locals()`` instead returns a fresh dictionary " @@ -2419,7 +2425,7 @@ msgstr "" "Variablen und nonlocal-Zellreferenzen *keine* Auswirkungen auf den Inhalt " "zuvor zurückgegebener Dictionaries." -#: ../../library/functions.rst:1226 +#: ../../builtins/functions.rst:1226 msgid "" "Calling ``locals()`` as part of a comprehension in a function, generator, or " "coroutine is equivalent to calling it in the containing scope, except that " @@ -2435,7 +2441,7 @@ msgstr "" "Gültigkeitsbereichen verhält es sich so, als würde die Listen-Abstraktion " "(comprehension) als verschachtelte Funktion ausgeführt." -#: ../../library/functions.rst:1232 +#: ../../builtins/functions.rst:1232 msgid "" "Calling ``locals()`` as part of a generator expression is equivalent to " "calling it in a nested generator function." @@ -2444,7 +2450,7 @@ msgstr "" "gleichbedeutend mit dem Aufruf innerhalb einer verschachtelten " "Generatorfunktion." -#: ../../library/functions.rst:1235 +#: ../../builtins/functions.rst:1235 msgid "" "The behaviour of ``locals()`` in a comprehension has been updated as " "described in :pep:`709`." @@ -2452,7 +2458,7 @@ msgstr "" "Das Verhalten von ``locals()`` in einer Listen-Abstraktion (comprehension) " "wurde wie in :pep:`709` beschrieben aktualisiert." -#: ../../library/functions.rst:1239 +#: ../../builtins/functions.rst:1239 msgid "" "As part of :pep:`667`, the semantics of mutating the mapping objects " "returned from this function are now defined. The behavior in :term:" @@ -2466,16 +2472,17 @@ msgstr "" "obigen Beschreibung. Abgesehen von dieser Definition bleibt das Verhalten in " "anderen Gültigkeitsbereichen gegenüber früheren Versionen unverändert." -#: ../../library/functions.rst:1249 +#: ../../builtins/functions.rst:1249 +#, fuzzy msgid "" "Return an iterator that applies *function* to every item of *iterable*, " "yielding the results. If additional *iterables* arguments are passed, " "*function* must take that many arguments and is applied to the items from " "all iterables in parallel. With multiple iterables, the iterator stops when " -"the shortest iterable is exhausted. If *strict* is ``True`` and one of the " -"iterables is exhausted before the others, a :exc:`ValueError` is raised. For " -"cases where the function inputs are already arranged into argument tuples, " -"see :func:`itertools.starmap`." +"the shortest iterable is :term:`exhausted`. If *strict* is ``True`` and one " +"of the iterables is exhausted before the others, a :exc:`ValueError` is " +"raised. For cases where the function inputs are already arranged into " +"argument tuples, see :func:`itertools.starmap`." msgstr "" "Gibt einen Iterator zurück, der *function* auf jedes Element von *iterable* " "anwendet und die Ergebnisse liefert. Werden weitere *iterable*-Argumente " @@ -2487,11 +2494,11 @@ msgstr "" "Eingabewerte für die Funktion bereits als Argument-Tupel vorliegen, siehe :" "func:`itertools.starmap`." -#: ../../library/functions.rst:1258 +#: ../../builtins/functions.rst:1258 msgid "Added the *strict* parameter." msgstr "Den Parameter *strict* hinzugefügt." -#: ../../library/functions.rst:1266 +#: ../../builtins/functions.rst:1266 msgid "" "Return the largest item in an iterable or the largest of two or more " "arguments." @@ -2499,7 +2506,7 @@ msgstr "" "Gibt das größte Element eines iterierbaren Objekts oder das größte von zwei " "oder mehr Argumenten zurück." -#: ../../library/functions.rst:1269 +#: ../../builtins/functions.rst:1269 msgid "" "If one positional argument is provided, it should be an :term:`iterable`. " "The largest item in the iterable is returned. If two or more positional " @@ -2510,7 +2517,7 @@ msgstr "" "Werden zwei oder mehr Positionsargumente übergeben, so wird das größte der " "Positionsargumente zurückgegeben." -#: ../../library/functions.rst:1274 ../../library/functions.rst:1312 +#: ../../builtins/functions.rst:1274 ../../builtins/functions.rst:1312 msgid "" "There are two optional keyword-only arguments. The *key* argument specifies " "a one-argument ordering function like that used for :meth:`list.sort`. The " @@ -2525,7 +2532,7 @@ msgstr "" "übergebene Iterable leer ist. Ist das Iterable leer und wird kein *default*-" "Wert angegeben, so wird ein :exc:`ValueError` ausgelöst." -#: ../../library/functions.rst:1280 +#: ../../builtins/functions.rst:1280 msgid "" "If multiple items are maximal, the function returns the first one " "encountered. This is consistent with other sort-stability preserving tools " @@ -2537,17 +2544,17 @@ msgstr "" "Sortierstabilität bewahren, wie etwa ``sorted(iterable, key=keyfunc, " "reverse=True)[0]`` und ``heapq.nlargest(1, iterable, key=keyfunc)``." -#: ../../library/functions.rst:1285 ../../library/functions.rst:1323 +#: ../../builtins/functions.rst:1285 ../../builtins/functions.rst:1323 msgid "Added the *default* keyword-only parameter." msgstr "" "Der *default*-Parameter (nur als Keyword-Argument verwendbar) wurde " "hinzugefügt." -#: ../../library/functions.rst:1288 ../../library/functions.rst:1326 +#: ../../builtins/functions.rst:1288 ../../builtins/functions.rst:1326 msgid "The *key* can be ``None``." msgstr "Der *Schlüssel* kann ``None`` sein." -#: ../../library/functions.rst:1296 +#: ../../builtins/functions.rst:1296 msgid "" "Return a \"memory view\" object created from the given argument. See :ref:" "`typememoryview` for more information." @@ -2555,7 +2562,7 @@ msgstr "" "Gibt ein aus dem angegebenen Argument erstelltes „memory-View“-Objekt " "zurück. Siehe :ref:`typememoryview` für weitere Informationen." -#: ../../library/functions.rst:1304 +#: ../../builtins/functions.rst:1304 msgid "" "Return the smallest item in an iterable or the smallest of two or more " "arguments." @@ -2563,7 +2570,7 @@ msgstr "" "Gibt das kleinste Element eines iterierbaren Objekts oder das kleinste von " "zwei oder mehr Argumenten zurück." -#: ../../library/functions.rst:1307 +#: ../../builtins/functions.rst:1307 msgid "" "If one positional argument is provided, it should be an :term:`iterable`. " "The smallest item in the iterable is returned. If two or more positional " @@ -2574,7 +2581,7 @@ msgstr "" "zurückgegeben. Werden zwei oder mehr Positionsargumente übergeben, so wird " "das kleinste der Positionsargumente zurückgegeben." -#: ../../library/functions.rst:1318 +#: ../../builtins/functions.rst:1318 msgid "" "If multiple items are minimal, the function returns the first one " "encountered. This is consistent with other sort-stability preserving tools " @@ -2586,18 +2593,19 @@ msgstr "" "die die Sortierstabilität wahren, wie etwa ``sorted(iterable, key=keyfunc)" "[0]`` und ``heapq.nsmallest(1, iterable, key=keyfunc)``." -#: ../../library/functions.rst:1333 +#: ../../builtins/functions.rst:1333 +#, fuzzy msgid "" "Retrieve the next item from the :term:`iterator` by calling its :meth:" "`~iterator.__next__` method. If *default* is given, it is returned if the " -"iterator is exhausted, otherwise :exc:`StopIteration` is raised." +"iterator is :term:`exhausted`, otherwise :exc:`StopIteration` is raised." msgstr "" "Rufe das nächste Element aus dem :term:`Iterator ` ab, indem " "dessen :meth:`~iterator.__next__`-Methode aufgerufen wird. Wenn *default* " "angegeben ist, wird dieser Wert zurückgegeben, falls der Iterator erschöpft " "ist; andernfalls wird :exc:`StopIteration` ausgelöst." -#: ../../library/functions.rst:1340 +#: ../../builtins/functions.rst:1340 msgid "" "This is the ultimate base class of all other classes. It has methods that " "are common to all instances of Python classes. When the constructor is " @@ -2609,7 +2617,7 @@ msgstr "" "des Konstruktors wird ein neues, eigenschaftsloses Objekt zurückgegeben. Der " "Konstruktor akzeptiert keine Argumente." -#: ../../library/functions.rst:1347 +#: ../../builtins/functions.rst:1347 msgid "" ":class:`object` instances do *not* have :attr:`~object.__dict__` attributes, " "so you can't assign arbitrary attributes to an instance of :class:`object`." @@ -2618,7 +2626,7 @@ msgstr "" "Attribute; daher kannst du einer Instanz von :class:`object` keine " "beliebigen Attribute zuweisen." -#: ../../library/functions.rst:1354 +#: ../../builtins/functions.rst:1354 msgid "" "Convert an integer number to an octal string prefixed with \"0o\". The " "result is a valid Python expression. If *integer* is not a Python :class:" @@ -2630,7 +2638,7 @@ msgstr "" "`int` Objekt ist, muss es eine :meth:`~object.__index__`-Methode definieren, " "die eine Ganzzahl zurückgibt. Zum Beispiel:" -#: ../../library/functions.rst:1364 +#: ../../builtins/functions.rst:1364 msgid "" "If you want to convert an integer number to an octal string either with the " "prefix \"0o\" or not, you can use either of the following ways." @@ -2639,7 +2647,7 @@ msgstr "" "Oktalzeichenkette umwandeln möchtest, kannst du eine der folgenden " "Möglichkeiten nutzen." -#: ../../library/functions.rst:1381 +#: ../../builtins/functions.rst:1381 msgid "" "Open *file* and return a corresponding :term:`file object`. If the file " "cannot be opened, an :exc:`OSError` is raised. See :ref:`tut-files` for more " @@ -2650,7 +2658,7 @@ msgstr "" "ausgelöst. Weitere Beispiele für die Verwendung dieser Funktion findest du " "unter :ref:`tut-files`." -#: ../../library/functions.rst:1385 +#: ../../builtins/functions.rst:1385 msgid "" "*file* is a :term:`path-like object` giving the pathname (absolute or " "relative to the current working directory) of the file to be opened or an " @@ -2665,7 +2673,8 @@ msgstr "" "angegeben, so wird dieser geschlossen, wenn das zurückgegebene E/A-Objekt " "geschlossen wird, es sei denn, *closefd* ist auf ``False`` gesetzt.)" -#: ../../library/functions.rst:1391 +#: ../../builtins/functions.rst:1391 +#, fuzzy msgid "" "*mode* is an optional string that specifies the mode in which the file is " "opened. It defaults to ``'r'`` which means open for reading in text mode. " @@ -2673,10 +2682,10 @@ msgid "" "already exists), ``'x'`` for exclusive creation, and ``'a'`` for appending " "(which on *some* Unix systems, means that *all* writes append to the end of " "the file regardless of the current seek position). In text mode, if " -"*encoding* is not specified the encoding used is platform-dependent: :func:" -"`locale.getencoding` is called to get the current locale encoding. (For " -"reading and writing raw bytes use binary mode and leave *encoding* " -"unspecified.) The available modes are:" +"*encoding* is not specified, UTF-8 is used by default; if :ref:`Python UTF-8 " +"Mode ` is disabled, :func:`locale.getencoding` is called to get " +"the current locale encoding. (For reading and writing raw bytes use binary " +"mode and leave *encoding* unspecified.) The available modes are:" msgstr "" "*mode* ist eine optionale Zeichenkette, die den Modus angibt, in dem die " "Datei geöffnet wird. Der Standardwert ist ``'r'``, was das Öffnen zum Lesen " @@ -2691,75 +2700,75 @@ msgstr "" "ermitteln. (Verwende für das Lesen und Schreiben von Rohbytes den Binärmodus " "und lass *encoding* weg.) Die verfügbaren Modi sind:" -#: ../../library/functions.rst:1408 +#: ../../builtins/functions.rst:1409 msgid "Character" msgstr "Zeichen" -#: ../../library/functions.rst:1408 +#: ../../builtins/functions.rst:1409 msgid "Meaning" msgstr "` is disabled, the default is platform-" +"dependent (whatever :func:`locale.getencoding` returns). Any :term:`text " +"encoding` supported by Python can be used, and ``encoding=\"locale\"`` " +"specifies the current locale encoding explicitly. See the :mod:`codecs` " +"module for the list of supported encodings." msgstr "" "*encoding* ist der Name der Zeichenkodierung, die zum Dekodieren oder " "Kodieren der Datei verwendet wird. Dies sollte nur im Textmodus verwendet " @@ -2859,7 +2872,7 @@ msgstr "" "unterstützte :term:`Textkodierung ` verwendet werden. Eine " "Liste der unterstützten Kodierungen findest du im Modul :mod:`codecs`." -#: ../../library/functions.rst:1462 +#: ../../builtins/functions.rst:1465 msgid "" "*errors* is an optional string that specifies how encoding and decoding " "errors are to be handled—this cannot be used in binary mode. A variety of " @@ -2874,7 +2887,7 @@ msgstr "" "func:`codecs.register_error` registriert wurde. Die Standardnamen findest du " "unter :ref:`error-handlers`." -#: ../../library/functions.rst:1474 +#: ../../builtins/functions.rst:1477 msgid "" "*newline* determines how to parse newline characters from the stream. It can " "be ``None``, ``''``, ``'\\n'``, ``'\\r'``, and ``'\\r\\n'``. It works as " @@ -2884,7 +2897,7 @@ msgstr "" "werden. Es kann die Werte ``None``, ``''``, ``'\\n'``, ``'\\r'`` oder " "``'\\r\\n'`` annehmen. Die Funktionsweise ist wie folgt:" -#: ../../library/functions.rst:1478 +#: ../../builtins/functions.rst:1481 msgid "" "When reading input from the stream, if *newline* is ``None``, universal " "newlines mode is enabled. Lines in the input can end in ``'\\n'``, " @@ -2904,7 +2917,7 @@ msgstr "" "Werten werden Eingabezeilen ausschließlich durch die angegebene Zeichenkette " "begrenzt, und das Zeilenende wird unverändert an den Aufrufer zurückgegeben." -#: ../../library/functions.rst:1486 +#: ../../builtins/functions.rst:1489 msgid "" "When writing output to the stream, if *newline* is ``None``, any ``'\\n'`` " "characters written are translated to the system default line separator, :" @@ -2919,7 +2932,7 @@ msgstr "" "der anderen zulässigen Werte an, werden alle geschriebenen ``'\\n'``-Zeichen " "in die angegebene Zeichenkette umgewandelt." -#: ../../library/functions.rst:1492 +#: ../../builtins/functions.rst:1495 msgid "" "If *closefd* is ``False`` and a file descriptor rather than a filename was " "given, the underlying file descriptor will be kept open when the file is " @@ -2932,7 +2945,7 @@ msgstr "" "*closefd* auf ``True`` (dem Standardwert) stehen; andernfalls wird ein " "Fehler ausgelöst." -#: ../../library/functions.rst:1497 +#: ../../builtins/functions.rst:1500 msgid "" "A custom opener can be used by passing a callable as *opener*. The " "underlying file descriptor for the file object is then obtained by calling " @@ -2947,11 +2960,11 @@ msgstr "" "(die Übergabe von :mod:`os.open` als *opener* führt zu einer Funktionalität, " "die der Übergabe von ``None`` ähnelt)." -#: ../../library/functions.rst:1503 +#: ../../builtins/functions.rst:1506 msgid "The newly created file is :ref:`non-inheritable `." msgstr "Die neu erstellte Datei ist :ref:`nicht vererbbar `." -#: ../../library/functions.rst:1505 +#: ../../builtins/functions.rst:1508 msgid "" "The following example uses the :ref:`dir_fd ` parameter of the :func:" "`os.open` function to open a file relative to a given directory::" @@ -2960,7 +2973,7 @@ msgstr "" "Funktion :func:`os.open`, um eine Datei relativ zu einem bestimmten " "Verzeichnis zu öffnen::" -#: ../../library/functions.rst:1508 +#: ../../builtins/functions.rst:1511 msgid "" ">>> import os\n" ">>> dir_fd = os.open('somedir', os.O_RDONLY)\n" @@ -2982,7 +2995,7 @@ msgstr "" "...\n" ">>> os.close(dir_fd) # don't leak a file descriptor" -#: ../../library/functions.rst:1518 +#: ../../builtins/functions.rst:1521 msgid "" "The type of :term:`file object` returned by the :func:`open` function " "depends on the mode. When :func:`open` is used to open a file in a text " @@ -3009,7 +3022,7 @@ msgstr "" "deaktiviert, wird der Rohdatenstrom (Raw Stream) zurückgegeben – eine " "Unterklasse von :class:`io.RawIOBase`, nämlich :class:`io.FileIO`." -#: ../../library/functions.rst:1539 +#: ../../builtins/functions.rst:1542 msgid "" "See also the file handling modules, such as :mod:`fileinput`, :mod:`io` " "(where :func:`open` is declared), :mod:`os`, :mod:`os.path`, :mod:" @@ -3019,7 +3032,7 @@ msgstr "" "(wo :func:`open` definiert ist), :mod:`os`, :mod:`os.path`, :mod:`tempfile` " "und :mod:`shutil`." -#: ../../library/functions.rst:1543 +#: ../../builtins/functions.rst:1546 msgid "" "Raises an :ref:`auditing event ` ``open`` with arguments ``path``, " "``mode``, ``flags``." @@ -3027,7 +3040,7 @@ msgstr "" "Löst ein :ref:`Audit-Ereignis ` ``open`` mit den Argumenten " "``path``, ``mode`` und ``flags`` aus." -#: ../../library/functions.rst:1545 +#: ../../builtins/functions.rst:1548 msgid "" "The ``mode`` and ``flags`` arguments may have been modified or inferred from " "the original call." @@ -3035,21 +3048,21 @@ msgstr "" "Die Argumente „mode“ und „flags“ wurden möglicherweise modifiziert oder aus " "dem ursprünglichen Aufruf abgeleitet." -#: ../../library/functions.rst:1550 +#: ../../builtins/functions.rst:1553 msgid "The *opener* parameter was added." msgstr "Der Parameter *opener* wurde hinzugefügt." -#: ../../library/functions.rst:1551 +#: ../../builtins/functions.rst:1554 msgid "The ``'x'`` mode was added." msgstr "Der Modus ``'x'`` wurde hinzugefügt." -#: ../../library/functions.rst:1552 +#: ../../builtins/functions.rst:1555 msgid ":exc:`IOError` used to be raised, it is now an alias of :exc:`OSError`." msgstr "" "Früher wurde :exc:`IOError` ausgelöst; mittlerweile ist es ein Alias ​​für :" "exc:`OSError`." -#: ../../library/functions.rst:1553 +#: ../../builtins/functions.rst:1556 msgid "" ":exc:`FileExistsError` is now raised if the file opened in exclusive " "creation mode (``'x'``) already exists." @@ -3057,11 +3070,11 @@ msgstr "" "Ein :exc:`FileExistsError` wird nun ausgelöst, wenn die im exklusiven " "Erstellungsmodus (``'x'``) geöffnete Datei bereits existiert." -#: ../../library/functions.rst:1558 +#: ../../builtins/functions.rst:1561 msgid "The file is now non-inheritable." msgstr "Die Datei ist nun nicht mehr vererbbar." -#: ../../library/functions.rst:1562 +#: ../../builtins/functions.rst:1565 msgid "" "If the system call is interrupted and the signal handler does not raise an " "exception, the function now retries the system call instead of raising an :" @@ -3072,17 +3085,17 @@ msgstr "" "eine :exc:`InterruptedError`-Ausnahme auszulösen (siehe :pep:`475` für die " "Begründung)." -#: ../../library/functions.rst:1565 +#: ../../builtins/functions.rst:1568 msgid "The ``'namereplace'`` error handler was added." msgstr "Der Fehlerbehandlungsmechanismus „namereplace“ wurde hinzugefügt." -#: ../../library/functions.rst:1569 +#: ../../builtins/functions.rst:1572 msgid "Support added to accept objects implementing :class:`os.PathLike`." msgstr "" "Unterstützung für Objekte hinzugefügt, die :class:`os.PathLike` " "implementieren." -#: ../../library/functions.rst:1570 +#: ../../builtins/functions.rst:1573 msgid "" "On Windows, opening a console buffer may return a subclass of :class:`io." "RawIOBase` other than :class:`io.FileIO`." @@ -3091,15 +3104,21 @@ msgstr "" "class:`io.RawIOBase` zurückgeben, bei der es sich nicht um :class:`io." "FileIO` handelt." -#: ../../library/functions.rst:1573 +#: ../../builtins/functions.rst:1576 msgid "The ``'U'`` mode has been removed." msgstr "Der Modus „U“ wurde entfernt." -#: ../../library/functions.rst:1578 +#: ../../builtins/functions.rst:1579 +msgid "" +"UTF-8 is now the default encoding, instead of the platform-dependent locale " +"encoding (:pep:`686`)." +msgstr "" + +#: ../../builtins/functions.rst:1585 msgid "Return the ordinal value of a character." msgstr "Gibt den Ordinalwert eines Zeichens zurück." -#: ../../library/functions.rst:1580 +#: ../../builtins/functions.rst:1587 msgid "" "If the argument is a one-character string, return the Unicode code point of " "that character. For example, ``ord('a')`` returns the integer ``97`` and " @@ -3111,7 +3130,7 @@ msgstr "" "die Ganzzahl ``97`` und ``ord('€')`` (Euro-Zeichen) liefert ``8364``. Dies " "ist die Umkehrfunktion zu :func:`chr`." -#: ../../library/functions.rst:1585 +#: ../../builtins/functions.rst:1592 msgid "" "If the argument is a :class:`bytes` or :class:`bytearray` object of length " "1, return its single byte value. For example, ``ord(b'a')`` returns the " @@ -3121,7 +3140,7 @@ msgstr "" "Länge 1 ist, wird dessen einzelner Bytewert zurückgegeben. Beispielsweise " "gibt ``ord(b'a')`` die Ganzzahl ``97`` zurück." -#: ../../library/functions.rst:1592 +#: ../../builtins/functions.rst:1599 msgid "" "Return *base* to the power *exp*; if *mod* is present, return *base* to the " "power *exp*, modulo *mod* (computed more efficiently than ``pow(base, exp) % " @@ -3133,7 +3152,7 @@ msgstr "" "mod``). Die Form mit zwei Argumenten ``pow(base, exp)`` entspricht der " "Verwendung des Potenzoperators: ``base**exp``." -#: ../../library/functions.rst:1597 +#: ../../builtins/functions.rst:1604 msgid "" "When arguments are builtin numeric types with mixed operand types, the " "coercion rules for binary arithmetic operators apply. For :class:`int` " @@ -3161,7 +3180,7 @@ msgstr "" "`float`) und der Exponent ganzzahlig, so wird ein float-Ergebnis geliefert. " "So ergibt ``pow(-9, 2.0)`` beispielsweise ``81.0``." -#: ../../library/functions.rst:1609 +#: ../../builtins/functions.rst:1616 msgid "" "For :class:`int` operands *base* and *exp*, if *mod* is present, *mod* must " "also be of integer type and *mod* must be nonzero. If *mod* is present and " @@ -3175,13 +3194,13 @@ msgstr "" "sein. In diesem Fall wird ``pow(inv_base, -exp, mod)`` zurückgegeben, wobei " "*inv_base* das Inverse von *base* modulo *mod* ist." -#: ../../library/functions.rst:1615 +#: ../../builtins/functions.rst:1622 msgid "Here's an example of computing an inverse for ``38`` modulo ``97``::" msgstr "" "Hier ist ein Beispiel für die Berechnung des Inversen von ``38`` modulo " "``97``::" -#: ../../library/functions.rst:1617 +#: ../../builtins/functions.rst:1624 msgid "" ">>> pow(38, -1, mod=97)\n" "23\n" @@ -3193,7 +3212,7 @@ msgstr "" ">>> 23 * 38 % 97 == 1\n" "True" -#: ../../library/functions.rst:1622 +#: ../../builtins/functions.rst:1629 msgid "" "For :class:`int` operands, the three-argument form of ``pow`` now allows the " "second argument to be negative, permitting computation of modular inverses." @@ -3202,14 +3221,14 @@ msgstr "" "nun ein negatives zweites Argument, was die Berechnung modularer Inverser " "ermöglicht." -#: ../../library/functions.rst:1627 +#: ../../builtins/functions.rst:1634 msgid "" "Allow keyword arguments. Formerly, only positional arguments were supported." msgstr "" "Erlaube Schlüsselwortargumente. Zuvor wurden nur Positionsargumente " "unterstützt." -#: ../../library/functions.rst:1634 +#: ../../builtins/functions.rst:1641 msgid "" "Print *objects* to the text stream *file*, separated by *sep* and followed " "by *end*. *sep*, *end*, *file*, and *flush*, if present, must be given as " @@ -3219,7 +3238,7 @@ msgstr "" "und gefolgt von *end*. *sep*, *end*, *file* und *flush* müssen, sofern " "angegeben, als Schlüsselwortargumente übergeben werden." -#: ../../library/functions.rst:1638 +#: ../../builtins/functions.rst:1645 msgid "" "All non-keyword arguments are converted to strings like :func:`str` does and " "written to the stream, separated by *sep* and followed by *end*. Both *sep* " @@ -3234,7 +3253,7 @@ msgstr "" "bedeutet, dass die Standardwerte verwendet werden. Werden keine *objects* " "angegeben, schreibt :func:`print` lediglich *end*." -#: ../../library/functions.rst:1644 +#: ../../builtins/functions.rst:1651 msgid "" "The *file* argument must be an object with a ``write(string)`` method; if it " "is not present or ``None``, :data:`sys.stdout` will be used. Since printed " @@ -3247,7 +3266,7 @@ msgstr "" "werden, kann :func:`print` nicht mit Dateiobjekten im Binärmodus verwendet " "werden. Verwende für diese stattdessen ``file.write(...)``." -#: ../../library/functions.rst:1649 +#: ../../builtins/functions.rst:1656 msgid "" "Output buffering is usually determined by *file*. However, if *flush* is " "true, the stream is forcibly flushed." @@ -3255,15 +3274,15 @@ msgstr "" "Die Ausgabepufferung wird normalerweise durch *file* bestimmt. Wenn *flush* " "jedoch auf „true“ gesetzt ist, wird der Stream zwangsweise geleert." -#: ../../library/functions.rst:1653 +#: ../../builtins/functions.rst:1660 msgid "Added the *flush* keyword argument." msgstr "Das Keyword-Argument *flush* wurde hinzugefügt." -#: ../../library/functions.rst:1659 +#: ../../builtins/functions.rst:1666 msgid "Return a property attribute." msgstr "Gibt ein Eigenschaftsattribut zurück." -#: ../../library/functions.rst:1661 +#: ../../builtins/functions.rst:1668 msgid "" "*fget* is a function for getting an attribute value. *fset* is a function " "for setting an attribute value. *fdel* is a function for deleting an " @@ -3274,13 +3293,13 @@ msgstr "" "Löschen eines Attributwerts. Und *doc* erstellt einen Docstring für das " "Attribut." -#: ../../library/functions.rst:1665 +#: ../../builtins/functions.rst:1672 msgid "A typical use is to define a managed attribute ``x``::" msgstr "" "Eine typische Verwendung ist die Definition eines verwalteten Attributs " "``x``::" -#: ../../library/functions.rst:1667 +#: ../../builtins/functions.rst:1674 msgid "" "class C:\n" " def __init__(self):\n" @@ -3312,7 +3331,7 @@ msgstr "" "\n" " x = property(getx, setx, delx, \"Ich bin die 'x' Eigenschaft.\")" -#: ../../library/functions.rst:1682 +#: ../../builtins/functions.rst:1689 msgid "" "If *c* is an instance of *C*, ``c.x`` will invoke the getter, ``c.x = " "value`` will invoke the setter, and ``del c.x`` the deleter." @@ -3320,7 +3339,7 @@ msgstr "" "Wenn *c* eine Instanz von *C* ist, ruft ``c.x`` den Empfänger (getter) auf, " "``c.x = value`` den Einsetzer (setter) und ``del c.x`` den Löscher (deleter)." -#: ../../library/functions.rst:1685 +#: ../../builtins/functions.rst:1692 msgid "" "If given, *doc* will be the docstring of the property attribute. Otherwise, " "the property will copy *fget*'s docstring (if it exists). This makes it " @@ -3332,7 +3351,7 @@ msgstr "" "vorhanden). Dies ermöglicht es, mit :deco:`property` als :term:`Decorator " "` auf einfache Weise Nur-Lese-Properties zu erstellen::" -#: ../../library/functions.rst:1689 +#: ../../builtins/functions.rst:1696 msgid "" "class Parrot:\n" " def __init__(self):\n" @@ -3352,7 +3371,7 @@ msgstr "" " \"\"\"Hole die aktuelle Spannung.\"\"\"\n" " return self._voltage" -#: ../../library/functions.rst:1698 +#: ../../builtins/functions.rst:1705 msgid "" "The ``@property`` decorator turns the :meth:`!voltage` method into a " "\"getter\" for a read-only attribute with the same name, and it sets the " @@ -3362,7 +3381,7 @@ msgstr "" "„Empfänger“ für ein gleichnamiges Attribut mit Lesezugriff um und setzt den " "Docstring für *voltage* auf „Hole die aktuelle Spannung.“" -#: ../../library/functions.rst:1706 +#: ../../builtins/functions.rst:1713 msgid "" "A property object has ``getter``, ``setter``, and ``deleter`` methods usable " "as decorators that create a copy of the property with the corresponding " @@ -3375,7 +3394,7 @@ msgstr "" "dekorierte Funktion gesetzt ist. Dies lässt sich am besten anhand eines " "Beispiels erläutern:" -#: ../../library/functions.rst:1711 +#: ../../builtins/functions.rst:1718 msgid "" "class C:\n" " def __init__(self):\n" @@ -3411,7 +3430,7 @@ msgstr "" " def x(self):\n" " del self._x" -#: ../../library/functions.rst:1730 +#: ../../builtins/functions.rst:1737 msgid "" "This code is exactly equivalent to the first example. Be sure to give the " "additional functions the same name as the original property (``x`` in this " @@ -3421,7 +3440,7 @@ msgstr "" "den zusätzlichen Funktionen denselben Namen zu geben wie der ursprünglichen " "Eigenschaft (in diesem Fall ``x``)." -#: ../../library/functions.rst:1734 +#: ../../builtins/functions.rst:1741 msgid "" "The returned property object also has the attributes ``fget``, ``fset``, and " "``fdel`` corresponding to the constructor arguments." @@ -3429,11 +3448,11 @@ msgstr "" "Das zurückgegebene Property-Objekt verfügt zudem über die Attribute " "``fget``, ``fset`` und ``fdel``, die den Konstruktorargumenten entsprechen." -#: ../../library/functions.rst:1737 +#: ../../builtins/functions.rst:1744 msgid "The docstrings of property objects are now writeable." msgstr "Die Docstrings von Property-Objekten sind jetzt beschreibbar." -#: ../../library/functions.rst:1742 +#: ../../builtins/functions.rst:1749 msgid "" "Attribute holding the name of the property. The name of the property can be " "changed at runtime." @@ -3441,7 +3460,7 @@ msgstr "" "Attribut, das den Namen der Eigenschaft enthält. Der Name der Eigenschaft " "kann zur Laufzeit geändert werden." -#: ../../library/functions.rst:1753 +#: ../../builtins/functions.rst:1760 msgid "" "Rather than being a function, :class:`range` is actually an immutable " "sequence type, as documented in :ref:`typesseq-range` and :ref:`typesseq`." @@ -3450,7 +3469,7 @@ msgstr "" "unveränderlicher Sequenztyp, wie in :ref:`typesseq-range` und :ref:" "`typesseq` dokumentiert." -#: ../../library/functions.rst:1759 +#: ../../builtins/functions.rst:1766 msgid "" "Return a string containing a printable representation of an object. For " "many types, this function makes an attempt to return a string that would " @@ -3473,13 +3492,13 @@ msgstr "" "definiert. Ist :func:`sys.displayhook` nicht verfügbar, löst diese Funktion " "einen :exc:`RuntimeError` aus." -#: ../../library/functions.rst:1770 +#: ../../builtins/functions.rst:1777 msgid "This class has a custom representation that can be evaluated::" msgstr "" "Diese Klasse verfügt über eine benutzerdefinierte Darstellung, die " "ausgewertet werden kann::" -#: ../../library/functions.rst:1772 +#: ../../builtins/functions.rst:1779 msgid "" "class Person:\n" " def __init__(self, name, age):\n" @@ -3497,7 +3516,7 @@ msgstr "" " def __repr__(self):\n" " return f\"Person({self.name!r}, {self.age!r})\"" -#: ../../library/functions.rst:1783 +#: ../../builtins/functions.rst:1790 msgid "" "Return a reverse :term:`iterator`. The argument must be an object which has " "a :meth:`~object.__reversed__` method or supports the sequence protocol " @@ -3510,7 +3529,7 @@ msgstr "" "und die :meth:`~object.__getitem__`-Methode mit ganzzahligen Argumenten " "beginnend bei ``0``)." -#: ../../library/functions.rst:1791 +#: ../../builtins/functions.rst:1798 msgid "" "Return *number* rounded to *ndigits* precision after the decimal point. If " "*ndigits* is omitted or is ``None``, it returns the nearest integer to its " @@ -3520,7 +3539,7 @@ msgstr "" "weggelassen wird oder ``None`` ist, wird die dem Eingabewert nächstgelegene " "Ganzzahl zurückgegeben." -#: ../../library/functions.rst:1795 +#: ../../builtins/functions.rst:1802 msgid "" "For the built-in types supporting :func:`round`, values are rounded to the " "closest multiple of 10 to the power minus *ndigits*; if two multiples are " @@ -3539,7 +3558,7 @@ msgstr "" "eine Ganzzahl, wenn *ndigits* weggelassen wird oder ``None`` ist. " "Andernfalls hat der Rückgabewert denselben Typ wie *number*." -#: ../../library/functions.rst:1804 +#: ../../builtins/functions.rst:1811 msgid "" "For a general Python object ``number``, ``round`` delegates to ``number." "__round__``." @@ -3547,7 +3566,7 @@ msgstr "" "Bei einem allgemeinen Python-Objekt ``number`` delegiert ``round`` an " "``number.__round__``." -#: ../../library/functions.rst:1809 +#: ../../builtins/functions.rst:1816 msgid "" "The behavior of :func:`round` for floats can be surprising: for example, " "``round(2.675, 2)`` gives ``2.67`` instead of the expected ``2.68``. This is " @@ -3561,7 +3580,7 @@ msgstr "" "meisten Dezimalbrüche nicht exakt als Gleitkommazahl dargestellt werden " "können. Weitere Informationen findest du unter :ref:`tut-fp-issues`." -#: ../../library/functions.rst:1820 +#: ../../builtins/functions.rst:1827 msgid "" "Return a new :class:`set` object, optionally with elements taken from " "*iterable*. :class:`set` is a built-in class. See also :ref:`types-set` " @@ -3571,7 +3590,7 @@ msgstr "" "*iterable*. :class:`set` ist eine eingebaute Klasse. Siehe auch :ref:`types-" "set` für die Dokumentation zu dieser Klasse." -#: ../../library/functions.rst:1824 +#: ../../builtins/functions.rst:1831 msgid "" "For other containers see the built-in :class:`frozenset`, :class:`list`, :" "class:`tuple`, and :class:`dict` classes, as well as the :mod:`collections` " @@ -3581,7 +3600,7 @@ msgstr "" "class:`list`, :class:`tuple` und :class:`dict` sowie das Modul :mod:" "`collections`." -#: ../../library/functions.rst:1831 +#: ../../builtins/functions.rst:1838 msgid "" "This is the counterpart of :func:`getattr`. The arguments are an object, a " "string, and an arbitrary value. The string may name an existing attribute " @@ -3596,7 +3615,7 @@ msgstr "" "beispielsweise ``setattr(x, 'foobar', 123)`` der Anweisung ``x.foobar = " "123``." -#: ../../library/functions.rst:1837 +#: ../../builtins/functions.rst:1844 msgid "" "*name* need not be a Python identifier as defined in :ref:`identifiers` " "unless the object chooses to enforce that, for example in a custom :meth:" @@ -3611,7 +3630,7 @@ msgstr "" "nicht über die Punktnotation angesprochen werden, ist jedoch über :func:" "`getattr` usw. zugänglich." -#: ../../library/functions.rst:1845 +#: ../../builtins/functions.rst:1852 msgid "" "Since :ref:`private name mangling ` happens at " "compilation time, one must manually mangle a private attribute's (attributes " @@ -3622,7 +3641,7 @@ msgstr "" "führenden Unterstrichen) manuell umgewandelt werden, um es mittels :func:" "`setattr` zu setzen." -#: ../../library/functions.rst:1853 +#: ../../builtins/functions.rst:1860 msgid "" "Return a new unique sentinel object. *name* must be a :class:`str`, and is " "used by default as the returned object's representation::" @@ -3631,7 +3650,7 @@ msgstr "" "`str` sein und wird standardmäßig als Repräsentation des zurückgegebenen " "Objekts verwendet::" -#: ../../library/functions.rst:1856 +#: ../../builtins/functions.rst:1863 msgid "" ">>> MISSING = sentinel(\"MISSING\")\n" ">>> MISSING\n" @@ -3641,7 +3660,7 @@ msgstr "" ">>> MISSING\n" "MISSING" -#: ../../library/functions.rst:1860 +#: ../../builtins/functions.rst:1867 msgid "" "The optional *repr* argument can be used to specify a different " "representation::" @@ -3649,7 +3668,7 @@ msgstr "" "Das optionale Argument *repr* kann verwendet werden, um eine andere " "Darstellung anzugeben::" -#: ../../library/functions.rst:1862 +#: ../../builtins/functions.rst:1869 msgid "" ">>> MISSING = sentinel(\"MISSING\", repr=\"\")\n" ">>> MISSING\n" @@ -3659,7 +3678,7 @@ msgstr "" ">>> MISSING\n" "" -#: ../../library/functions.rst:1866 +#: ../../builtins/functions.rst:1873 msgid "" "Sentinel objects are truthy and compare equal only to themselves. They are " "intended to be compared with the :keyword:`is` operator." @@ -3668,17 +3687,17 @@ msgstr "" "sind nur mit sich selbst gleich. Sie sind dafür vorgesehen, mit dem " "Operator :keyword:`is` verglichen zu werden." -#: ../../library/functions.rst:1869 +#: ../../builtins/functions.rst:1876 msgid "``sentinel`` does not support subclassing." msgstr "``sentinel`` unterstützt kein Subclassing." -#: ../../library/functions.rst:1871 +#: ../../builtins/functions.rst:1878 msgid "Shallow and deep copies of a sentinel object return the object itself." msgstr "" "Flache und tiefe Kopien eines Sentinel-Objekts geben das Objekt selbst " "zurück." -#: ../../library/functions.rst:1873 +#: ../../builtins/functions.rst:1880 msgid "" "Sentinels are conventionally assigned to a variable with a matching name. " "Sentinels defined in this way can be used in :term:`type hints `::" @@ -3687,7 +3706,7 @@ msgstr "" "zugewiesen. Auf diese Weise definierte Sentinels können in :term:`Type Hints " "` verwendet werden::" -#: ../../library/functions.rst:1876 +#: ../../builtins/functions.rst:1883 msgid "" "MISSING = sentinel(\"MISSING\")\n" "\n" @@ -3699,7 +3718,7 @@ msgstr "" "def next_value(default: int | MISSING = MISSING):\n" " ..." -#: ../../library/functions.rst:1881 +#: ../../builtins/functions.rst:1888 msgid "" "Sentinel objects support the :ref:`| ` operator for use in type " "expressions." @@ -3707,7 +3726,7 @@ msgstr "" "Sentinel-Objekte unterstützen den Operator :ref:`| ` zur Verwendung " "in Typ-Ausdrücken." -#: ../../library/functions.rst:1883 +#: ../../builtins/functions.rst:1890 msgid "" ":mod:`Pickling ` is supported for sentinel objects that are placed " "in the global scope of a module under a name matching the sentinel's name, " @@ -3725,7 +3744,7 @@ msgstr "" "Gültigkeitsbereich definiert sind, sind nicht picklebar. Die Identität des " "Sentinels bleibt nach dem Pickling erhalten::" -#: ../../library/functions.rst:1890 +#: ../../builtins/functions.rst:1897 msgid "" "import pickle\n" "\n" @@ -3749,15 +3768,15 @@ msgstr "" "\n" "assert pickle.loads(pickle.dumps(Cls.PICKLABLE)) is Cls.PICKLABLE" -#: ../../library/functions.rst:1901 +#: ../../builtins/functions.rst:1908 msgid "Sentinel objects have the following attributes:" msgstr "Sentinel-Objekte haben die folgenden Attribute:" -#: ../../library/functions.rst:1905 +#: ../../builtins/functions.rst:1912 msgid "The sentinel's name." msgstr "Der Name des Sentinels." -#: ../../library/functions.rst:1909 +#: ../../builtins/functions.rst:1916 msgid "" "The name of the module where the sentinel was created. This attribute is " "writable." @@ -3765,7 +3784,7 @@ msgstr "" "Der Name des Moduls, in dem das Sentinel erstellt wurde. Dieses Attribut ist " "beschreibbar." -#: ../../library/functions.rst:1917 +#: ../../builtins/functions.rst:1924 msgid "" "Return a :term:`slice` object representing the set of indices specified by " "``range(start, stop, step)``. The *start* and *step* arguments default to " @@ -3775,7 +3794,7 @@ msgstr "" "step)`` festgelegte Menge an Indizes repräsentiert. Die Argumente *start* " "und *step* haben standardmäßig den Wert ``None``." -#: ../../library/functions.rst:1921 +#: ../../builtins/functions.rst:1928 msgid "" "Slice objects are also generated when :ref:`slicing syntax ` is " "used. For example: ``a[start:stop:step]`` or ``a[start:stop, i]``." @@ -3784,7 +3803,7 @@ msgstr "" "verwendet wird. Zum Beispiel: ``a[start:stop:step]`` oder ``a[start:stop, " "i]``." -#: ../../library/functions.rst:1924 +#: ../../builtins/functions.rst:1931 msgid "" "See :func:`itertools.islice` for an alternate version that returns an :term:" "`iterator`." @@ -3792,7 +3811,7 @@ msgstr "" "Siehe :func:`itertools.islice` für eine alternative Version, die einen :term:" "`Iterator ` zurückgibt." -#: ../../library/functions.rst:1931 +#: ../../builtins/functions.rst:1938 msgid "" "These read-only attributes are set to the argument values (or their " "default). They have no other explicit functionality; however, they are used " @@ -3802,7 +3821,7 @@ msgstr "" "Standardwerte) gesetzt. Sie haben keine weitere explizite Funktionalität, " "werden jedoch von NumPy und anderen Drittanbieter-Paketen verwendet." -#: ../../library/functions.rst:1935 +#: ../../builtins/functions.rst:1942 msgid "" "Slice objects are now :term:`hashable` (provided :attr:`~slice.start`, :attr:" "`~slice.stop`, and :attr:`~slice.step` are hashable)." @@ -3810,18 +3829,18 @@ msgstr "" "Slice-Objekte sind jetzt :term:`hashbar ` (sofern :attr:`~slice." "start`, :attr:`~slice.stop` und :attr:`~slice.step` hashbar sind)." -#: ../../library/functions.rst:1941 +#: ../../builtins/functions.rst:1948 msgid "Return a new sorted list from the items in *iterable*." msgstr "Gibt eine neue sortierte Liste der Elemente aus *iterable* zurück." -#: ../../library/functions.rst:1943 +#: ../../builtins/functions.rst:1950 msgid "" "Has two optional arguments which must be specified as keyword arguments." msgstr "" "Verfügt über zwei optionale Argumente, die als Schlüsselwortargumente " "angegeben werden müssen." -#: ../../library/functions.rst:1945 +#: ../../builtins/functions.rst:1952 msgid "" "*key* specifies a function of one argument that is used to extract a " "comparison key from each element in *iterable* (for example, ``key=str." @@ -3832,7 +3851,7 @@ msgstr "" "Beispiel ``key=str.lower``). Der Standardwert ist ``None`` (die Elemente " "werden direkt verglichen)." -#: ../../library/functions.rst:1949 +#: ../../builtins/functions.rst:1956 msgid "" "*reverse* is a boolean value. If set to ``True``, then the list elements " "are sorted as if each comparison were reversed." @@ -3840,7 +3859,7 @@ msgstr "" "*reverse* ist ein boolescher Wert. Wenn er auf ``True`` gesetzt ist, werden " "die Listenelemente so sortiert, als ob jeder Vergleich umgekehrt würde." -#: ../../library/functions.rst:1952 +#: ../../builtins/functions.rst:1959 msgid "" "Use :func:`functools.cmp_to_key` to convert an old-style *cmp* function to a " "*key* function." @@ -3848,7 +3867,7 @@ msgstr "" "Verwende :func:`functools.cmp_to_key`, um eine veraltete *cmp*-Funktion in " "eine *key*-Funktion umzuwandeln." -#: ../../library/functions.rst:1955 +#: ../../builtins/functions.rst:1962 msgid "" "The built-in :func:`sorted` function is guaranteed to be stable. A sort is " "stable if it guarantees not to change the relative order of elements that " @@ -3861,7 +3880,7 @@ msgstr "" "in mehreren Durchläufen (zum Beispiel Sortierung nach Abteilung und " "anschließend nach Gehaltsgruppe)." -#: ../../library/functions.rst:1960 +#: ../../builtins/functions.rst:1967 msgid "" "The sort algorithm uses only ``<`` comparisons between items. While " "defining an :meth:`~object.__lt__` method will suffice for sorting, :PEP:`8` " @@ -3882,18 +3901,18 @@ msgstr "" "Verwirrung bei gemischten Typvergleichen zu vermeiden, die die gespiegelte " "Methode :meth:`~object.__gt__` aufrufen können." -#: ../../library/functions.rst:1969 +#: ../../builtins/functions.rst:1976 msgid "" "For sorting examples and a brief sorting tutorial, see :ref:`sortinghowto`." msgstr "" "Beispiele und eine kurze Anleitung zum Sortieren findest du unter :ref:" "`sortinghowto`." -#: ../../library/functions.rst:1973 +#: ../../builtins/functions.rst:1980 msgid "Transform a method into a static method." msgstr "Wandelt eine Methode in eine statische Methode um." -#: ../../library/functions.rst:1975 +#: ../../builtins/functions.rst:1982 msgid "" "A static method does not receive an implicit first argument. To declare a " "static method, use this idiom::" @@ -3901,7 +3920,7 @@ msgstr "" "Eine statische Methode erhält kein implizites erstes Argument. Um eine " "statische Methode zu deklarieren, verwende dieses Idiom::" -#: ../../library/functions.rst:1978 +#: ../../builtins/functions.rst:1985 msgid "" "class C:\n" " @staticmethod\n" @@ -3911,7 +3930,7 @@ msgstr "" " @staticmethod\n" " def f(arg1, arg2, argN): ..." -#: ../../library/functions.rst:1982 +#: ../../builtins/functions.rst:1989 msgid "" "The ``@staticmethod`` form is a function :term:`decorator` -- see :ref:" "`function` for details." @@ -3919,7 +3938,7 @@ msgstr "" "Die Form ``@staticmethod`` ist ein Funktions-:term:`Decorator ` – " "siehe :ref:`function` für Einzelheiten." -#: ../../library/functions.rst:1985 +#: ../../builtins/functions.rst:1992 msgid "" "A static method can be called either on the class (such as ``C.f()``) or on " "an instance (such as ``C().f()``). Moreover, the static method :term:" @@ -3931,7 +3950,7 @@ msgstr "" "der :term:`Deskriptor ` der statischen Methode selbst aufrufbar, " "sodass er in der Klassendefinition verwendet werden kann (z. B. ``f()``)." -#: ../../library/functions.rst:1990 +#: ../../builtins/functions.rst:1997 msgid "" "Static methods in Python are similar to those found in Java or C++. Also, " "see :deco:`classmethod` for a variant that is useful for creating alternate " @@ -3941,7 +3960,7 @@ msgstr "" "deco:`classmethod`, eine Variante, die sich zum Erstellen alternativer " "Klassenkonstruktoren eignet." -#: ../../library/functions.rst:1994 +#: ../../builtins/functions.rst:2001 msgid "" "Like all decorators, it is also possible to call ``staticmethod`` as a " "regular function and do something with its result. This is needed in some " @@ -3956,7 +3975,7 @@ msgstr "" "Instanzmethode vermeiden möchte. Für solche Fälle verwendet man folgendes " "Idiom::" -#: ../../library/functions.rst:2000 +#: ../../builtins/functions.rst:2007 msgid "" "def regular_function():\n" " ...\n" @@ -3970,12 +3989,12 @@ msgstr "" "class C:\n" " method = staticmethod(regular_function)" -#: ../../library/functions.rst:2006 +#: ../../builtins/functions.rst:2013 msgid "For more information on static methods, see :ref:`types`." msgstr "" "Weitere Informationen zu statischen Methoden findest du unter :ref:`types`." -#: ../../library/functions.rst:2008 +#: ../../builtins/functions.rst:2015 msgid "" "Static methods now inherit the method attributes (:attr:`~function." "__module__`, :attr:`~function.__name__`, :attr:`~function.__qualname__`, :" @@ -3988,14 +4007,14 @@ msgstr "" "über ein neues ``__wrapped__``-Attribut und sind nun wie reguläre Funktionen " "aufrufbar." -#: ../../library/functions.rst:2026 +#: ../../builtins/functions.rst:2033 msgid "" "Return a :class:`str` version of *object*. See :func:`str` for details." msgstr "" "Gibt eine :class:`str`-Version von *object* zurück. Siehe :func:`str` für " "Details." -#: ../../library/functions.rst:2028 +#: ../../builtins/functions.rst:2035 msgid "" "``str`` is the built-in string :term:`class`. For general information about " "strings, see :ref:`textseq`." @@ -4003,7 +4022,7 @@ msgstr "" "``str`` ist die integrierte Zeichenketten-:term:`Klasse `. Allgemeine " "Informationen zu Zeichenketten findest du unter :ref:`textseq`." -#: ../../library/functions.rst:2034 +#: ../../builtins/functions.rst:2041 msgid "" "Sums *start* and the items of an *iterable* from left to right and returns " "the total. The *iterable*'s items are normally numbers, and the start value " @@ -4013,7 +4032,7 @@ msgstr "" "auf und gibt die Gesamtsumme zurück. Die Elemente des *Iterables* sind " "normalerweise Zahlen, und der Startwert darf kein String sein." -#: ../../library/functions.rst:2038 +#: ../../builtins/functions.rst:2045 msgid "" "For some use cases, there are good alternatives to :func:`sum`. The " "preferred, fast way to concatenate a sequence of strings is by calling ``''." @@ -4028,11 +4047,11 @@ msgstr "" "Verketten einer Reihe von Iterables empfiehlt sich die Verwendung von :func:" "`itertools.chain`." -#: ../../library/functions.rst:2044 +#: ../../builtins/functions.rst:2051 msgid "The *start* parameter can be specified as a keyword argument." msgstr "Der Parameter *start* kann als Schlüsselwortargument angegeben werden." -#: ../../library/functions.rst:2047 +#: ../../builtins/functions.rst:2054 msgid "" "Summation of floats switched to an algorithm that gives higher accuracy and " "better commutativity on most builds." @@ -4041,7 +4060,7 @@ msgstr "" "der bei den meisten Builds eine höhere Genauigkeit und eine bessere " "Kommutativität bietet." -#: ../../library/functions.rst:2050 +#: ../../builtins/functions.rst:2057 msgid "" "Added specialization for summation of complexes, using same algorithm as for " "summation of floats." @@ -4049,7 +4068,7 @@ msgstr "" "Spezialisierung für die Summation komplexer Zahlen hinzugefügt; dabei wird " "derselbe Algorithmus wie für die Summation von Gleitkommazahlen verwendet." -#: ../../library/functions.rst:2058 +#: ../../builtins/functions.rst:2065 msgid "" "Return a proxy object that delegates method calls to a parent or sibling " "class of *type*. This is useful for accessing inherited methods that have " @@ -4059,7 +4078,7 @@ msgstr "" "Geschwisterklasse von *type* delegiert. Dies ist nützlich für den Zugriff " "auf geerbte Methoden, die in einer Klasse überschrieben wurden." -#: ../../library/functions.rst:2062 +#: ../../builtins/functions.rst:2069 msgid "" "The *object_or_type* determines the :term:`method resolution order` to be " "searched. The search starts from the class right after the *type*." @@ -4068,7 +4087,7 @@ msgstr "" "` (method resolution order), die durchsucht werden " "soll. Die Suche beginnt bei der Klasse, die direkt auf den *type* folgt." -#: ../../library/functions.rst:2066 +#: ../../builtins/functions.rst:2073 msgid "" "For example, if :attr:`~type.__mro__` of *object_or_type* is ``D -> B -> C -" "> A -> object`` and the value of *type* is ``B``, then :func:`super` " @@ -4078,7 +4097,7 @@ msgstr "" "> A -> object`` lautet und der Wert von *type* ``B`` ist, dann durchsucht :" "func:`super` ``C -> A -> object``." -#: ../../library/functions.rst:2070 +#: ../../builtins/functions.rst:2077 msgid "" "The :attr:`~type.__mro__` attribute of the class corresponding to " "*object_or_type* lists the method resolution search order used by both :func:" @@ -4091,7 +4110,7 @@ msgstr "" "Attribut ist dynamisch und kann sich ändern, wann immer die " "Vererbungshierarchie aktualisiert wird." -#: ../../library/functions.rst:2075 +#: ../../builtins/functions.rst:2082 msgid "" "If the second argument is omitted, the super object returned is unbound. If " "the second argument is an object, ``isinstance(obj, type)`` must be true. " @@ -4103,7 +4122,7 @@ msgstr "" "type)`` wahr sein. Ist das zweite Argument ein Typ, muss ``issubclass(type2, " "type)`` wahr sein (dies ist nützlich für Klassenmethoden)." -#: ../../library/functions.rst:2080 +#: ../../builtins/functions.rst:2087 msgid "" "When called directly within an ordinary method of a class, both arguments " "may be omitted (\"zero-argument :func:`!super`\"). In this case, *type* will " @@ -4121,7 +4140,7 @@ msgstr "" "implizit verschachtelte Funktionen erzeugen – nicht wie erwartet " "funktioniert.)" -#: ../../library/functions.rst:2087 +#: ../../builtins/functions.rst:2094 msgid "" "There are two typical use cases for *super*. In a class hierarchy with " "single inheritance, *super* can be used to refer to parent classes without " @@ -4134,7 +4153,7 @@ msgstr "" "Code wartungsfreundlicher wird. Diese Verwendung entspricht weitgehend der " "Verwendung von *super* in anderen Programmiersprachen." -#: ../../library/functions.rst:2092 +#: ../../builtins/functions.rst:2099 msgid "" "The second use case is to support cooperative multiple inheritance in a " "dynamic execution environment. This use case is unique to Python and is not " @@ -4158,13 +4177,13 @@ msgstr "" "Geschwisterklassen einbeziehen kann, die vor der Laufzeit noch unbekannt " "sind)." -#: ../../library/functions.rst:2102 +#: ../../builtins/functions.rst:2109 msgid "For both use cases, a typical superclass call looks like this::" msgstr "" "Für beide Anwendungsfälle sieht ein typischer Aufruf der Superklasse " "folgendermaßen aus:" -#: ../../library/functions.rst:2104 +#: ../../builtins/functions.rst:2111 msgid "" "class C(B):\n" " def method(self, arg):\n" @@ -4176,7 +4195,7 @@ msgstr "" " super().method(arg) # Dies bewirkt dasselbe wie:\n" " # super(C, self).method(arg)" -#: ../../library/functions.rst:2109 +#: ../../builtins/functions.rst:2116 msgid "" "In addition to method lookups, :func:`super` also works for attribute " "lookups. One possible use case for this is calling :term:`descriptors " @@ -4186,7 +4205,7 @@ msgstr "" "Attributsuche. Ein möglicher Anwendungsfall hierfür ist der Aufruf von :term:" "`Deskriptoren ` in einer Eltern- oder Geschwisterklasse." -#: ../../library/functions.rst:2113 +#: ../../builtins/functions.rst:2120 msgid "" "Note that :func:`super` is implemented as part of the binding process for " "explicit dotted attribute lookups such as ``super().__getitem__(name)``. It " @@ -4203,7 +4222,7 @@ msgstr "" "Folglich ist :func:`super` für implizite Zugriffe mittels Anweisungen oder " "Operatoren, wie beispielsweise ``super()[name]``, nicht definiert." -#: ../../library/functions.rst:2121 +#: ../../builtins/functions.rst:2128 msgid "" "Also note that, aside from the zero argument form, :func:`super` is not " "limited to use inside methods. The two argument form specifies the " @@ -4220,7 +4239,7 @@ msgstr "" "erforderlichen Details ergänzt, um die gerade definierte Klasse korrekt zu " "ermitteln und bei gewöhnlichen Methoden auf die aktuelle Instanz zuzugreifen." -#: ../../library/functions.rst:2128 +#: ../../builtins/functions.rst:2135 msgid "" "For practical suggestions on how to design cooperative classes using :func:" "`super`, see `guide to using super() `_." -#: ../../library/functions.rst:2132 +#: ../../builtins/functions.rst:2139 msgid "" ":class:`super` objects are now :mod:`pickleable ` and :mod:" "`copyable `." @@ -4238,7 +4257,7 @@ msgstr "" ":class:`super`-Objekte sind jetzt :mod:`picklebar ` und :mod:" "`kopierbar `." -#: ../../library/functions.rst:2141 +#: ../../builtins/functions.rst:2148 msgid "" "Rather than being a function, :class:`tuple` is actually an immutable " "sequence type, as documented in :ref:`typesseq-tuple` and :ref:`typesseq`." @@ -4247,7 +4266,7 @@ msgstr "" "unveränderlicher Sequenztyp, wie in :ref:`typesseq-tuple` und :ref:" "`typesseq` dokumentiert." -#: ../../library/functions.rst:2150 +#: ../../builtins/functions.rst:2157 msgid "" "With one argument, return the type of an *object*. The return value is a " "type object and generally the same object as returned by :attr:`object." @@ -4257,7 +4276,7 @@ msgstr "" "ein Typobjekt und im Allgemeinen dasselbe Objekt, das von :attr:`object." "__class__` zurückgegeben wird." -#: ../../library/functions.rst:2154 +#: ../../builtins/functions.rst:2161 msgid "" "The :func:`isinstance` built-in function is recommended for testing the type " "of an object, because it takes subclasses into account." @@ -4265,7 +4284,7 @@ msgstr "" "Die eingebaute Funktion :func:`isinstance` wird empfohlen, um den Typ eines " "Objekts zu überprüfen, da sie Unterklassen berücksichtigt." -#: ../../library/functions.rst:2157 +#: ../../builtins/functions.rst:2164 msgid "" "With three arguments, return a new type object. This is essentially a " "dynamic form of the :keyword:`class` statement. The *name* string is the " @@ -4287,11 +4306,11 @@ msgstr "" "oder gekapselt werden, bevor es zum Attribut :attr:`~type.__dict__` wird. " "Die folgenden beiden Anweisungen erzeugen identische :class:`!type`-Objekte:" -#: ../../library/functions.rst:2172 +#: ../../builtins/functions.rst:2179 msgid "See also:" msgstr "Siehe auch:" -#: ../../library/functions.rst:2174 +#: ../../builtins/functions.rst:2181 msgid "" ":ref:`Documentation on attributes and methods on classes `." @@ -4299,11 +4318,11 @@ msgstr "" ":ref:`Dokumentation zu Attributen und Methoden von Klassen `." -#: ../../library/functions.rst:2175 +#: ../../builtins/functions.rst:2182 msgid ":ref:`bltin-type-objects`" msgstr ":ref:`bltin-type-objects`" -#: ../../library/functions.rst:2177 +#: ../../builtins/functions.rst:2184 msgid "" "Keyword arguments provided to the three argument form are passed to the " "appropriate metaclass machinery (usually :meth:`~object.__init_subclass__`) " @@ -4316,7 +4335,7 @@ msgstr "" "bei Schlüsselwörtern in einer Klassendefinition (abgesehen von *metaclass*) " "der Fall wäre." -#: ../../library/functions.rst:2182 +#: ../../builtins/functions.rst:2189 msgid "" "Unlike a :keyword:`class` statement, the three argument form does not call " "the metaclass ``__prepare__`` method (see :ref:`prepare`). Use :func:`types." @@ -4327,11 +4346,11 @@ msgstr "" "`prepare`). Verwende :func:`types.new_class`, um eine Klasse dynamisch unter " "Verwendung der passenden Metaklasse zu erstellen." -#: ../../library/functions.rst:2187 +#: ../../builtins/functions.rst:2194 msgid "See also :ref:`class-customization`." msgstr "Siehe auch :ref:`class-customization`." -#: ../../library/functions.rst:2189 +#: ../../builtins/functions.rst:2196 msgid "" "Subclasses of :class:`!type` which don't override ``type.__new__`` may no " "longer use the one-argument form to get the type of an object." @@ -4340,11 +4359,11 @@ msgstr "" "dürfen nicht mehr die Form mit einem Argument verwenden, um den Typ eines " "Objekts zu ermitteln." -#: ../../library/functions.rst:2195 +#: ../../builtins/functions.rst:2202 msgid "*dict* can now be a :class:`frozendict`." msgstr "*dict* kann jetzt ein :class:`frozendict` sein." -#: ../../library/functions.rst:2200 +#: ../../builtins/functions.rst:2207 msgid "" "Return the :attr:`~object.__dict__` attribute for a module, class, instance, " "or any other object with a :attr:`!__dict__` attribute." @@ -4353,7 +4372,7 @@ msgstr "" "Instanz oder ein beliebiges anderes Objekt mit einem :attr:`!__dict__`-" "Attribut zurück." -#: ../../library/functions.rst:2203 +#: ../../builtins/functions.rst:2210 msgid "" "Objects such as modules and instances have an updateable :attr:`~object." "__dict__` attribute; however, other objects may have write restrictions on " @@ -4366,11 +4385,11 @@ msgstr "" "(Klassen verwenden beispielsweise ein :class:`types.MappingProxyType`, um " "direkte Aktualisierungen des Dictionarys zu verhindern)." -#: ../../library/functions.rst:2208 +#: ../../builtins/functions.rst:2215 msgid "Without an argument, :func:`vars` acts like :func:`locals`." msgstr "Ohne Argument verhält sich :func:`vars` wie :func:`locals`." -#: ../../library/functions.rst:2210 +#: ../../builtins/functions.rst:2217 msgid "" "A :exc:`TypeError` exception is raised if an object is specified but it " "doesn't have a :attr:`~object.__dict__` attribute (for example, if its class " @@ -4380,7 +4399,7 @@ msgstr "" "wird, das kein :attr:`~object.__dict__`-Attribut besitzt (zum Beispiel, wenn " "seine Klasse das :attr:`~object.__slots__`-Attribut definiert)." -#: ../../library/functions.rst:2216 +#: ../../builtins/functions.rst:2223 msgid "" "The result of calling this function without an argument has been updated as " "described for the :func:`locals` builtin." @@ -4388,7 +4407,7 @@ msgstr "" "Das Ergebnis des Aufrufs dieser Funktion ohne Argument wurde wie für die " "eingebaute Funktion :func:`locals` beschrieben aktualisiert." -#: ../../library/functions.rst:2222 +#: ../../builtins/functions.rst:2229 msgid "" "Iterate over several iterables in parallel, producing tuples with an item " "from each one." @@ -4396,11 +4415,11 @@ msgstr "" "Über mehrere Iterables parallel iterieren und dabei Tupel mit je einem " "Element aus jedem Iterable erzeugen." -#: ../../library/functions.rst:2225 +#: ../../builtins/functions.rst:2232 msgid "Example::" msgstr "Beispiel::" -#: ../../library/functions.rst:2227 +#: ../../builtins/functions.rst:2234 msgid "" ">>> for item in zip([1, 2, 3], ['sugar', 'spice', 'everything nice']):\n" "... print(item)\n" @@ -4416,7 +4435,7 @@ msgstr "" "(2, 'spice')\n" "(3, 'everything nice')" -#: ../../library/functions.rst:2234 +#: ../../builtins/functions.rst:2241 msgid "" "More formally: :func:`zip` returns an iterator of tuples, where the *i*-th " "tuple contains the *i*-th element from each of the argument iterables." @@ -4425,7 +4444,7 @@ msgstr "" "zurück, wobei das *i*-te Tupel das *i*-te Element aus jedem der als Argument " "übergebenen Iterables enthält." -#: ../../library/functions.rst:2237 +#: ../../builtins/functions.rst:2244 msgid "" "Another way to think of :func:`zip` is that it turns rows into columns, and " "columns into rows. This is similar to `transposing a matrix `_." -#: ../../library/functions.rst:2241 +#: ../../builtins/functions.rst:2248 msgid "" ":func:`zip` is lazy: The elements won't be processed until the iterable is " "iterated on, e.g. by a :keyword:`!for` loop or by wrapping in a :class:" @@ -4445,7 +4464,7 @@ msgstr "" "wenn über das Iterable iteriert wird, z. B. mittels einer :keyword:`!for`-" "Schleife oder durch Umwandlung in eine :class:`list`." -#: ../../library/functions.rst:2245 +#: ../../builtins/functions.rst:2252 msgid "" "One thing to consider is that the iterables passed to :func:`zip` could have " "different lengths; sometimes by design, and sometimes because of a bug in " @@ -4457,17 +4476,18 @@ msgstr "" "aufgrund eines Fehlers in dem Code, der diese Iterables erstellt hat. Python " "bietet drei verschiedene Ansätze für den Umgang mit diesem Problem:" -#: ../../library/functions.rst:2250 +#: ../../builtins/functions.rst:2257 +#, fuzzy msgid "" -"By default, :func:`zip` stops when the shortest iterable is exhausted. It " -"will ignore the remaining items in the longer iterables, cutting off the " -"result to the length of the shortest iterable::" +"By default, :func:`zip` stops when the shortest iterable is :term:" +"`exhausted`. It will ignore the remaining items in the longer iterables, " +"cutting off the result to the length of the shortest iterable::" msgstr "" "Standardmäßig hält :func:`zip` an, sobald das kürzeste Iterable erschöpft " "ist. Es ignoriert die verbleibenden Elemente in den längeren Iterables und " "begrenzt das Ergebnis auf die Länge des kürzesten Iterables::" -#: ../../library/functions.rst:2254 +#: ../../builtins/functions.rst:2261 msgid "" ">>> list(zip(range(3), ['fee', 'fi', 'fo', 'fum']))\n" "[(0, 'fee'), (1, 'fi'), (2, 'fo')]" @@ -4475,7 +4495,7 @@ msgstr "" ">>> list(zip(range(3), ['fee', 'fi', 'fo', 'fum']))\n" "[(0, 'fee'), (1, 'fi'), (2, 'fo')]" -#: ../../library/functions.rst:2257 +#: ../../builtins/functions.rst:2264 msgid "" ":func:`zip` is often used in cases where the iterables are assumed to be of " "equal length. In such cases, it's recommended to use the ``strict=True`` " @@ -4486,7 +4506,7 @@ msgstr "" "die Verwendung der Option ``strict=True``. Die Ausgabe entspricht der von " "regulärem :func:`zip`::" -#: ../../library/functions.rst:2261 +#: ../../builtins/functions.rst:2268 msgid "" ">>> list(zip(('a', 'b', 'c'), (1, 2, 3), strict=True))\n" "[('a', 1), ('b', 2), ('c', 3)]" @@ -4494,15 +4514,16 @@ msgstr "" ">>> list(zip(('a', 'b', 'c'), (1, 2, 3), strict=True))\n" "[('a', 1), ('b', 2), ('c', 3)]" -#: ../../library/functions.rst:2264 +#: ../../builtins/functions.rst:2271 +#, fuzzy msgid "" "Unlike the default behavior, it raises a :exc:`ValueError` if one iterable " -"is exhausted before the others:" +"is :term:`exhausted` before the others:" msgstr "" "Im Gegensatz zum Standardverhalten löst es einen :exc:`ValueError` aus, wenn " "ein Iterable vor den anderen vollständig durchlaufen ist:" -#: ../../library/functions.rst:2282 +#: ../../builtins/functions.rst:2289 msgid "" "Without the ``strict=True`` argument, any bug that results in iterables of " "different lengths will be silenced, possibly manifesting as a hard-to-find " @@ -4512,7 +4533,7 @@ msgstr "" "unterschiedlicher Länge führen, unterdrückt; dies kann sich möglicherweise " "als schwer zu findender Fehler an einer anderen Stelle des Programms äußern." -#: ../../library/functions.rst:2286 +#: ../../builtins/functions.rst:2293 msgid "" "Shorter iterables can be padded with a constant value to make all the " "iterables have the same length. This is done by :func:`itertools." @@ -4522,7 +4543,7 @@ msgstr "" "alle Iterables dieselbe Länge haben. Dies geschieht mit :func:`itertools." "zip_longest`." -#: ../../library/functions.rst:2290 +#: ../../builtins/functions.rst:2297 msgid "" "Edge cases: With a single iterable argument, :func:`zip` returns an iterator " "of 1-tuples. With no arguments, it returns an empty iterator." @@ -4531,11 +4552,11 @@ msgstr "" "Iterator von 1-Tupeln zurück. Ohne Argumente gibt es einen leeren Iterator " "zurück." -#: ../../library/functions.rst:2293 +#: ../../builtins/functions.rst:2300 msgid "Tips and tricks:" msgstr "Tipps und Tricks:" -#: ../../library/functions.rst:2295 +#: ../../builtins/functions.rst:2302 msgid "" "The left-to-right evaluation order of the iterables is guaranteed. This " "makes possible an idiom for clustering a data series into n-length groups " @@ -4550,7 +4571,7 @@ msgstr "" "jedes Ergebnis-Tupel die Resultate von ``n`` Aufrufen des Iterators enthält. " "Dies bewirkt eine Aufteilung der Eingabe in Abschnitte der Länge ``n``." -#: ../../library/functions.rst:2301 +#: ../../builtins/functions.rst:2308 msgid "" ":func:`zip` in conjunction with the ``*`` operator can be used to unzip a " "list::" @@ -4558,7 +4579,7 @@ msgstr "" ":func:`zip` kann in Verbindung mit dem ``*``-Operator verwendet werden, um " "eine Liste zu entpacken::" -#: ../../library/functions.rst:2304 +#: ../../builtins/functions.rst:2311 msgid "" ">>> x = [1, 2, 3]\n" ">>> y = [4, 5, 6]\n" @@ -4576,11 +4597,11 @@ msgstr "" ">>> x == list(x2) and y == list(y2)\n" "True" -#: ../../library/functions.rst:2312 +#: ../../builtins/functions.rst:2319 msgid "Added the ``strict`` argument." msgstr "Das Argument ``strict`` wurde hinzugefügt." -#: ../../library/functions.rst:2324 +#: ../../builtins/functions.rst:2331 msgid "" "This is an advanced function that is not needed in everyday Python " "programming, unlike :func:`importlib.import_module`." @@ -4589,7 +4610,7 @@ msgstr "" "`importlib.import_module` in der alltäglichen Python-Programmierung nicht " "benötigt wird." -#: ../../library/functions.rst:2327 +#: ../../builtins/functions.rst:2334 msgid "" "This function is invoked by the :keyword:`import` statement. It can be " "replaced (by importing the :mod:`builtins` module and assigning to " @@ -4610,7 +4631,7 @@ msgstr "" "von :func:`__import__` wird zugunsten von :func:`importlib.import_module` " "abgeraten." -#: ../../library/functions.rst:2336 +#: ../../builtins/functions.rst:2343 msgid "" "The function imports the module *name*, potentially using the given " "*globals* and *locals* to determine how to interpret the name in a package " @@ -4628,7 +4649,7 @@ msgstr "" "lediglich dazu, den Paketkontext der :keyword:`import`-Anweisung zu " "bestimmen." -#: ../../library/functions.rst:2343 +#: ../../builtins/functions.rst:2350 msgid "" "*level* specifies whether to use absolute or relative imports. ``0`` (the " "default) means only perform absolute imports. Positive values for *level* " @@ -4643,7 +4664,7 @@ msgstr "" "`__import__` aufruft, durchsucht werden sollen (siehe :pep:`328` für die " "Details)." -#: ../../library/functions.rst:2349 +#: ../../builtins/functions.rst:2356 msgid "" "When the *name* variable is of the form ``package.module``, normally, the " "top-level package (the name up till the first dot) is returned, *not* the " @@ -4656,7 +4677,7 @@ msgstr "" "*fromlist*-Argument angegeben, so wird das durch *name* bezeichnete Modul " "zurückgegeben." -#: ../../library/functions.rst:2354 +#: ../../builtins/functions.rst:2361 msgid "" "For example, the statement ``import spam`` results in bytecode resembling " "the following code::" @@ -4664,19 +4685,19 @@ msgstr "" "Die Anweisung „import spam“ führt beispielsweise zu Bytecode, der dem " "folgenden Code ähnelt::" -#: ../../library/functions.rst:2357 +#: ../../builtins/functions.rst:2364 msgid "spam = __import__('spam', globals(), locals(), [], 0)" msgstr "spam = __import__('spam', globals(), locals(), [], 0)" -#: ../../library/functions.rst:2359 +#: ../../builtins/functions.rst:2366 msgid "The statement ``import spam.ham`` results in this call::" msgstr "Die Anweisung ``import spam.ham`` führt zu diesem Aufruf::" -#: ../../library/functions.rst:2361 +#: ../../builtins/functions.rst:2368 msgid "spam = __import__('spam.ham', globals(), locals(), [], 0)" msgstr "spam = __import__('spam.ham', globals(), locals(), [], 0)" -#: ../../library/functions.rst:2363 +#: ../../builtins/functions.rst:2370 msgid "" "Note how :func:`__import__` returns the toplevel module here because this is " "the object that is bound to a name by the :keyword:`import` statement." @@ -4685,7 +4706,7 @@ msgstr "" "zurückgibt, da dies das Objekt ist, das durch die :keyword:`import`-" "Anweisung an einen Namen gebunden wird." -#: ../../library/functions.rst:2366 +#: ../../builtins/functions.rst:2373 msgid "" "On the other hand, the statement ``from spam.ham import eggs, sausage as " "saus`` results in ::" @@ -4693,7 +4714,7 @@ msgstr "" "Andererseits führt die Anweisung ``from spam.ham import eggs, sausage as " "saus`` zu ::" -#: ../../library/functions.rst:2369 +#: ../../builtins/functions.rst:2376 msgid "" "_temp = __import__('spam.ham', globals(), locals(), ['eggs', 'sausage'], 0)\n" "eggs = _temp.eggs\n" @@ -4703,7 +4724,7 @@ msgstr "" "eggs = _temp.eggs\n" "saus = _temp.sausage" -#: ../../library/functions.rst:2373 +#: ../../builtins/functions.rst:2380 msgid "" "Here, the ``spam.ham`` module is returned from :func:`__import__`. From " "this object, the names to import are retrieved and assigned to their " @@ -4713,7 +4734,7 @@ msgstr "" "diesem Objekt werden die zu importierenden Namen abgerufen und den " "entsprechenden Namen zugewiesen." -#: ../../library/functions.rst:2377 +#: ../../builtins/functions.rst:2384 msgid "" "If you simply want to import a module (potentially within a package) by " "name, use :func:`importlib.import_module`." @@ -4721,7 +4742,7 @@ msgstr "" "Wenn du ein Modul (möglicherweise innerhalb eines Pakets) einfach anhand " "seines Namens importieren möchten, verwende :func:`importlib.import_module`." -#: ../../library/functions.rst:2380 +#: ../../builtins/functions.rst:2387 msgid "" "Negative values for *level* are no longer supported (which also changes the " "default value to 0)." @@ -4729,7 +4750,7 @@ msgstr "" "Negative Werte für *level* werden nicht mehr unterstützt (wodurch sich auch " "der Standardwert auf 0 ändert)." -#: ../../library/functions.rst:2384 +#: ../../builtins/functions.rst:2391 msgid "" "When the command line options :option:`-E` or :option:`-I` are being used, " "the environment variable :envvar:`PYTHONCASEOK` is now ignored." @@ -4737,11 +4758,11 @@ msgstr "" "Wenn die Befehlszeilenoptionen :option:`-E` oder :option:`-I` verwendet " "werden, wird die Umgebungsvariable :envvar:`PYTHONCASEOK` nun ignoriert." -#: ../../library/functions.rst:2389 +#: ../../builtins/functions.rst:2396 msgid "Footnotes" msgstr "Fußnoten" -#: ../../library/functions.rst:2390 +#: ../../builtins/functions.rst:2397 msgid "" "Note that the parser only accepts the Unix-style end of line convention. If " "you are reading the code from a file, make sure to use newline conversion " @@ -4752,111 +4773,111 @@ msgstr "" "Umwandlung von Zeilenumbrüchen verwendest, um Zeilenumbrüche im Windows- " "oder Mac-Format zu konvertieren." -#: ../../library/functions.rst:158 +#: ../../builtins/functions.rst:158 msgid "Boolean" msgstr "Boolescher Wert" -#: ../../library/functions.rst:158 ../../library/functions.rst:2148 +#: ../../builtins/functions.rst:158 ../../builtins/functions.rst:2155 msgid "type" msgstr "Typ" -#: ../../library/functions.rst:674 +#: ../../builtins/functions.rst:674 msgid "built-in function" msgstr "Eingebaute Funktion" -#: ../../library/functions.rst:674 +#: ../../builtins/functions.rst:674 msgid "exec" msgstr "Ausführen" -#: ../../library/functions.rst:777 +#: ../../builtins/functions.rst:777 msgid "NaN" msgstr "Keine Nummer (NaN, Not a Number)" -#: ../../library/functions.rst:777 +#: ../../builtins/functions.rst:777 msgid "Infinity" msgstr "Unendlichkeit" -#: ../../library/functions.rst:847 +#: ../../builtins/functions.rst:847 msgid "__format__" msgstr "__format__" -#: ../../library/functions.rst:847 ../../library/functions.rst:2016 +#: ../../builtins/functions.rst:847 ../../builtins/functions.rst:2023 msgid "string" msgstr "Zeichenkette" -#: ../../library/functions.rst:847 +#: ../../builtins/functions.rst:847 msgid "format() (built-in function)" msgstr "format() (Eingebaute Funktion)" -#: ../../library/functions.rst:1376 +#: ../../builtins/functions.rst:1376 msgid "file object" msgstr "Datei Objekt" -#: ../../library/functions.rst:1376 ../../library/functions.rst:1469 +#: ../../builtins/functions.rst:1376 ../../builtins/functions.rst:1472 msgid "open() built-in function" msgstr "open() Eingebaute Funktion" -#: ../../library/functions.rst:1404 +#: ../../builtins/functions.rst:1405 msgid "file" msgstr "Datei" -#: ../../library/functions.rst:1404 +#: ../../builtins/functions.rst:1405 msgid "modes" msgstr "Modus / Modi" -#: ../../library/functions.rst:1469 +#: ../../builtins/functions.rst:1472 msgid "universal newlines" msgstr "Universal Neue Zeile" -#: ../../library/functions.rst:1530 +#: ../../builtins/functions.rst:1533 msgid "line-buffered I/O" msgstr "Zeilen gepufferte I/O" -#: ../../library/functions.rst:1530 +#: ../../builtins/functions.rst:1533 msgid "unbuffered I/O" msgstr "Ungepufferte I/O" -#: ../../library/functions.rst:1530 +#: ../../builtins/functions.rst:1533 msgid "buffer size, I/O" msgstr "Puffer Größe, I/O" -#: ../../library/functions.rst:1530 +#: ../../builtins/functions.rst:1533 msgid "I/O control" msgstr "I/O Kontrolle" -#: ../../library/functions.rst:1530 +#: ../../builtins/functions.rst:1533 msgid "buffering" msgstr "Puffern" -#: ../../library/functions.rst:1530 +#: ../../builtins/functions.rst:1533 msgid "text mode" msgstr "Text Modus" -#: ../../library/functions.rst:1530 ../../library/functions.rst:2318 +#: ../../builtins/functions.rst:1533 ../../builtins/functions.rst:2325 msgid "module" msgstr "Modul" -#: ../../library/functions.rst:1530 +#: ../../builtins/functions.rst:1533 msgid "sys" msgstr "sys" -#: ../../library/functions.rst:2016 +#: ../../builtins/functions.rst:2023 msgid "str() (built-in function)" msgstr "str() (Eingebaute Funktion)" -#: ../../library/functions.rst:2148 +#: ../../builtins/functions.rst:2155 msgid "object" msgstr "Objekt" -#: ../../library/functions.rst:2318 +#: ../../builtins/functions.rst:2325 msgid "statement" msgstr "Ausdruck" -#: ../../library/functions.rst:2318 +#: ../../builtins/functions.rst:2325 msgid "import" msgstr "Import" -#: ../../library/functions.rst:2318 +#: ../../builtins/functions.rst:2325 msgid "builtins" msgstr "Eingebaute Funktionen" diff --git a/builtins/index.po b/builtins/index.po index 4c86d945..e2a60080 100644 --- a/builtins/index.po +++ b/builtins/index.po @@ -7,14 +7,14 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-09-22 21:21+0200\n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" "PO-Revision-Date: 2026-09-22 21:21+0200\n" "Last-Translator: Automatically generated\n" "Language-Team: none\n" +"Language: de\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: de\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../../builtins/index.rst:5 diff --git a/builtins/stdtypes.po b/builtins/stdtypes.po index f3e14aed..e6838408 100644 --- a/builtins/stdtypes.po +++ b/builtins/stdtypes.po @@ -11,7 +11,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-22 12:07+0200\n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: python-doc bot, 2025\n" "Language-Team: German (https://app.transifex.com/python-doc/teams/5390/de/)\n" @@ -21,11 +21,11 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: ../../library/stdtypes.rst:8 +#: ../../builtins/stdtypes.rst:8 msgid "Built-in Types" msgstr "Eingebaute Typen" -#: ../../library/stdtypes.rst:10 +#: ../../builtins/stdtypes.rst:10 msgid "" "The following sections describe the standard types that are built into the " "interpreter." @@ -33,7 +33,7 @@ msgstr "" "Die folgenden Abschnitte beschreiben die Standardtypen, die in den " "Interpreter eingebaut sind." -#: ../../library/stdtypes.rst:15 +#: ../../builtins/stdtypes.rst:15 msgid "" "The principal built-in types are numerics, sequences, mappings, classes, " "instances and exceptions." @@ -41,7 +41,7 @@ msgstr "" "Die wichtigsten eingebauten Typen sind numerische Typen, Sequenzen, " "Mappings, Klassen, Instanzen und Exceptions." -#: ../../library/stdtypes.rst:18 +#: ../../builtins/stdtypes.rst:18 msgid "" "Some collection classes are mutable. The methods that add, subtract, or " "rearrange their members in place, and don't return a specific item, never " @@ -52,7 +52,7 @@ msgstr "" "bestimmtes Element zurückgeben, geben niemals die Collection-Instanz selbst " "zurück, sondern ``None``." -#: ../../library/stdtypes.rst:22 +#: ../../builtins/stdtypes.rst:22 msgid "" "Some operations are supported by several object types; in particular, " "practically all objects can be compared for equality, tested for truth " @@ -67,11 +67,11 @@ msgstr "" "`str`). Letztere Funktion wird implizit verwendet, wenn ein Objekt durch die " "Funktion :func:`print` ausgegeben wird." -#: ../../library/stdtypes.rst:32 +#: ../../builtins/stdtypes.rst:32 msgid "Truth Value Testing" msgstr "Wahrheitswert-Prüfung" -#: ../../library/stdtypes.rst:41 +#: ../../builtins/stdtypes.rst:41 msgid "" "Any object can be tested for truth value, for use in an :keyword:`if` or :" "keyword:`while` condition or as operand of the Boolean operations below." @@ -80,7 +80,7 @@ msgstr "" "keyword:`if`- oder :keyword:`while`-Bedingung oder als Operand der folgenden " "booleschen Operationen verwendet zu werden." -#: ../../library/stdtypes.rst:46 +#: ../../builtins/stdtypes.rst:46 msgid "" "By default, an object is considered true unless its class defines either a :" "meth:`~object.__bool__` method that returns ``False`` or a :meth:`~object." @@ -97,11 +97,11 @@ msgstr "" "Beispiel :data:`NotImplemented`). Hier sind die meisten der eingebauten " "Objekte aufgeführt, die als falsch gelten:" -#: ../../library/stdtypes.rst:58 +#: ../../builtins/stdtypes.rst:58 msgid "constants defined to be false: ``None`` and ``False``" msgstr "Konstanten, die als falsch definiert sind: ``None`` und ``False``" -#: ../../library/stdtypes.rst:60 +#: ../../builtins/stdtypes.rst:60 msgid "" "zero of any numeric type: ``0``, ``0.0``, ``0j``, ``Decimal(0)``, " "``Fraction(0, 1)``" @@ -109,7 +109,7 @@ msgstr "" "Null eines beliebigen numerischen Typs: ``0``, ``0.0``, ``0j``, " "``Decimal(0)``, ``Fraction(0, 1)``" -#: ../../library/stdtypes.rst:63 +#: ../../builtins/stdtypes.rst:63 msgid "" "empty sequences and collections: ``''``, ``()``, ``[]``, ``{}``, ``set()``, " "``range(0)``" @@ -117,7 +117,7 @@ msgstr "" "leere Sequenzen und Collections: ``''``, ``()``, ``[]``, ``{}``, ``set()``, " "``range(0)``" -#: ../../library/stdtypes.rst:72 +#: ../../builtins/stdtypes.rst:72 msgid "" "Operations and built-in functions that have a Boolean result always return " "``0`` or ``False`` for false and ``1`` or ``True`` for true, unless " @@ -129,89 +129,89 @@ msgstr "" "zurück, sofern nicht anders angegeben. (Wichtige Ausnahme: Die booleschen " "Operationen ``or`` und ``and`` geben immer einen ihrer Operanden zurück.)" -#: ../../library/stdtypes.rst:81 +#: ../../builtins/stdtypes.rst:81 msgid "Boolean Operations --- :keyword:`!and`, :keyword:`!or`, :keyword:`!not`" msgstr "" "Boolesche Operationen --- :keyword:`!and`, :keyword:`!or`, :keyword:`!not`" -#: ../../library/stdtypes.rst:85 +#: ../../builtins/stdtypes.rst:85 msgid "These are the Boolean operations, ordered by ascending priority:" msgstr "" "Dies sind die booleschen Operationen, geordnet nach aufsteigender Priorität:" -#: ../../library/stdtypes.rst:88 ../../library/stdtypes.rst:146 -#: ../../library/stdtypes.rst:292 ../../library/stdtypes.rst:382 -#: ../../library/stdtypes.rst:432 ../../library/stdtypes.rst:1015 -#: ../../library/stdtypes.rst:1237 +#: ../../builtins/stdtypes.rst:88 ../../builtins/stdtypes.rst:146 +#: ../../builtins/stdtypes.rst:292 ../../builtins/stdtypes.rst:382 +#: ../../builtins/stdtypes.rst:432 ../../builtins/stdtypes.rst:1018 +#: ../../builtins/stdtypes.rst:1242 msgid "Operation" msgstr "Operation" -#: ../../library/stdtypes.rst:88 ../../library/stdtypes.rst:292 -#: ../../library/stdtypes.rst:382 ../../library/stdtypes.rst:432 -#: ../../library/stdtypes.rst:1015 ../../library/stdtypes.rst:1237 +#: ../../builtins/stdtypes.rst:88 ../../builtins/stdtypes.rst:292 +#: ../../builtins/stdtypes.rst:382 ../../builtins/stdtypes.rst:432 +#: ../../builtins/stdtypes.rst:1018 ../../builtins/stdtypes.rst:1242 msgid "Result" msgstr "Ergebnis" -#: ../../library/stdtypes.rst:88 ../../library/stdtypes.rst:292 -#: ../../library/stdtypes.rst:432 ../../library/stdtypes.rst:1015 -#: ../../library/stdtypes.rst:1237 ../../library/stdtypes.rst:3206 -#: ../../library/stdtypes.rst:4503 +#: ../../builtins/stdtypes.rst:88 ../../builtins/stdtypes.rst:292 +#: ../../builtins/stdtypes.rst:432 ../../builtins/stdtypes.rst:1018 +#: ../../builtins/stdtypes.rst:1242 ../../builtins/stdtypes.rst:3213 +#: ../../builtins/stdtypes.rst:4515 msgid "Notes" msgstr "Hinweise" -#: ../../library/stdtypes.rst:90 +#: ../../builtins/stdtypes.rst:90 msgid "``x or y``" msgstr "``x or y``" -#: ../../library/stdtypes.rst:90 +#: ../../builtins/stdtypes.rst:90 msgid "if *x* is true, then *x*, else *y*" msgstr "wenn *x* wahr ist, dann *x*, sonst *y*" -#: ../../library/stdtypes.rst:90 ../../library/stdtypes.rst:1017 -#: ../../library/stdtypes.rst:1020 ../../library/stdtypes.rst:1252 -#: ../../library/stdtypes.rst:3212 ../../library/stdtypes.rst:4509 +#: ../../builtins/stdtypes.rst:90 ../../builtins/stdtypes.rst:1020 +#: ../../builtins/stdtypes.rst:1023 ../../builtins/stdtypes.rst:1257 +#: ../../builtins/stdtypes.rst:3219 ../../builtins/stdtypes.rst:4521 msgid "\\(1)" msgstr "\\(1)" -#: ../../library/stdtypes.rst:93 +#: ../../builtins/stdtypes.rst:93 msgid "``x and y``" msgstr "``x und y``" -#: ../../library/stdtypes.rst:93 +#: ../../builtins/stdtypes.rst:93 msgid "if *x* is false, then *x*, else *y*" msgstr "wenn *x* falsch ist, dann *x*, sonst *y*" -#: ../../library/stdtypes.rst:93 ../../library/stdtypes.rst:305 -#: ../../library/stdtypes.rst:325 ../../library/stdtypes.rst:1263 -#: ../../library/stdtypes.rst:3216 ../../library/stdtypes.rst:3218 -#: ../../library/stdtypes.rst:4513 ../../library/stdtypes.rst:4515 +#: ../../builtins/stdtypes.rst:93 ../../builtins/stdtypes.rst:305 +#: ../../builtins/stdtypes.rst:325 ../../builtins/stdtypes.rst:1268 +#: ../../builtins/stdtypes.rst:3223 ../../builtins/stdtypes.rst:3225 +#: ../../builtins/stdtypes.rst:4525 ../../builtins/stdtypes.rst:4527 msgid "\\(2)" msgstr "\\(2)" -#: ../../library/stdtypes.rst:96 +#: ../../builtins/stdtypes.rst:96 msgid "``not x``" msgstr "``not x``" -#: ../../library/stdtypes.rst:96 +#: ../../builtins/stdtypes.rst:96 msgid "if *x* is false, then ``True``, else ``False``" msgstr "wenn *x* falsch ist, dann ``True``, sonst ``False``" -#: ../../library/stdtypes.rst:96 ../../library/stdtypes.rst:3220 -#: ../../library/stdtypes.rst:3222 ../../library/stdtypes.rst:3224 -#: ../../library/stdtypes.rst:3226 ../../library/stdtypes.rst:4517 -#: ../../library/stdtypes.rst:4519 ../../library/stdtypes.rst:4521 -#: ../../library/stdtypes.rst:4523 +#: ../../builtins/stdtypes.rst:96 ../../builtins/stdtypes.rst:3227 +#: ../../builtins/stdtypes.rst:3229 ../../builtins/stdtypes.rst:3231 +#: ../../builtins/stdtypes.rst:3233 ../../builtins/stdtypes.rst:4529 +#: ../../builtins/stdtypes.rst:4531 ../../builtins/stdtypes.rst:4533 +#: ../../builtins/stdtypes.rst:4535 msgid "\\(3)" msgstr "\\(3)" -#: ../../library/stdtypes.rst:105 ../../library/stdtypes.rst:336 -#: ../../library/stdtypes.rst:450 ../../library/stdtypes.rst:1059 -#: ../../library/stdtypes.rst:1267 ../../library/stdtypes.rst:3256 -#: ../../library/stdtypes.rst:4553 +#: ../../builtins/stdtypes.rst:105 ../../builtins/stdtypes.rst:336 +#: ../../builtins/stdtypes.rst:450 ../../builtins/stdtypes.rst:1062 +#: ../../builtins/stdtypes.rst:1272 ../../builtins/stdtypes.rst:3263 +#: ../../builtins/stdtypes.rst:4565 msgid "Notes:" msgstr "Hinweise:" -#: ../../library/stdtypes.rst:108 +#: ../../builtins/stdtypes.rst:108 msgid "" "This is a short-circuit operator, so it only evaluates the second argument " "if the first one is false." @@ -219,7 +219,7 @@ msgstr "" "Dies ist ein Kurzschlussoperator, daher wird das zweite Argument nur " "ausgewertet, wenn das erste falsch ist." -#: ../../library/stdtypes.rst:112 +#: ../../builtins/stdtypes.rst:112 msgid "" "This is a short-circuit operator, so it only evaluates the second argument " "if the first one is true." @@ -227,7 +227,7 @@ msgstr "" "Dies ist ein Kurzschlussoperator, daher wird das zweite Argument nur " "ausgewertet, wenn das erste wahr ist." -#: ../../library/stdtypes.rst:116 +#: ../../builtins/stdtypes.rst:116 msgid "" "``not`` has a lower priority than non-Boolean operators, so ``not a == b`` " "is interpreted as ``not (a == b)``, and ``a == not b`` is a syntax error." @@ -236,11 +236,11 @@ msgstr "" "wird ``not a == b`` als ``not (a == b)`` interpretiert, und ``a == not b`` " "ist ein Syntaxfehler." -#: ../../library/stdtypes.rst:123 +#: ../../builtins/stdtypes.rst:123 msgid "Comparisons" msgstr "Vergleiche" -#: ../../library/stdtypes.rst:137 +#: ../../builtins/stdtypes.rst:137 msgid "" "There are eight comparison operations in Python. They all have the same " "priority (which is higher than that of the Boolean operations). Comparisons " @@ -255,81 +255,81 @@ msgstr "" "wird (aber in beiden Fällen wird *z* überhaupt nicht ausgewertet, wenn ``x < " "y`` als falsch befunden wird)." -#: ../../library/stdtypes.rst:143 +#: ../../builtins/stdtypes.rst:143 msgid "This table summarizes the comparison operations:" msgstr "Diese Tabelle fasst die Vergleichsoperationen zusammen:" -#: ../../library/stdtypes.rst:146 ../../library/stdtypes.rst:3183 -#: ../../library/stdtypes.rst:3206 ../../library/stdtypes.rst:4480 -#: ../../library/stdtypes.rst:4503 +#: ../../builtins/stdtypes.rst:146 ../../builtins/stdtypes.rst:3190 +#: ../../builtins/stdtypes.rst:3213 ../../builtins/stdtypes.rst:4492 +#: ../../builtins/stdtypes.rst:4515 msgid "Meaning" msgstr "Bedeutung" -#: ../../library/stdtypes.rst:148 +#: ../../builtins/stdtypes.rst:148 msgid "``<``" msgstr "``<``" -#: ../../library/stdtypes.rst:148 +#: ../../builtins/stdtypes.rst:148 msgid "strictly less than" msgstr "echt kleiner als" -#: ../../library/stdtypes.rst:150 +#: ../../builtins/stdtypes.rst:150 msgid "``<=``" msgstr "``<=``" -#: ../../library/stdtypes.rst:150 +#: ../../builtins/stdtypes.rst:150 msgid "less than or equal" msgstr "kleiner oder gleich" -#: ../../library/stdtypes.rst:152 +#: ../../builtins/stdtypes.rst:152 msgid "``>``" msgstr "``>``" -#: ../../library/stdtypes.rst:152 +#: ../../builtins/stdtypes.rst:152 msgid "strictly greater than" msgstr "echt größer als" -#: ../../library/stdtypes.rst:154 +#: ../../builtins/stdtypes.rst:154 msgid "``>=``" msgstr "``>=``" -#: ../../library/stdtypes.rst:154 +#: ../../builtins/stdtypes.rst:154 msgid "greater than or equal" msgstr "größer oder gleich" -#: ../../library/stdtypes.rst:156 +#: ../../builtins/stdtypes.rst:156 msgid "``==``" msgstr "``==``" -#: ../../library/stdtypes.rst:156 +#: ../../builtins/stdtypes.rst:156 msgid "equal" msgstr "gleich" -#: ../../library/stdtypes.rst:158 +#: ../../builtins/stdtypes.rst:158 msgid "``!=``" msgstr "``!=``" -#: ../../library/stdtypes.rst:158 +#: ../../builtins/stdtypes.rst:158 msgid "not equal" msgstr "ungleich" -#: ../../library/stdtypes.rst:160 +#: ../../builtins/stdtypes.rst:160 msgid "``is``" msgstr "``is``" -#: ../../library/stdtypes.rst:160 +#: ../../builtins/stdtypes.rst:160 msgid "object identity" msgstr "Objektidentität" -#: ../../library/stdtypes.rst:162 +#: ../../builtins/stdtypes.rst:162 msgid "``is not``" msgstr "``is not``" -#: ../../library/stdtypes.rst:162 +#: ../../builtins/stdtypes.rst:162 msgid "negated object identity" msgstr "negierte Objektidentität" -#: ../../library/stdtypes.rst:16 +#: ../../builtins/stdtypes.rst:169 msgid "" "Unless stated otherwise, objects of different types never compare equal. The " "``==`` operator is always defined but for some object types (for example, " @@ -345,7 +345,7 @@ msgstr "" "nur dort definiert, wo sie sinnvoll sind.Beispielsweise lösen sie eine :exc:" "`TypeError`-Ausnahme aus, wenn eines der Argumente eine komplexe Zahl ist." -#: ../../library/stdtypes.rst:183 +#: ../../builtins/stdtypes.rst:183 msgid "" "Non-identical instances of a class normally compare as non-equal unless the " "class defines the :meth:`~object.__eq__` method." @@ -354,7 +354,7 @@ msgstr "" "angesehen, es sei denn, die Klasse definiert die Methode :meth:`~object." "__eq__`." -#: ../../library/stdtypes.rst:186 +#: ../../builtins/stdtypes.rst:186 msgid "" "Instances of a class cannot be ordered with respect to other instances of " "the same class, or other types of object, unless the class defines enough of " @@ -370,7 +370,7 @@ msgstr "" "Allgemeinen genügen :meth:`~object.__lt__` und :meth:`~object.__eq__`, wenn " "man die herkömmlichen Bedeutungen der Vergleichsoperatoren wünscht)." -#: ../../library/stdtypes.rst:193 +#: ../../builtins/stdtypes.rst:193 msgid "" "The behavior of the :keyword:`is` and :keyword:`is not` operators cannot be " "customized; also they can be applied to any two objects and never raise an " @@ -380,7 +380,7 @@ msgstr "" "angepasst werden. Zudem können sie auf beliebige zwei Objekte angewendet " "werden und lösen niemals eine Ausnahme aus." -#: ../../library/stdtypes.rst:201 +#: ../../builtins/stdtypes.rst:201 msgid "" "Two more operations with the same syntactic priority, :keyword:`in` and :" "keyword:`not in`, are supported by types that are :term:`iterable` or " @@ -390,11 +390,11 @@ msgstr "" "`in` und :keyword:`not in`, werden von Typen unterstützt, die :term:" "`iterable` sind oder die Methode :meth:`~object.__contains__` implementieren." -#: ../../library/stdtypes.rst:208 +#: ../../builtins/stdtypes.rst:208 msgid "Numeric Types --- :class:`int`, :class:`float`, :class:`complex`" msgstr "Numerische Typen --- :class:`int`, :class:`float`, :class:`complex`" -#: ../../library/stdtypes.rst:218 +#: ../../builtins/stdtypes.rst:218 msgid "" "There are three distinct numeric types: :dfn:`integers`, :dfn:`floating-" "point numbers`, and :dfn:`complex numbers`. In addition, Booleans are a " @@ -422,7 +422,7 @@ msgstr "" "`fractions.Fraction` für rationale Zahlen und :mod:`decimal.Decimal` für " "Gleitkommazahlen mit benutzerdefinierbarer Genauigkeit.)" -#: ../../library/stdtypes.rst:240 +#: ../../builtins/stdtypes.rst:240 msgid "" "Numbers are created by numeric literals or as the result of built-in " "functions and operators. Unadorned integer literals (including hex, octal " @@ -441,7 +441,7 @@ msgstr "" "Realteil von null), die man zu einer Ganzzahl oder einem Float addieren " "kann, um eine komplexe Zahl mit Real- und Imaginärteil zu erhalten." -#: ../../library/stdtypes.rst:248 +#: ../../builtins/stdtypes.rst:248 msgid "" "The constructors :func:`int`, :func:`float`, and :func:`complex` can be used " "to produce numbers of a specific type." @@ -449,7 +449,7 @@ msgstr "" "Die Konstruktoren :func:`int`, :func:`float` und :func:`complex` können " "verwendet werden, um Zahlen eines bestimmten Typs zu erzeugen." -#: ../../library/stdtypes.rst:270 +#: ../../builtins/stdtypes.rst:270 msgid "" "Python fully supports mixed arithmetic: when a binary arithmetic operator " "has operands of different built-in numeric types, the operand with the " @@ -460,12 +460,12 @@ msgstr "" "Typen hat, wird der Operand mit dem „schmaleren\" Typ auf den Typ des " "anderen erweitert:" -#: ../../library/stdtypes.rst:274 +#: ../../builtins/stdtypes.rst:274 msgid "If both arguments are complex numbers, no conversion is performed;" msgstr "" "Sind beide Argumente komplexe Zahlen, wird keine Umwandlung durchgeführt;" -#: ../../library/stdtypes.rst:275 +#: ../../builtins/stdtypes.rst:275 msgid "" "if either argument is a complex or a floating-point number, the other is " "converted to a floating-point number;" @@ -473,12 +473,12 @@ msgstr "" "ist eines der Argumente eine komplexe Zahl oder eine Gleitkommazahl, wird " "das andere in eine Gleitkommazahl umgewandelt;" -#: ../../library/stdtypes.rst:277 +#: ../../builtins/stdtypes.rst:277 msgid "otherwise, both must be integers and no conversion is necessary." msgstr "" "andernfalls müssen beide Ganzzahlen sein, und es ist keine Umwandlung nötig." -#: ../../library/stdtypes.rst:279 +#: ../../builtins/stdtypes.rst:279 msgid "" "Arithmetic with complex and real operands is defined by the usual " "mathematical formula, for example::" @@ -486,7 +486,7 @@ msgstr "" "Arithmetik mit komplexen und reellen Operanden ist durch die üblichen " "mathematischen Formeln definiert, zum Beispiel::" -#: ../../library/stdtypes.rst:282 +#: ../../builtins/stdtypes.rst:282 msgid "" "x + complex(u, v) = complex(x + u, v)\n" "x * complex(u, v) = complex(x * u, x * v)" @@ -494,7 +494,7 @@ msgstr "" "x + complex(u, v) = complex(x + u, v)\n" "x * complex(u, v) = complex(x * u, x * v)" -#: ../../library/stdtypes.rst:285 +#: ../../builtins/stdtypes.rst:285 msgid "" "A comparison between numbers of different types behaves as though the exact " "values of those numbers were being compared. [2]_" @@ -502,7 +502,7 @@ msgstr "" "Ein Vergleich zwischen Zahlen verschiedener Typen verhält sich so, als " "würden die exakten Werte dieser Zahlen verglichen. [2]_" -#: ../../library/stdtypes.rst:288 +#: ../../builtins/stdtypes.rst:288 msgid "" "All numeric types (except complex) support the following operations (for " "priorities of the operations, see :ref:`operator-summary`):" @@ -510,127 +510,127 @@ msgstr "" "Alle numerischen Typen (außer komplexe Zahlen) unterstützen die folgenden " "Operationen (zur Priorität der Operationen siehe :ref:`operator-summary`):" -#: ../../library/stdtypes.rst:292 +#: ../../builtins/stdtypes.rst:292 msgid "Full documentation" msgstr "Vollständige Dokumentation" -#: ../../library/stdtypes.rst:294 +#: ../../builtins/stdtypes.rst:294 msgid "``x + y``" msgstr "``x + y``" -#: ../../library/stdtypes.rst:294 +#: ../../builtins/stdtypes.rst:294 msgid "sum of *x* and *y*" msgstr "Summe von *x* und *y*" -#: ../../library/stdtypes.rst:296 +#: ../../builtins/stdtypes.rst:296 msgid "``x - y``" msgstr "``x - y``" -#: ../../library/stdtypes.rst:296 +#: ../../builtins/stdtypes.rst:296 msgid "difference of *x* and *y*" msgstr "Differenz von *x* und *y*" -#: ../../library/stdtypes.rst:298 +#: ../../builtins/stdtypes.rst:298 msgid "``x * y``" msgstr "``x * y``" -#: ../../library/stdtypes.rst:298 +#: ../../builtins/stdtypes.rst:298 msgid "product of *x* and *y*" msgstr "Produkt von *x* und *y*" -#: ../../library/stdtypes.rst:300 +#: ../../builtins/stdtypes.rst:300 msgid "``x / y``" msgstr "``x / y``" -#: ../../library/stdtypes.rst:300 +#: ../../builtins/stdtypes.rst:300 msgid "quotient of *x* and *y*" msgstr "Quotient von *x* und *y*" -#: ../../library/stdtypes.rst:302 +#: ../../builtins/stdtypes.rst:302 msgid "``x // y``" msgstr "``x // y``" -#: ../../library/stdtypes.rst:302 +#: ../../builtins/stdtypes.rst:302 msgid "floored quotient of *x* and *y*" msgstr "abgerundeter Quotient von *x* und *y*" -#: ../../library/stdtypes.rst:302 +#: ../../builtins/stdtypes.rst:302 msgid "\\(1)\\(2)" msgstr "\\(1)\\(2)" -#: ../../library/stdtypes.rst:305 +#: ../../builtins/stdtypes.rst:305 msgid "``x % y``" msgstr "``x % y``" -#: ../../library/stdtypes.rst:305 +#: ../../builtins/stdtypes.rst:305 msgid "remainder of ``x / y``" msgstr "Rest von ``x / y``" -#: ../../library/stdtypes.rst:307 +#: ../../builtins/stdtypes.rst:307 msgid "``-x``" msgstr "``-x``" -#: ../../library/stdtypes.rst:307 +#: ../../builtins/stdtypes.rst:307 msgid "*x* negated" msgstr "*x* negiert" -#: ../../library/stdtypes.rst:309 +#: ../../builtins/stdtypes.rst:309 msgid "``+x``" msgstr "``+x``" -#: ../../library/stdtypes.rst:309 +#: ../../builtins/stdtypes.rst:309 msgid "*x* unchanged" msgstr "*x* unverändert" -#: ../../library/stdtypes.rst:311 +#: ../../builtins/stdtypes.rst:311 msgid "``abs(x)``" msgstr "``abs(x)``" -#: ../../library/stdtypes.rst:311 +#: ../../builtins/stdtypes.rst:311 msgid "absolute value or magnitude of *x*" msgstr "Absolutwert oder Betrag von *x*" -#: ../../library/stdtypes.rst:311 +#: ../../builtins/stdtypes.rst:311 msgid ":func:`abs`" msgstr ":func:`abs`" -#: ../../library/stdtypes.rst:314 +#: ../../builtins/stdtypes.rst:314 msgid "``int(x)``" msgstr "``int(x)``" -#: ../../library/stdtypes.rst:314 +#: ../../builtins/stdtypes.rst:314 msgid "*x* converted to integer" msgstr "*x* umgewandelt in eine Ganzzahl" -#: ../../library/stdtypes.rst:314 +#: ../../builtins/stdtypes.rst:314 msgid "\\(3)\\(6)" msgstr "\\(3)\\(6)" -#: ../../library/stdtypes.rst:314 +#: ../../builtins/stdtypes.rst:314 msgid ":func:`int`" msgstr ":func:`int`" -#: ../../library/stdtypes.rst:316 +#: ../../builtins/stdtypes.rst:316 msgid "``float(x)``" msgstr "``float(x)``" -#: ../../library/stdtypes.rst:316 +#: ../../builtins/stdtypes.rst:316 msgid "*x* converted to floating point" msgstr "*x* umgewandelt in eine Gleitkommazahl" -#: ../../library/stdtypes.rst:316 +#: ../../builtins/stdtypes.rst:316 msgid "\\(4)\\(6)" msgstr "\\(4)\\(6)" -#: ../../library/stdtypes.rst:316 +#: ../../builtins/stdtypes.rst:316 msgid ":func:`float`" msgstr ":func:`float`" -#: ../../library/stdtypes.rst:318 +#: ../../builtins/stdtypes.rst:318 msgid "``complex(re, im)``" msgstr "``complex(re, im)``" -#: ../../library/stdtypes.rst:318 +#: ../../builtins/stdtypes.rst:318 msgid "" "a complex number with real part *re*, imaginary part *im*. *im* defaults to " "zero." @@ -638,59 +638,59 @@ msgstr "" "Eine komplexe Zahl mit Realteil *re* und Imaginärteil *im*. *im* ist " "standardmäßig null." -#: ../../library/stdtypes.rst:318 ../../library/stdtypes.rst:3214 -#: ../../library/stdtypes.rst:4540 +#: ../../builtins/stdtypes.rst:318 ../../builtins/stdtypes.rst:3221 +#: ../../builtins/stdtypes.rst:4552 msgid "\\(6)" msgstr "\\(6)" -#: ../../library/stdtypes.rst:318 +#: ../../builtins/stdtypes.rst:318 msgid ":func:`complex`" msgstr ":func:`complex`" -#: ../../library/stdtypes.rst:322 +#: ../../builtins/stdtypes.rst:322 msgid "``c.conjugate()``" msgstr "``c.conjugate()``" -#: ../../library/stdtypes.rst:322 +#: ../../builtins/stdtypes.rst:322 msgid "conjugate of the complex number *c*" msgstr "Konjugiert komplexe Zahl zu *c*" -#: ../../library/stdtypes.rst:325 +#: ../../builtins/stdtypes.rst:325 msgid "``divmod(x, y)``" msgstr "``divmod(x, y)``" -#: ../../library/stdtypes.rst:325 +#: ../../builtins/stdtypes.rst:325 msgid "the pair ``(x // y, x % y)``" msgstr "Das Paar ``(x // y, x % y)``" -#: ../../library/stdtypes.rst:325 +#: ../../builtins/stdtypes.rst:325 msgid ":func:`divmod`" msgstr ":func:`divmod`" -#: ../../library/stdtypes.rst:327 +#: ../../builtins/stdtypes.rst:327 msgid "``pow(x, y)``" msgstr "``pow(x, y)``" -#: ../../library/stdtypes.rst:327 ../../library/stdtypes.rst:329 +#: ../../builtins/stdtypes.rst:327 ../../builtins/stdtypes.rst:329 msgid "*x* to the power *y*" msgstr "*x* hoch *y*" -#: ../../library/stdtypes.rst:327 ../../library/stdtypes.rst:329 -#: ../../library/stdtypes.rst:3239 ../../library/stdtypes.rst:3242 -#: ../../library/stdtypes.rst:3245 ../../library/stdtypes.rst:4536 -#: ../../library/stdtypes.rst:4543 +#: ../../builtins/stdtypes.rst:327 ../../builtins/stdtypes.rst:329 +#: ../../builtins/stdtypes.rst:3246 ../../builtins/stdtypes.rst:3249 +#: ../../builtins/stdtypes.rst:3252 ../../builtins/stdtypes.rst:4548 +#: ../../builtins/stdtypes.rst:4555 msgid "\\(5)" msgstr "\\(5)" -#: ../../library/stdtypes.rst:327 +#: ../../builtins/stdtypes.rst:327 msgid ":func:`pow`" msgstr ":func:`pow`" -#: ../../library/stdtypes.rst:329 +#: ../../builtins/stdtypes.rst:329 msgid "``x ** y``" msgstr "``x ** y``" -#: ../../library/stdtypes.rst:339 +#: ../../builtins/stdtypes.rst:339 msgid "" "Also referred to as integer division. For operands of type :class:`int`, " "the result has type :class:`int`. For operands of type :class:`float`, the " @@ -707,7 +707,7 @@ msgstr "" "gerundet: ``1//2`` ist ``0``, ``(-1)//2`` ist ``-1``, ``1//(-2)`` ist ``-1`` " "und ``(-1)//(-2)`` ist ``0``." -#: ../../library/stdtypes.rst:347 +#: ../../builtins/stdtypes.rst:347 msgid "" "Not for complex numbers. Instead convert to floats using :func:`abs` if " "appropriate." @@ -715,7 +715,7 @@ msgstr "" "Nicht für komplexe Zahlen. Verwende stattdessen gegebenenfalls :func:`abs` " "zur Umwandlung in Fließkommazahlen." -#: ../../library/stdtypes.rst:358 +#: ../../builtins/stdtypes.rst:358 msgid "" "Conversion from :class:`float` to :class:`int` truncates, discarding the " "fractional part. See functions :func:`math.floor` and :func:`math.ceil` for " @@ -725,7 +725,7 @@ msgstr "" "Nachkommateil ab. Siehe die Funktionen :func:`math.floor` und :func:`math." "ceil` für alternative Umwandlungen." -#: ../../library/stdtypes.rst:363 +#: ../../builtins/stdtypes.rst:363 msgid "" "float also accepts the strings \"nan\" and \"inf\" with an optional prefix " "\"+\" or \"-\" for Not a Number (NaN) and positive or negative infinity." @@ -734,7 +734,7 @@ msgstr "" "Präfix „+“ oder „-“ für Not a Number (NaN) sowie positive oder negative " "Unendlichkeit." -#: ../../library/stdtypes.rst:367 +#: ../../builtins/stdtypes.rst:367 msgid "" "Python defines ``pow(0, 0)`` and ``0 ** 0`` to be ``1``, as is common for " "programming languages." @@ -742,7 +742,7 @@ msgstr "" "Python definiert ``pow(0, 0)`` und ``0 ** 0`` als ``1``, wie es für " "Programmiersprachen üblich ist." -#: ../../library/stdtypes.rst:371 +#: ../../builtins/stdtypes.rst:371 msgid "" "The numeric literals accepted include the digits ``0`` to ``9`` or any " "Unicode equivalent (code points with the ``Nd`` property)." @@ -750,7 +750,7 @@ msgstr "" "Zu den akzeptierten numerischen Literalen gehören die Ziffern ``0`` bis " "``9`` oder jedes Unicode-Äquivalent (Codepunkte mit der Eigenschaft ``Nd``)." -#: ../../library/stdtypes.rst:374 +#: ../../builtins/stdtypes.rst:374 msgid "" "See `the Unicode Standard `_ for a complete list of code points with the ``Nd`` " @@ -760,7 +760,7 @@ msgstr "" "DerivedNumericType.txt>`_ für eine vollständige Liste der Codepunkte mit der " "Eigenschaft ``Nd``." -#: ../../library/stdtypes.rst:378 +#: ../../builtins/stdtypes.rst:378 msgid "" "All :class:`numbers.Real` types (:class:`int` and :class:`float`) also " "include the following operations:" @@ -768,19 +768,20 @@ msgstr "" "Alle :class:`numbers.Real`-Typen (:class:`int` und :class:`float`) enthalten " "außerdem die folgenden Operationen:" -#: ../../library/stdtypes.rst:384 -msgid ":func:`math.trunc(\\ x) `" +#: ../../builtins/stdtypes.rst:384 +#, fuzzy +msgid ":func:`math.trunc( x) `" msgstr ":func:`math.trunc(\\ x) `" -#: ../../library/stdtypes.rst:384 +#: ../../builtins/stdtypes.rst:384 msgid "*x* truncated to :class:`~numbers.Integral`" msgstr "*x* abgeschnitten zu :class:`~numbers.Integral`" -#: ../../library/stdtypes.rst:387 +#: ../../builtins/stdtypes.rst:387 msgid ":func:`round(x[, n]) `" msgstr ":func:`round(x[, n]) `" -#: ../../library/stdtypes.rst:387 +#: ../../builtins/stdtypes.rst:387 msgid "" "*x* rounded to *n* digits, rounding half to even. If *n* is omitted, it " "defaults to 0." @@ -789,23 +790,24 @@ msgstr "" "gerundet wird (Round half to even). Wird *n* weggelassen, ist der " "Standardwert 0." -#: ../../library/stdtypes.rst:391 -msgid ":func:`math.floor(\\ x) `" +#: ../../builtins/stdtypes.rst:391 +#, fuzzy +msgid ":func:`math.floor( x) `" msgstr ":func:`math.floor(\\ x) `" -#: ../../library/stdtypes.rst:391 +#: ../../builtins/stdtypes.rst:391 msgid "the greatest :class:`~numbers.Integral` <= *x*" msgstr "das größte :class:`~numbers.Integral` <= *x*" -#: ../../library/stdtypes.rst:394 +#: ../../builtins/stdtypes.rst:394 msgid ":func:`math.ceil(x) `" msgstr ":func:`math.ceil(x) `" -#: ../../library/stdtypes.rst:394 +#: ../../builtins/stdtypes.rst:394 msgid "the least :class:`~numbers.Integral` >= *x*" msgstr "das kleinste :class:`~numbers.Integral` >= *x*" -#: ../../library/stdtypes.rst:398 +#: ../../builtins/stdtypes.rst:398 msgid "" "For additional numeric operations see the :mod:`math` and :mod:`cmath` " "modules." @@ -813,11 +815,11 @@ msgstr "" "Weitere numerische Operationen finden sich in den Modulen :mod:`math` und :" "mod:`cmath`." -#: ../../library/stdtypes.rst:407 +#: ../../builtins/stdtypes.rst:407 msgid "Bitwise Operations on Integer Types" msgstr "Bitweise Operationen auf Ganzzahl-Typen" -#: ../../library/stdtypes.rst:421 +#: ../../builtins/stdtypes.rst:421 msgid "" "Bitwise operations only make sense for integers. The result of bitwise " "operations is calculated as though carried out in two's complement with an " @@ -827,7 +829,7 @@ msgstr "" "bitweiser Operationen wird so berechnet, als würde es im Zweierkomplement " "mit einer unendlichen Anzahl von Vorzeichenbits ausgeführt." -#: ../../library/stdtypes.rst:425 +#: ../../builtins/stdtypes.rst:425 msgid "" "The priorities of the binary bitwise operations are all lower than the " "numeric operations and higher than the comparisons; the unary operation " @@ -839,97 +841,97 @@ msgstr "" "Operation ``~`` hat die gleiche Priorität wie die anderen unären numerischen " "Operationen (``+`` und ``-``)." -#: ../../library/stdtypes.rst:429 +#: ../../builtins/stdtypes.rst:429 msgid "This table lists the bitwise operations sorted in ascending priority:" msgstr "" "Diese Tabelle listet die bitweisen Operationen auf, sortiert nach " "aufsteigender Priorität:" -#: ../../library/stdtypes.rst:434 +#: ../../builtins/stdtypes.rst:434 msgid "``x | y``" msgstr "``x | y``" -#: ../../library/stdtypes.rst:434 +#: ../../builtins/stdtypes.rst:434 msgid "bitwise :dfn:`or` of *x* and *y*" msgstr "bitweises :dfn:`oder` von *x* und *y*" -#: ../../library/stdtypes.rst:434 ../../library/stdtypes.rst:437 -#: ../../library/stdtypes.rst:440 ../../library/stdtypes.rst:3228 -#: ../../library/stdtypes.rst:3232 ../../library/stdtypes.rst:4525 -#: ../../library/stdtypes.rst:4529 +#: ../../builtins/stdtypes.rst:434 ../../builtins/stdtypes.rst:437 +#: ../../builtins/stdtypes.rst:440 ../../builtins/stdtypes.rst:3235 +#: ../../builtins/stdtypes.rst:3239 ../../builtins/stdtypes.rst:4537 +#: ../../builtins/stdtypes.rst:4541 msgid "\\(4)" msgstr "\\(4)" -#: ../../library/stdtypes.rst:437 +#: ../../builtins/stdtypes.rst:437 msgid "``x ^ y``" msgstr "``x ^ y``" -#: ../../library/stdtypes.rst:437 +#: ../../builtins/stdtypes.rst:437 msgid "bitwise :dfn:`exclusive or` of *x* and *y*" msgstr "bitweises :dfn:`exklusives oder` von *x* und *y*" -#: ../../library/stdtypes.rst:440 +#: ../../builtins/stdtypes.rst:440 msgid "``x & y``" msgstr "``x & y``" -#: ../../library/stdtypes.rst:440 +#: ../../builtins/stdtypes.rst:440 msgid "bitwise :dfn:`and` of *x* and *y*" msgstr "bitweises :dfn:`und` von *x* und *y*" -#: ../../library/stdtypes.rst:443 +#: ../../builtins/stdtypes.rst:443 msgid "``x << n``" msgstr "``x << n``" -#: ../../library/stdtypes.rst:443 +#: ../../builtins/stdtypes.rst:443 msgid "*x* shifted left by *n* bits" msgstr "*x* um *n* Bits nach links verschoben" -#: ../../library/stdtypes.rst:443 +#: ../../builtins/stdtypes.rst:443 msgid "(1)(2)" msgstr "(1)(2)" -#: ../../library/stdtypes.rst:445 +#: ../../builtins/stdtypes.rst:445 msgid "``x >> n``" msgstr "``x >> n``" -#: ../../library/stdtypes.rst:445 +#: ../../builtins/stdtypes.rst:445 msgid "*x* shifted right by *n* bits" msgstr "*x* um *n* Bits nach rechts verschoben" -#: ../../library/stdtypes.rst:445 +#: ../../builtins/stdtypes.rst:445 msgid "(1)(3)" msgstr "(1)(3)" -#: ../../library/stdtypes.rst:447 +#: ../../builtins/stdtypes.rst:447 msgid "``~x``" msgstr "``~x``" -#: ../../library/stdtypes.rst:447 +#: ../../builtins/stdtypes.rst:447 msgid "the bits of *x* inverted" msgstr "die Bits von *x* invertiert" -#: ../../library/stdtypes.rst:453 +#: ../../builtins/stdtypes.rst:453 msgid "" "Negative shift counts are illegal and cause a :exc:`ValueError` to be raised." msgstr "" "Negative Shift-Werte sind unzulässig und führen dazu, dass ein :exc:" "`ValueError` ausgelöst wird." -#: ../../library/stdtypes.rst:456 +#: ../../builtins/stdtypes.rst:456 msgid "" "A left shift by *n* bits is equivalent to multiplication by ``pow(2, n)``." msgstr "" "Ein Linksshift um *n* Bits ist äquivalent zur Multiplikation mit ``pow(2, " "n)``." -#: ../../library/stdtypes.rst:459 +#: ../../builtins/stdtypes.rst:459 msgid "" "A right shift by *n* bits is equivalent to floor division by ``pow(2, n)``." msgstr "" "Ein Rechtsshift um *n* Bits ist äquivalent zur Abrundungsdivision (Floor " "Division) durch ``pow(2, n)``." -#: ../../library/stdtypes.rst:462 +#: ../../builtins/stdtypes.rst:462 msgid "" "Performing these calculations with at least one extra sign extension bit in " "a finite two's complement representation (a working bit-width of ``1 + max(x." @@ -942,11 +944,11 @@ msgstr "" "mehr) reicht aus, um das gleiche Ergebnis zu erhalten, als gäbe es eine " "unendliche Anzahl von Vorzeichenbits." -#: ../../library/stdtypes.rst:469 +#: ../../builtins/stdtypes.rst:469 msgid "Additional Methods on Integer Types" msgstr "Zusätzliche Methoden zu Ganzzahl-Typen" -#: ../../library/stdtypes.rst:471 +#: ../../builtins/stdtypes.rst:471 msgid "" "The int type implements the :class:`numbers.Integral` :term:`abstract base " "class`. In addition, it provides a few more methods:" @@ -955,7 +957,7 @@ msgstr "" "Basisklasse `. Darüber hinaus stellt er einige weitere " "Methoden zur Verfügung:" -#: ../../library/stdtypes.rst:476 +#: ../../builtins/stdtypes.rst:476 msgid "" "Return the number of bits necessary to represent an integer in binary, " "excluding the sign and leading zeros::" @@ -963,7 +965,7 @@ msgstr "" "Gibt die Anzahl der Bits zurück, die erforderlich sind, um eine Ganzzahl " "binär darzustellen, ausschließlich des Vorzeichens und führender Nullen::" -#: ../../library/stdtypes.rst:479 +#: ../../builtins/stdtypes.rst:479 msgid "" ">>> n = -37\n" ">>> bin(n)\n" @@ -977,7 +979,7 @@ msgstr "" ">>> n.bit_length()\n" "6" -#: ../../library/stdtypes.rst:485 +#: ../../builtins/stdtypes.rst:485 msgid "" "More precisely, if ``x`` is nonzero, then ``x.bit_length()`` is the unique " "positive integer ``k`` such that ``2**(k-1) <= abs(x) < 2**k``. " @@ -991,12 +993,12 @@ msgstr "" "gerundeten Logarithmus zu haben, dann ist ``k = 1 + int(log(abs(x), 2))``. " "Wenn ``x`` null ist, gibt ``x.bit_length()`` den Wert ``0`` zurück." -#: ../../library/stdtypes.rst:491 ../../library/stdtypes.rst:514 -#: ../../library/stdtypes.rst:559 ../../library/stdtypes.rst:603 +#: ../../builtins/stdtypes.rst:491 ../../builtins/stdtypes.rst:514 +#: ../../builtins/stdtypes.rst:559 ../../builtins/stdtypes.rst:603 msgid "Equivalent to::" msgstr "Äquivalent zu::" -#: ../../library/stdtypes.rst:493 +#: ../../builtins/stdtypes.rst:493 msgid "" "def bit_length(self):\n" " s = bin(self) # binary representation: bin(-37) --> '-0b100101'\n" @@ -1008,7 +1010,7 @@ msgstr "" " s = s.lstrip('-0b') # remove leading zeros and minus sign\n" " return len(s) # len('100101') --> 6" -#: ../../library/stdtypes.rst:502 +#: ../../builtins/stdtypes.rst:502 msgid "" "Return the number of ones in the binary representation of the absolute value " "of the integer. This is also known as the population count. Example::" @@ -1017,7 +1019,7 @@ msgstr "" "Ganzzahl zurück. Dies ist auch als Popcount (Population Count) bekannt. " "Beispiel::" -#: ../../library/stdtypes.rst:506 +#: ../../builtins/stdtypes.rst:506 msgid "" ">>> n = 19\n" ">>> bin(n)\n" @@ -1035,7 +1037,7 @@ msgstr "" ">>> (-n).bit_count()\n" "3" -#: ../../library/stdtypes.rst:516 +#: ../../builtins/stdtypes.rst:516 msgid "" "def bit_count(self):\n" " return bin(self).count(\"1\")" @@ -1043,11 +1045,11 @@ msgstr "" "def bit_count(self):\n" " return bin(self).count(\"1\")" -#: ../../library/stdtypes.rst:523 +#: ../../builtins/stdtypes.rst:523 msgid "Return an array of bytes representing an integer." msgstr "Gibt ein Byte-Array zurück, das eine Ganzzahl darstellt." -#: ../../library/stdtypes.rst:535 +#: ../../builtins/stdtypes.rst:535 msgid "" "The integer is represented using *length* bytes, and defaults to 1. An :exc:" "`OverflowError` is raised if the integer is not representable with the given " @@ -1057,7 +1059,7 @@ msgstr "" "`OverflowError` wird ausgelöst, wenn die Ganzzahl mit der angegebenen Anzahl " "von Bytes nicht darstellbar ist." -#: ../../library/stdtypes.rst:539 +#: ../../builtins/stdtypes.rst:539 msgid "" "The *byteorder* argument determines the byte order used to represent the " "integer, and defaults to ``\"big\"``. If *byteorder* is ``\"big\"``, the " @@ -1070,7 +1072,7 @@ msgstr "" "des Byte-Arrays. Wenn *byteorder* ``\"little\"`` ist, befindet sich das " "höchstwertige Byte am Ende des Byte-Arrays." -#: ../../library/stdtypes.rst:545 +#: ../../builtins/stdtypes.rst:545 msgid "" "The *signed* argument determines whether two's complement is used to " "represent the integer. If *signed* is ``False`` and a negative integer is " @@ -1082,7 +1084,7 @@ msgstr "" "negative Ganzzahl übergeben wird, wird ein :exc:`OverflowError` ausgelöst. " "Der Standardwert für *signed* ist ``False``." -#: ../../library/stdtypes.rst:550 +#: ../../builtins/stdtypes.rst:550 msgid "" "The default values can be used to conveniently turn an integer into a single " "byte object::" @@ -1090,7 +1092,7 @@ msgstr "" "Die Standardwerte können verwendet werden, um eine Ganzzahl bequem in ein " "einzelnes Byte-Objekt umzuwandeln::" -#: ../../library/stdtypes.rst:553 +#: ../../builtins/stdtypes.rst:553 msgid "" ">>> (65).to_bytes()\n" "b'A'" @@ -1098,7 +1100,7 @@ msgstr "" ">>> (65).to_bytes()\n" "b'A'" -#: ../../library/stdtypes.rst:556 +#: ../../builtins/stdtypes.rst:556 msgid "" "However, when using the default arguments, don't try to convert a value " "greater than 255 or you'll get an :exc:`OverflowError`." @@ -1107,7 +1109,7 @@ msgstr "" "werden, einen Wert größer als 255 zu konvertieren, da sonst ein :exc:" "`OverflowError` auftritt." -#: ../../library/stdtypes.rst:561 +#: ../../builtins/stdtypes.rst:561 msgid "" "def to_bytes(n, length=1, byteorder='big', signed=False):\n" " if byteorder == 'little':\n" @@ -1129,17 +1131,17 @@ msgstr "" "\n" " return bytes((n >> i*8) & 0xff for i in order)" -#: ../../library/stdtypes.rst:572 +#: ../../builtins/stdtypes.rst:572 msgid "Added default argument values for ``length`` and ``byteorder``." msgstr "Standard-Argumentwerte für ``length`` und ``byteorder`` hinzugefügt." -#: ../../library/stdtypes.rst:577 +#: ../../builtins/stdtypes.rst:577 msgid "Return the integer represented by the given array of bytes." msgstr "" "Gibt die Ganzzahl zurück, die durch das angegebene Byte-Array dargestellt " "wird." -#: ../../library/stdtypes.rst:590 +#: ../../builtins/stdtypes.rst:590 msgid "" "The argument *bytes* must either be a :term:`bytes-like object` or an " "iterable producing bytes." @@ -1147,7 +1149,7 @@ msgstr "" "Das Argument *bytes* muss entweder ein :term:`Byte-ähnliches Objekt ` oder ein Iterable sein, das Bytes erzeugt." -#: ../../library/stdtypes.rst:593 +#: ../../builtins/stdtypes.rst:593 msgid "" "The *byteorder* argument determines the byte order used to represent the " "integer, and defaults to ``\"big\"``. If *byteorder* is ``\"big\"``, the " @@ -1164,7 +1166,7 @@ msgstr "" "des Host-Systems abzufragen, verwende :data:`sys.byteorder` als Wert für die " "Bytereihenfolge." -#: ../../library/stdtypes.rst:600 +#: ../../builtins/stdtypes.rst:600 msgid "" "The *signed* argument indicates whether two's complement is used to " "represent the integer." @@ -1172,7 +1174,7 @@ msgstr "" "Das Argument *signed* gibt an, ob das Zweierkomplement zur Darstellung der " "Ganzzahl verwendet wird." -#: ../../library/stdtypes.rst:605 +#: ../../builtins/stdtypes.rst:605 msgid "" "def from_bytes(bytes, byteorder='big', signed=False):\n" " if byteorder == 'little':\n" @@ -1202,11 +1204,11 @@ msgstr "" "\n" " return n" -#: ../../library/stdtypes.rst:620 +#: ../../builtins/stdtypes.rst:620 msgid "Added default argument value for ``byteorder``." msgstr "Standard-Argumentwert für ``byteorder`` hinzugefügt." -#: ../../library/stdtypes.rst:625 +#: ../../builtins/stdtypes.rst:625 msgid "" "Return a pair of integers whose ratio is equal to the original integer and " "has a positive denominator. The integer ratio of integers (whole numbers) " @@ -1217,7 +1219,7 @@ msgstr "" "Ganzzahlverhältnis von ganzen Zahlen ist immer die Ganzzahl als Zähler und " "``1`` als Nenner." -#: ../../library/stdtypes.rst:634 +#: ../../builtins/stdtypes.rst:634 msgid "" "Returns ``True``. Exists for duck type compatibility with :meth:`float." "is_integer`." @@ -1225,11 +1227,11 @@ msgstr "" "Gibt ``True`` zurück. Existiert für Duck-Typing-Kompatibilität mit :meth:" "`float.is_integer`." -#: ../../library/stdtypes.rst:639 +#: ../../builtins/stdtypes.rst:639 msgid "Additional Methods on Float" msgstr "Zusätzliche Methoden zu Float" -#: ../../library/stdtypes.rst:641 +#: ../../builtins/stdtypes.rst:641 msgid "" "The float type implements the :class:`numbers.Real` :term:`abstract base " "class`. float also has the following additional methods." @@ -1238,14 +1240,14 @@ msgstr "" "Basisklasse `. float verfügt außerdem über die " "folgenden zusätzlichen Methoden." -#: ../../library/stdtypes.rst:646 +#: ../../builtins/stdtypes.rst:646 msgid "" "Class method to return a floating-point number constructed from a number *x*." msgstr "" "Klassenmethode, die eine aus einer Zahl *x* konstruierte Gleitkommazahl " "zurückgibt." -#: ../../library/stdtypes.rst:648 +#: ../../builtins/stdtypes.rst:648 msgid "" "If the argument is an integer or a floating-point number, a floating-point " "number with the same value (within Python's floating-point precision) is " @@ -1258,7 +1260,7 @@ msgstr "" "Wertebereichs eines Python-Floats liegt, wird ein :exc:`OverflowError` " "ausgelöst." -#: ../../library/stdtypes.rst:653 +#: ../../builtins/stdtypes.rst:653 msgid "" "For a general Python object ``x``, ``float.from_number(x)`` delegates to ``x." "__float__()``. If :meth:`~object.__float__` is not defined then it falls " @@ -1268,7 +1270,7 @@ msgstr "" "an ``x.__float__()``. Wenn :meth:`~object.__float__` nicht definiert ist, " "fällt es auf :meth:`~object.__index__` zurück." -#: ../../library/stdtypes.rst:663 +#: ../../builtins/stdtypes.rst:663 msgid "" "Return a pair of integers whose ratio is exactly equal to the original " "float. The ratio is in lowest terms and has a positive denominator. Raises :" @@ -1279,7 +1281,7 @@ msgstr "" "hat einen positiven Nenner. Löst bei unendlichen Werten einen :exc:" "`OverflowError` und bei NaNs einen :exc:`ValueError` aus." -#: ../../library/stdtypes.rst:670 +#: ../../builtins/stdtypes.rst:670 msgid "" "Return ``True`` if the float instance is finite with integral value, and " "``False`` otherwise::" @@ -1287,7 +1289,7 @@ msgstr "" "Gibt ``True`` zurück, wenn die Float-Instanz endlich mit ganzzahligem Wert " "ist, andernfalls ``False``::" -#: ../../library/stdtypes.rst:673 +#: ../../builtins/stdtypes.rst:673 msgid "" ">>> (-2.0).is_integer()\n" "True\n" @@ -1299,7 +1301,7 @@ msgstr "" ">>> (3.2).is_integer()\n" "False" -#: ../../library/stdtypes.rst:678 +#: ../../builtins/stdtypes.rst:678 msgid "" "Two methods support conversion to and from hexadecimal strings. Since " "Python's floats are stored internally as binary numbers, converting a float " @@ -1315,7 +1317,7 @@ msgstr "" "Strings die exakte Darstellung und Spezifikation von Gleitkommazahlen. Dies " "kann beim Debuggen und bei numerischen Berechnungen nützlich sein." -#: ../../library/stdtypes.rst:689 +#: ../../builtins/stdtypes.rst:689 msgid "" "Return a representation of a floating-point number as a hexadecimal string. " "For finite floating-point numbers, this representation will always include a " @@ -1325,7 +1327,7 @@ msgstr "" "Für endliche Gleitkommazahlen enthält diese Darstellung immer ein führendes " "``0x`` sowie ein nachgestelltes ``p`` und einen Exponenten." -#: ../../library/stdtypes.rst:697 +#: ../../builtins/stdtypes.rst:697 msgid "" "Class method to return the float represented by a hexadecimal string *s*. " "The string *s* may have leading and trailing whitespace." @@ -1334,7 +1336,7 @@ msgstr "" "Float zurückgibt. Der String *s* darf führende und nachgestellte Leerzeichen " "enthalten." -#: ../../library/stdtypes.rst:702 +#: ../../builtins/stdtypes.rst:702 msgid "" "Note that :meth:`float.hex` is an instance method, while :meth:`float." "fromhex` is a class method." @@ -1342,15 +1344,15 @@ msgstr "" "Beachte, dass :meth:`float.hex` eine Instanzmethode ist, während :meth:" "`float.fromhex` eine Klassenmethode ist." -#: ../../library/stdtypes.rst:705 +#: ../../builtins/stdtypes.rst:705 msgid "A hexadecimal string takes the form::" msgstr "Ein Hexadezimal-String hat die Form::" -#: ../../library/stdtypes.rst:707 +#: ../../builtins/stdtypes.rst:707 msgid "[sign] ['0x'] integer ['.' fraction] ['p' exponent]" msgstr "[sign] ['0x'] integer ['.' fraction] ['p' exponent]" -#: ../../library/stdtypes.rst:709 +#: ../../builtins/stdtypes.rst:709 msgid "" "where the optional ``sign`` may be either ``+`` or ``-``, ``integer`` and " "``fraction`` are strings of hexadecimal digits, and ``exponent`` is a " @@ -1375,7 +1377,7 @@ msgstr "" "Java's ``Double.toHexString`` erzeugte Hexadezimal-Strings werden von :meth:" "`float.fromhex` akzeptiert." -#: ../../library/stdtypes.rst:722 +#: ../../builtins/stdtypes.rst:722 msgid "" "Note that the exponent is written in decimal rather than hexadecimal, and " "that it gives the power of 2 by which to multiply the coefficient. For " @@ -1387,7 +1389,7 @@ msgstr "" "Beispielsweise stellt der Hexadezimal-String ``0x3.a7p10`` die " "Gleitkommazahl ``(3 + 10./16 + 7./16**2) * 2.0**10`` bzw. ``3740.0`` dar::" -#: ../../library/stdtypes.rst:728 +#: ../../builtins/stdtypes.rst:728 msgid "" ">>> float.fromhex('0x3.a7p10')\n" "3740.0" @@ -1395,7 +1397,7 @@ msgstr "" ">>> float.fromhex('0x3.a7p10')\n" "3740.0" -#: ../../library/stdtypes.rst:732 +#: ../../builtins/stdtypes.rst:732 msgid "" "Applying the reverse conversion to ``3740.0`` gives a different hexadecimal " "string representing the same number::" @@ -1403,7 +1405,7 @@ msgstr "" "Die Anwendung der umgekehrten Konvertierung auf ``3740.0`` ergibt einen " "anderen Hexadezimal-String, der dieselbe Zahl darstellt::" -#: ../../library/stdtypes.rst:735 +#: ../../builtins/stdtypes.rst:735 msgid "" ">>> float.hex(3740.0)\n" "'0x1.d380000000000p+11'" @@ -1411,11 +1413,11 @@ msgstr "" ">>> float.hex(3740.0)\n" "'0x1.d380000000000p+11'" -#: ../../library/stdtypes.rst:740 +#: ../../builtins/stdtypes.rst:740 msgid "Additional Methods on Complex" msgstr "Zusätzliche Methoden zu Complex" -#: ../../library/stdtypes.rst:742 +#: ../../builtins/stdtypes.rst:742 msgid "" "The :class:`!complex` type implements the :class:`numbers.Complex` :term:" "`abstract base class`. :class:`!complex` also has the following additional " @@ -1425,11 +1427,11 @@ msgstr "" "`abstrakte Basisklasse `. :class:`!complex` verfügt " "außerdem über die folgenden zusätzlichen Methoden." -#: ../../library/stdtypes.rst:748 +#: ../../builtins/stdtypes.rst:748 msgid "Class method to convert a number to a complex number." msgstr "Klassenmethode zum Konvertieren einer Zahl in eine komplexe Zahl." -#: ../../library/stdtypes.rst:750 +#: ../../builtins/stdtypes.rst:750 msgid "" "For a general Python object ``x``, ``complex.from_number(x)`` delegates to " "``x.__complex__()``. If :meth:`~object.__complex__` is not defined then it " @@ -1441,11 +1443,11 @@ msgstr "" "ist, fällt es auf :meth:`~object.__float__` zurück. Wenn :meth:`!__float__` " "nicht definiert ist, fällt es auf :meth:`~object.__index__` zurück." -#: ../../library/stdtypes.rst:761 +#: ../../builtins/stdtypes.rst:761 msgid "Hashing of numeric types" msgstr "Hashing von numerischen Typen" -#: ../../library/stdtypes.rst:763 +#: ../../builtins/stdtypes.rst:763 msgid "" "For numbers ``x`` and ``y``, possibly of different types, it's a requirement " "that ``hash(x) == hash(y)`` whenever ``x == y`` (see the :meth:`~object." @@ -1474,7 +1476,7 @@ msgstr "" "``P`` gegeben. Der Wert von ``P`` wird Python als das Attribut :attr:`~sys." "hash_info.modulus` von :data:`sys.hash_info` zur Verfügung gestellt." -#: ../../library/stdtypes.rst:778 +#: ../../builtins/stdtypes.rst:778 msgid "" "Currently, the prime used is ``P = 2**31 - 1`` on machines with 32-bit C " "longs and ``P = 2**61 - 1`` on machines with 64-bit C longs." @@ -1482,11 +1484,11 @@ msgstr "" "Derzeit ist die verwendete Primzahl ``P = 2**31 - 1`` auf Systemen mit 32-" "Bit-C-Longs und ``P = 2**61 - 1`` auf Systemen mit 64-Bit-C-Longs." -#: ../../library/stdtypes.rst:781 +#: ../../builtins/stdtypes.rst:781 msgid "Here are the rules in detail:" msgstr "Hier sind die Regeln im Detail:" -#: ../../library/stdtypes.rst:783 +#: ../../builtins/stdtypes.rst:783 msgid "" "If ``x = m / n`` is a nonnegative rational number and ``n`` is not divisible " "by ``P``, define ``hash(x)`` as ``m * invmod(n, P) % P``, where ``invmod(n, " @@ -1496,7 +1498,7 @@ msgstr "" "durch ``P`` teilbar ist, definiere ``hash(x)`` als ``m * invmod(n, P) % P``, " "wobei ``invmod(n, P)`` das Inverse von ``n`` modulo ``P`` liefert." -#: ../../library/stdtypes.rst:787 +#: ../../builtins/stdtypes.rst:787 msgid "" "If ``x = m / n`` is a nonnegative rational number and ``n`` is divisible by " "``P`` (but ``m`` is not) then ``n`` has no inverse modulo ``P`` and the rule " @@ -1508,7 +1510,7 @@ msgstr "" "``P`` und die obige Regel greift nicht; in diesem Fall definiere ``hash(x)`` " "als den konstanten Wert ``sys.hash_info.inf``." -#: ../../library/stdtypes.rst:792 +#: ../../builtins/stdtypes.rst:792 msgid "" "If ``x = m / n`` is a negative rational number define ``hash(x)`` as ``-" "hash(-x)``. If the resulting hash is ``-1``, replace it with ``-2``." @@ -1517,7 +1519,7 @@ msgstr "" "als ``-hash(-x)``. Wenn der resultierende Hash ``-1`` ist, ersetze ihn durch " "``-2``." -#: ../../library/stdtypes.rst:796 +#: ../../builtins/stdtypes.rst:796 msgid "" "The particular values ``sys.hash_info.inf`` and ``-sys.hash_info.inf`` are " "used as hash values for positive infinity or negative infinity " @@ -1526,7 +1528,7 @@ msgstr "" "Die speziellen Werte ``sys.hash_info.inf`` und ``-sys.hash_info.inf`` werden " "als Hash-Werte für positive bzw. negative Unendlichkeit verwendet." -#: ../../library/stdtypes.rst:800 +#: ../../builtins/stdtypes.rst:800 msgid "" "For a :class:`complex` number ``z``, the hash values of the real and " "imaginary parts are combined by computing ``hash(z.real) + sys.hash_info." @@ -1541,7 +1543,7 @@ msgstr "" "width - 1))`` liegt. Wenn das Ergebnis wiederum ``-1`` ist, wird es durch " "``-2`` ersetzt." -#: ../../library/stdtypes.rst:808 +#: ../../builtins/stdtypes.rst:808 msgid "" "To clarify the above rules, here's some example Python code, equivalent to " "the built-in hash, for computing the hash of a rational number, :class:" @@ -1551,7 +1553,7 @@ msgstr "" "der dem eingebauten Hash entspricht, zur Berechnung des Hash-Werts einer " "rationalen Zahl, eines :class:`float` oder :class:`complex`::" -#: ../../library/stdtypes.rst:813 +#: ../../builtins/stdtypes.rst:813 msgid "" "import sys, math\n" "\n" @@ -1651,11 +1653,11 @@ msgstr "" " hash_value = -2\n" " return hash_value" -#: ../../library/stdtypes.rst:864 +#: ../../builtins/stdtypes.rst:864 msgid "Boolean Type - :class:`bool`" msgstr "Boolescher Typ – :class:`bool`" -#: ../../library/stdtypes.rst:866 +#: ../../builtins/stdtypes.rst:866 msgid "" "Booleans represent truth values. The :class:`bool` type has exactly two " "constant instances: ``True`` and ``False``." @@ -1663,7 +1665,7 @@ msgstr "" "Booleans stellen Wahrheitswerte dar. Der Typ :class:`bool` hat genau zwei " "konstante Instanzen: ``True`` und ``False``." -#: ../../library/stdtypes.rst:874 +#: ../../builtins/stdtypes.rst:874 msgid "" "The built-in function :func:`bool` converts any value to a boolean, if the " "value can be interpreted as a truth value (see section :ref:`truth` above)." @@ -1672,7 +1674,7 @@ msgstr "" "booleschen Wert, sofern der Wert als Wahrheitswert interpretiert werden kann " "(siehe Abschnitt :ref:`truth` oben)." -#: ../../library/stdtypes.rst:877 +#: ../../builtins/stdtypes.rst:877 msgid "" "For logical operations, use the :ref:`boolean operators ` ``and``, " "``or`` and ``not``. When applying the bitwise operators ``&``, ``|``, ``^`` " @@ -1687,7 +1689,7 @@ msgstr "" "entspricht. Allerdings sollten die logischen Operatoren ``and``, ``or`` und " "``!=`` gegenüber ``&``, ``|`` und ``^`` bevorzugt werden." -#: ../../library/stdtypes.rst:886 +#: ../../builtins/stdtypes.rst:886 msgid "" "The use of the bitwise inversion operator ``~`` is deprecated and will raise " "an error in Python 3.16." @@ -1695,7 +1697,7 @@ msgstr "" "Die Verwendung des bitweisen Inversionsoperators ``~`` ist veraltet und wird " "in Python 3.16 einen Fehler auslösen." -#: ../../library/stdtypes.rst:889 +#: ../../builtins/stdtypes.rst:889 msgid "" ":class:`bool` is a subclass of :class:`int` (see :ref:`typesnumeric`). In " "many numeric contexts, ``False`` and ``True`` behave like the integers 0 and " @@ -1708,11 +1710,11 @@ msgstr "" "sich darauf zu verlassen; konvertiere stattdessen explizit mittels :func:" "`int`." -#: ../../library/stdtypes.rst:897 +#: ../../builtins/stdtypes.rst:897 msgid "Iterator Types" msgstr "Iterator-Typen" -#: ../../library/stdtypes.rst:905 +#: ../../builtins/stdtypes.rst:905 msgid "" "Python supports a concept of iteration over containers. This is implemented " "using two distinct methods; these are used to allow user-defined classes to " @@ -1725,7 +1727,7 @@ msgstr "" "weiter unten detaillierter beschrieben werden, unterstützen die " "Iterationsmethoden immer." -#: ../../library/stdtypes.rst:910 +#: ../../builtins/stdtypes.rst:910 msgid "" "One method needs to be defined for container objects to provide :term:" "`iterable` support:" @@ -1733,7 +1735,7 @@ msgstr "" "Für Container-Objekte muss eine Methode definiert werden, um Unterstützung " "für :term:`Iterierbares ` bereitzustellen:" -#: ../../library/stdtypes.rst:917 +#: ../../builtins/stdtypes.rst:917 msgid "" "Return an :term:`iterator` object. The object is required to support the " "iterator protocol described below. If a container supports different types " @@ -1754,7 +1756,7 @@ msgstr "" "`~PyTypeObject.tp_iter`-Slot der Typstruktur für Python-Objekte in der " "Python/C-API." -#: ../../library/stdtypes.rst:926 +#: ../../builtins/stdtypes.rst:926 msgid "" "The iterator objects themselves are required to support the following two " "methods, which together form the :dfn:`iterator protocol`:" @@ -1762,7 +1764,7 @@ msgstr "" "Die Iterator-Objekte selbst müssen die folgenden zwei Methoden unterstützen, " "die zusammen das :dfn:`Iterator-Protokoll` bilden:" -#: ../../library/stdtypes.rst:932 +#: ../../builtins/stdtypes.rst:932 msgid "" "Return the :term:`iterator` object itself. This is required to allow both " "containers and iterators to be used with the :keyword:`for` and :keyword:" @@ -1775,7 +1777,7 @@ msgstr "" "Methode entspricht dem :c:member:`~PyTypeObject.tp_iter`-Slot der " "Typstruktur für Python-Objekte in der Python/C-API." -#: ../../library/stdtypes.rst:941 +#: ../../builtins/stdtypes.rst:941 msgid "" "Return the next item from the :term:`iterator`. If there are no further " "items, raise the :exc:`StopIteration` exception. This method corresponds to " @@ -1788,7 +1790,7 @@ msgstr "" "`~PyTypeObject.tp_iternext`-Slot der Typstruktur für Python-Objekte in der " "Python/C-API." -#: ../../library/stdtypes.rst:946 +#: ../../builtins/stdtypes.rst:946 msgid "" "Python defines several iterator objects to support iteration over general " "and specific sequence types, dictionaries, and other more specialized " @@ -1800,7 +1802,7 @@ msgstr "" "Formen zu unterstützen. Die konkreten Typen sind über ihre Implementierung " "des Iterator-Protokolls hinaus nicht von Bedeutung." -#: ../../library/stdtypes.rst:951 +#: ../../builtins/stdtypes.rst:951 msgid "" "Once an iterator's :meth:`~iterator.__next__` method raises :exc:" "`StopIteration`, it must continue to do so on subsequent calls. " @@ -1811,11 +1813,11 @@ msgstr "" "weiterhin tun. Implementierungen, die diese Eigenschaft nicht einhalten, " "gelten als fehlerhaft." -#: ../../library/stdtypes.rst:959 +#: ../../builtins/stdtypes.rst:959 msgid "Generator Types" msgstr "Generator-Typen" -#: ../../library/stdtypes.rst:961 +#: ../../builtins/stdtypes.rst:961 msgid "" "Python's :term:`generator`\\s provide a convenient way to implement the " "iterator protocol. If a container object's :meth:`~object.__iter__` method " @@ -1833,11 +1835,11 @@ msgstr "" "__next__` bereitstellt. Weitere Informationen über Generatoren finden sich " "in :ref:`der Dokumentation zum yield-Ausdruck `." -#: ../../library/stdtypes.rst:973 +#: ../../builtins/stdtypes.rst:973 msgid "Sequence Types --- :class:`list`, :class:`tuple`, :class:`range`" msgstr "Sequenztypen – :class:`list`, :class:`tuple`, :class:`range`" -#: ../../library/stdtypes.rst:975 +#: ../../builtins/stdtypes.rst:975 msgid "" "There are three basic sequence types: lists, tuples, and range objects. " "Additional sequence types tailored for processing of :ref:`binary data " @@ -1849,11 +1851,11 @@ msgstr "" "` und :ref:`Text-Strings ` ausgelegt sind, werden in " "eigenen Abschnitten beschrieben." -#: ../../library/stdtypes.rst:984 +#: ../../builtins/stdtypes.rst:984 msgid "Common Sequence Operations" msgstr "Gemeinsame Sequenzoperationen" -#: ../../library/stdtypes.rst:988 +#: ../../builtins/stdtypes.rst:988 msgid "" "The operations in the following table are supported by most sequence types, " "both mutable and immutable. The :class:`collections.abc.Sequence` ABC is " @@ -1866,7 +1868,7 @@ msgstr "" "Implementierung dieser Operationen auf benutzerdefinierten Sequenztypen zu " "erleichtern." -#: ../../library/stdtypes.rst:993 +#: ../../builtins/stdtypes.rst:993 msgid "" "This table lists the sequence operations sorted in ascending priority. In " "the table, *s* and *t* are sequences of the same type, *n*, *i*, *j* and *k* " @@ -1878,7 +1880,7 @@ msgstr "" "*i*, *j* und *k* sind Ganzzahlen und *x* ist ein beliebiges Objekt, das alle " "durch *s* auferlegten Typ- und Wertebeschränkungen erfüllt." -#: ../../library/stdtypes.rst:998 +#: ../../builtins/stdtypes.rst:998 msgid "" "The ``in`` and ``not in`` operations have the same priorities as the " "comparison operations. The ``+`` (concatenation) and ``*`` (repetition) " @@ -1890,109 +1892,114 @@ msgstr "" "(Wiederholung) haben die gleiche Priorität wie die entsprechenden " "numerischen Operationen. [3]_" -#: ../../library/stdtypes.rst:1017 +#: ../../builtins/stdtypes.rst:1002 +msgid "" +"See :ref:`time-complexity` for the costs of the various sequence operations." +msgstr "" + +#: ../../builtins/stdtypes.rst:1020 msgid "``x in s``" msgstr "``x in s``" -#: ../../library/stdtypes.rst:1017 +#: ../../builtins/stdtypes.rst:1020 msgid "``True`` if an item of *s* is equal to *x*, else ``False``" msgstr "" "``True``, wenn ein Element von *s* gleich *x* ist, andernfalls ``False``" -#: ../../library/stdtypes.rst:1020 +#: ../../builtins/stdtypes.rst:1023 msgid "``x not in s``" msgstr "``x not in s``" -#: ../../library/stdtypes.rst:1020 +#: ../../builtins/stdtypes.rst:1023 msgid "``False`` if an item of *s* is equal to *x*, else ``True``" msgstr "" "``False``, wenn ein Element von *s* gleich *x* ist, andernfalls ``True``" -#: ../../library/stdtypes.rst:1023 +#: ../../builtins/stdtypes.rst:1026 msgid "``s + t``" msgstr "``s + t``" -#: ../../library/stdtypes.rst:1023 +#: ../../builtins/stdtypes.rst:1026 msgid "the concatenation of *s* and *t*" msgstr "die Verkettung von *s* und *t*" -#: ../../library/stdtypes.rst:1023 +#: ../../builtins/stdtypes.rst:1026 msgid "(6)(7)" msgstr "(6)(7)" -#: ../../library/stdtypes.rst:1026 +#: ../../builtins/stdtypes.rst:1029 msgid "``s * n`` or ``n * s``" msgstr "``s * n`` oder ``n * s``" -#: ../../library/stdtypes.rst:1026 +#: ../../builtins/stdtypes.rst:1029 msgid "equivalent to adding *s* to itself *n* times" msgstr "äquivalent dazu, *s* *n*-mal zu sich selbst zu addieren" -#: ../../library/stdtypes.rst:1026 +#: ../../builtins/stdtypes.rst:1029 msgid "(2)(7)" msgstr "(2)(7)" -#: ../../library/stdtypes.rst:1029 +#: ../../builtins/stdtypes.rst:1032 msgid "``s[i]``" msgstr "``s[i]``" -#: ../../library/stdtypes.rst:1029 +#: ../../builtins/stdtypes.rst:1032 msgid "*i*\\ th item of *s*, origin 0" msgstr "*i*-tes Element von *s*, beginnend bei 0" -#: ../../library/stdtypes.rst:1029 +#: ../../builtins/stdtypes.rst:1032 msgid "(3)(8)" msgstr "(3)(8)" -#: ../../library/stdtypes.rst:1031 +#: ../../builtins/stdtypes.rst:1034 msgid "``s[i:j]``" msgstr "``s[i:j]``" -#: ../../library/stdtypes.rst:1031 +#: ../../builtins/stdtypes.rst:1034 msgid "slice of *s* from *i* to *j*" msgstr "Ausschnitt (Slice) von *s* von *i* bis *j*" -#: ../../library/stdtypes.rst:1031 +#: ../../builtins/stdtypes.rst:1034 msgid "(3)(4)" msgstr "(3)(4)" -#: ../../library/stdtypes.rst:1033 +#: ../../builtins/stdtypes.rst:1036 msgid "``s[i:j:k]``" msgstr "``s[i:j:k]``" -#: ../../library/stdtypes.rst:1033 +#: ../../builtins/stdtypes.rst:1036 msgid "slice of *s* from *i* to *j* with step *k*" msgstr "Ausschnitt (Slice) von *s* von *i* bis *j* mit Schrittweite *k*" -#: ../../library/stdtypes.rst:1033 +#: ../../builtins/stdtypes.rst:1036 msgid "(3)(5)" msgstr "(3)(5)" -#: ../../library/stdtypes.rst:1036 +#: ../../builtins/stdtypes.rst:1039 msgid "``len(s)``" msgstr "``len(s)``" -#: ../../library/stdtypes.rst:1036 +#: ../../builtins/stdtypes.rst:1039 msgid "length of *s*" msgstr "Länge von *s*" -#: ../../library/stdtypes.rst:1038 +#: ../../builtins/stdtypes.rst:1041 msgid "``min(s)``" msgstr "``min(s)``" -#: ../../library/stdtypes.rst:1038 +#: ../../builtins/stdtypes.rst:1041 msgid "smallest item of *s*" msgstr "kleinstes Element von *s*" -#: ../../library/stdtypes.rst:1040 +#: ../../builtins/stdtypes.rst:1043 msgid "``max(s)``" msgstr "``max(s)``" -#: ../../library/stdtypes.rst:1040 +#: ../../builtins/stdtypes.rst:1043 msgid "largest item of *s*" msgstr "größtes Element von *s*" -#: ../../library/stdtypes.rst:1043 +#: ../../builtins/stdtypes.rst:1046 msgid "" "Sequences of the same type also support comparisons. In particular, tuples " "and lists are compared lexicographically by comparing corresponding " @@ -2007,7 +2014,7 @@ msgstr "" "müssen. (Vollständige Details finden sich unter :ref:`comparisons` in der " "Sprachreferenz.)" -#: ../../library/stdtypes.rst:1053 +#: ../../builtins/stdtypes.rst:1056 msgid "" "Forward and reversed iterators over mutable sequences access values using an " "index. That index will continue to march forward (or backward) even if the " @@ -2021,7 +2028,7 @@ msgstr "" "endet erst, wenn ein :exc:`IndexError` oder ein :exc:`StopIteration` " "auftritt (oder wenn der Index unter null fällt)." -#: ../../library/stdtypes.rst:1062 +#: ../../builtins/stdtypes.rst:1065 msgid "" "While the ``in`` and ``not in`` operations are used only for simple " "containment testing in the general case, some specialised sequences (such " @@ -2033,7 +2040,7 @@ msgstr "" "spezialisierte Sequenzen (wie :class:`str`, :class:`bytes` und :class:" "`bytearray`) diese auch für Teilsequenz-Prüfungen::" -#: ../../library/stdtypes.rst:1067 +#: ../../builtins/stdtypes.rst:1070 msgid "" ">>> \"gg\" in \"eggs\"\n" "True" @@ -2041,7 +2048,7 @@ msgstr "" ">>> \"gg\" in \"eggs\"\n" "True" -#: ../../library/stdtypes.rst:1071 +#: ../../builtins/stdtypes.rst:1074 msgid "" "Values of *n* less than ``0`` are treated as ``0`` (which yields an empty " "sequence of the same type as *s*). Note that items in the sequence *s* are " @@ -2053,7 +2060,7 @@ msgstr "" "Sequenz *s* nicht kopiert werden; sie werden mehrfach referenziert. Dies " "führt bei Python-Einsteigern häufig zu Missverständnissen; betrachte::" -#: ../../library/stdtypes.rst:1076 +#: ../../builtins/stdtypes.rst:1079 msgid "" ">>> lists = [[]] * 3\n" ">>> lists\n" @@ -2069,7 +2076,7 @@ msgstr "" ">>> lists\n" "[[3], [3], [3]]" -#: ../../library/stdtypes.rst:1083 +#: ../../builtins/stdtypes.rst:1086 msgid "" "What has happened is that ``[[]]`` is a one-element list containing an empty " "list, so all three elements of ``[[]] * 3`` are references to this single " @@ -2082,7 +2089,7 @@ msgstr "" "ändert diese einzelne Liste. Auf folgende Weise lässt sich eine Liste aus " "verschiedenen Listen erstellen::" -#: ../../library/stdtypes.rst:1088 +#: ../../builtins/stdtypes.rst:1091 msgid "" ">>> lists = [[] for i in range(3)]\n" ">>> lists[0].append(3)\n" @@ -2098,7 +2105,7 @@ msgstr "" ">>> lists\n" "[[3], [5], [7]]" -#: ../../library/stdtypes.rst:1095 +#: ../../builtins/stdtypes.rst:1098 msgid "" "Further explanation is available in the FAQ entry :ref:`faq-multidimensional-" "list`." @@ -2106,7 +2113,7 @@ msgstr "" "Weitere Erklärungen finden sich im FAQ-Eintrag :ref:`faq-multidimensional-" "list`." -#: ../../library/stdtypes.rst:1099 +#: ../../builtins/stdtypes.rst:1102 msgid "" "If *i* or *j* is negative, the index is relative to the end of sequence *s*: " "``len(s) + i`` or ``len(s) + j`` is substituted. But note that ``-0`` is " @@ -2116,7 +2123,7 @@ msgstr "" "*s*: ``len(s) + i`` oder ``len(s) + j`` wird eingesetzt. Beachte jedoch, " "dass ``-0`` weiterhin ``0`` ist." -#: ../../library/stdtypes.rst:1104 +#: ../../builtins/stdtypes.rst:1107 msgid "" "The slice of *s* from *i* to *j* is defined as the sequence of items with " "index *k* such that ``i <= k < j``." @@ -2124,27 +2131,27 @@ msgstr "" "Der Slice von *s* von *i* bis *j* ist definiert als die Folge der Elemente " "mit Index *k*, für die ``i <= k < j`` gilt." -#: ../../library/stdtypes.rst:1107 +#: ../../builtins/stdtypes.rst:1110 msgid "If *i* is omitted or ``None``, use ``0``." msgstr "Wird *i* weggelassen oder ist ``None``, wird ``0`` verwendet." -#: ../../library/stdtypes.rst:1108 +#: ../../builtins/stdtypes.rst:1111 msgid "If *j* is omitted or ``None``, use ``len(s)``." msgstr "Wird *j* weggelassen oder ist ``None``, wird ``len(s)`` verwendet." -#: ../../library/stdtypes.rst:1109 +#: ../../builtins/stdtypes.rst:1112 msgid "If *i* or *j* is less than ``-len(s)``, use ``0``." msgstr "Ist *i* oder *j* kleiner als ``-len(s)``, wird ``0`` verwendet." -#: ../../library/stdtypes.rst:1110 +#: ../../builtins/stdtypes.rst:1113 msgid "If *i* or *j* is greater than ``len(s)``, use ``len(s)``." msgstr "Ist *i* oder *j* größer als ``len(s)``, wird ``len(s)`` verwendet." -#: ../../library/stdtypes.rst:1111 +#: ../../builtins/stdtypes.rst:1114 msgid "If *i* is greater than or equal to *j*, the slice is empty." msgstr "Ist *i* größer oder gleich *j*, ist der Slice leer." -#: ../../library/stdtypes.rst:1114 +#: ../../builtins/stdtypes.rst:1117 msgid "" "The slice of *s* from *i* to *j* with step *k* is defined as the sequence of " "items with index ``x = i + n*k`` such that ``0 <= n < (j-i)/k``. In other " @@ -2167,7 +2174,7 @@ msgstr "" "Ende hängt vom Vorzeichen von *k* ab). Beachte: *k* darf nicht null sein. " "Wenn *k* ``None`` ist, wird es wie ``1`` behandelt." -#: ../../library/stdtypes.rst:1125 +#: ../../builtins/stdtypes.rst:1130 msgid "" "Concatenating immutable sequences always results in a new object. This " "means that building up a sequence by repeated concatenation will have a " @@ -2180,7 +2187,7 @@ msgstr "" "verursacht. Um lineare Laufzeitkosten zu erzielen, sollte auf eine der " "folgenden Alternativen ausgewichen werden:" -#: ../../library/stdtypes.rst:1130 +#: ../../builtins/stdtypes.rst:1135 msgid "" "if concatenating :class:`str` objects, you can build a list and use :meth:" "`str.join` at the end or else write to an :class:`io.StringIO` instance and " @@ -2190,7 +2197,7 @@ msgstr "" "Ende :meth:`str.join` verwendet werden, oder es wird in eine :class:`io." "StringIO`-Instanz geschrieben und deren Wert nach Abschluss abgerufen" -#: ../../library/stdtypes.rst:1134 +#: ../../builtins/stdtypes.rst:1139 msgid "" "if concatenating :class:`bytes` objects, you can similarly use :meth:`bytes." "join` or :class:`io.BytesIO`, or you can do in-place concatenation with a :" @@ -2203,17 +2210,17 @@ msgstr "" "`bytearray`-Objekte sind veränderlich und besitzen einen effizienten " "Speicherüberallokations-Mechanismus" -#: ../../library/stdtypes.rst:1139 +#: ../../builtins/stdtypes.rst:1144 msgid "if concatenating :class:`tuple` objects, extend a :class:`list` instead" msgstr "" "beim Verketten von :class:`tuple`-Objekten stattdessen eine :class:`list` " "erweitern" -#: ../../library/stdtypes.rst:1141 +#: ../../builtins/stdtypes.rst:1146 msgid "for other types, investigate the relevant class documentation" msgstr "für andere Typen die entsprechende Klassendokumentation konsultieren" -#: ../../library/stdtypes.rst:1145 +#: ../../builtins/stdtypes.rst:1150 msgid "" "Some sequence types (such as :class:`range`) only support item sequences " "that follow specific patterns, and hence don't support sequence " @@ -2223,35 +2230,35 @@ msgstr "" "die bestimmten Mustern folgen, und unterstützen daher weder " "Sequenzverkettung noch Wiederholung." -#: ../../library/stdtypes.rst:1150 +#: ../../builtins/stdtypes.rst:1155 msgid "An :exc:`IndexError` is raised if *i* is outside the sequence range." msgstr "" "Ein :exc:`IndexError` wird ausgelöst, wenn *i* außerhalb des Sequenzbereichs " "liegt." -#: ../../library/stdtypes.rst:1153 +#: ../../builtins/stdtypes.rst:1158 msgid "Sequence Methods" msgstr "Sequenzmethoden" -#: ../../library/stdtypes.rst:1154 +#: ../../builtins/stdtypes.rst:1159 msgid "Sequence types also support the following methods:" msgstr "Sequenztypen unterstützen außerdem die folgenden Methoden:" -#: ../../library/stdtypes.rst:1164 +#: ../../builtins/stdtypes.rst:1169 msgid "Return the total number of occurrences of *value* in *sequence*." msgstr "Gibt die Gesamtzahl der Vorkommen von *value* in *sequence* zurück." -#: ../../library/stdtypes.rst:1174 +#: ../../builtins/stdtypes.rst:1179 msgid "Return the index of the first occurrence of *value* in *sequence*." msgstr "Gibt den Index des ersten Vorkommens von *value* in *sequence* zurück." -#: ../../library/stdtypes.rst:1176 ../../library/stdtypes.rst:1360 +#: ../../builtins/stdtypes.rst:1181 ../../builtins/stdtypes.rst:1365 msgid "Raises :exc:`ValueError` if *value* is not found in *sequence*." msgstr "" "Löst einen :exc:`ValueError` aus, wenn *value* nicht in *sequence* gefunden " "wird." -#: ../../library/stdtypes.rst:1178 +#: ../../builtins/stdtypes.rst:1183 msgid "" "The *start* or *stop* arguments allow for efficient searching of subsections " "of the sequence, beginning at *start* and ending at *stop*. This is roughly " @@ -2263,18 +2270,18 @@ msgstr "" "Dies entspricht in etwa ``start + sequence[start:stop].index(value)``, " "jedoch ohne Kopieren von Daten." -#: ../../library/stdtypes.rst:1184 +#: ../../builtins/stdtypes.rst:1189 msgid "" "Not all sequence types support passing the *start* and *stop* arguments." msgstr "" "Nicht alle Sequenztypen unterstützen die Übergabe der Argumente *start* und " "*stop*." -#: ../../library/stdtypes.rst:1190 +#: ../../builtins/stdtypes.rst:1195 msgid "Immutable Sequence Types" msgstr "Unveränderliche Sequenztypen" -#: ../../library/stdtypes.rst:1197 +#: ../../builtins/stdtypes.rst:1202 msgid "" "The only operation that immutable sequence types generally implement that is " "not also implemented by mutable sequence types is support for the :func:" @@ -2284,7 +2291,7 @@ msgstr "" "implementieren und die von veränderlichen Sequenztypen nicht implementiert " "wird, ist die Unterstützung für die eingebaute Funktion :func:`hash`." -#: ../../library/stdtypes.rst:1201 +#: ../../builtins/stdtypes.rst:1206 msgid "" "This support allows immutable sequences, such as :class:`tuple` instances, " "to be used as :class:`dict` keys and stored in :class:`set` and :class:" @@ -2294,7 +2301,7 @@ msgstr "" "`tuple`-Instanzen als Schlüssel in :class:`dict` zu verwenden und in :class:" "`set`- sowie :class:`frozenset`-Instanzen zu speichern." -#: ../../library/stdtypes.rst:1205 +#: ../../builtins/stdtypes.rst:1210 msgid "" "Attempting to hash an immutable sequence that contains unhashable values " "will result in :exc:`TypeError`." @@ -2302,11 +2309,11 @@ msgstr "" "Der Versuch, eine unveränderliche Sequenz zu hashen, die nicht hashbare " "Werte enthält, führt zu einem :exc:`TypeError`." -#: ../../library/stdtypes.rst:1212 +#: ../../builtins/stdtypes.rst:1217 msgid "Mutable Sequence Types" msgstr "Veränderliche Sequenztypen" -#: ../../library/stdtypes.rst:1219 +#: ../../builtins/stdtypes.rst:1224 msgid "" "The operations in the following table are defined on mutable sequence types. " "The :class:`collections.abc.MutableSequence` ABC is provided to make it " @@ -2317,7 +2324,7 @@ msgstr "" "wird bereitgestellt, um die korrekte Implementierung dieser Operationen auf " "benutzerdefinierten Sequenztypen zu erleichtern." -#: ../../library/stdtypes.rst:1223 +#: ../../builtins/stdtypes.rst:1228 msgid "" "In the table *s* is an instance of a mutable sequence type, *t* is any " "iterable object and *x* is an arbitrary object that meets any type and value " @@ -2330,65 +2337,65 @@ msgstr "" "akzeptiert :class:`bytearray` nur Ganzzahlen, die die Wertebeschränkung ``0 " "<= x <= 255`` erfüllen)." -#: ../../library/stdtypes.rst:1239 +#: ../../builtins/stdtypes.rst:1244 msgid "``s[i] = x``" msgstr "``s[i] = x``" -#: ../../library/stdtypes.rst:1239 +#: ../../builtins/stdtypes.rst:1244 msgid "item *i* of *s* is replaced by *x*" msgstr "Element *i* von *s* wird durch *x* ersetzt" -#: ../../library/stdtypes.rst:1242 +#: ../../builtins/stdtypes.rst:1247 msgid "``del s[i]``" msgstr "``del s[i]``" -#: ../../library/stdtypes.rst:1242 +#: ../../builtins/stdtypes.rst:1247 msgid "removes item *i* of *s*" msgstr "entfernt Element *i* von *s*" -#: ../../library/stdtypes.rst:1244 +#: ../../builtins/stdtypes.rst:1249 msgid "``s[i:j] = t``" msgstr "``s[i:j] = t``" -#: ../../library/stdtypes.rst:1244 +#: ../../builtins/stdtypes.rst:1249 msgid "" "slice of *s* from *i* to *j* is replaced by the contents of the iterable *t*" msgstr "" "Ausschnitt von *s* von *i* bis *j* wird durch den Inhalt des Iterables *t* " "ersetzt" -#: ../../library/stdtypes.rst:1248 +#: ../../builtins/stdtypes.rst:1253 msgid "``del s[i:j]``" msgstr "``del s[i:j]``" -#: ../../library/stdtypes.rst:1248 +#: ../../builtins/stdtypes.rst:1253 msgid "" "removes the elements of ``s[i:j]`` from the list (same as ``s[i:j] = []``)" msgstr "" "entfernt die Elemente von ``s[i:j]`` aus der Liste (entspricht ``s[i:j] = " "[]``)" -#: ../../library/stdtypes.rst:1252 +#: ../../builtins/stdtypes.rst:1257 msgid "``s[i:j:k] = t``" msgstr "``s[i:j:k] = t``" -#: ../../library/stdtypes.rst:1252 +#: ../../builtins/stdtypes.rst:1257 msgid "the elements of ``s[i:j:k]`` are replaced by those of *t*" msgstr "die Elemente von ``s[i:j:k]`` werden durch diejenigen von *t* ersetzt" -#: ../../library/stdtypes.rst:1255 +#: ../../builtins/stdtypes.rst:1260 msgid "``del s[i:j:k]``" msgstr "``del s[i:j:k]``" -#: ../../library/stdtypes.rst:1255 +#: ../../builtins/stdtypes.rst:1260 msgid "removes the elements of ``s[i:j:k]`` from the list" msgstr "entfernt die Elemente von ``s[i:j:k]`` aus der Liste" -#: ../../library/stdtypes.rst:1258 +#: ../../builtins/stdtypes.rst:1263 msgid "``s += t``" msgstr "``s += t``" -#: ../../library/stdtypes.rst:1258 +#: ../../builtins/stdtypes.rst:1263 msgid "" "extends *s* with the contents of *t* (for the most part the same as " "``s[len(s):len(s)] = t``)" @@ -2396,15 +2403,15 @@ msgstr "" "erweitert *s* um den Inhalt von *t* (weitgehend identisch mit ``s[len(s):" "len(s)] = t``)" -#: ../../library/stdtypes.rst:1263 +#: ../../builtins/stdtypes.rst:1268 msgid "``s *= n``" msgstr "``s *= n``" -#: ../../library/stdtypes.rst:1263 +#: ../../builtins/stdtypes.rst:1268 msgid "updates *s* with its contents repeated *n* times" msgstr "aktualisiert *s* mit dem *n*-mal wiederholten Inhalt" -#: ../../library/stdtypes.rst:1270 +#: ../../builtins/stdtypes.rst:1275 msgid "" "If *k* is not equal to ``1``, *t* must have the same length as the slice it " "is replacing." @@ -2412,7 +2419,7 @@ msgstr "" "Wenn *k* ungleich ``1`` ist, muss *t* dieselbe Länge haben wie der " "Ausschnitt, den es ersetzt." -#: ../../library/stdtypes.rst:1273 +#: ../../builtins/stdtypes.rst:1278 msgid "" "The value *n* is an integer, or an object implementing :meth:`~object." "__index__`. Zero and negative values of *n* clear the sequence. Items in " @@ -2424,16 +2431,16 @@ msgstr "" "Sequenz. Elemente in der Sequenz werden nicht kopiert; sie werden mehrfach " "referenziert, wie für ``s * n`` unter :ref:`typesseq-common` erläutert." -#: ../../library/stdtypes.rst:1279 +#: ../../builtins/stdtypes.rst:1284 msgid "Mutable Sequence Methods" msgstr "Methoden veränderlicher Sequenzen" -#: ../../library/stdtypes.rst:1280 +#: ../../builtins/stdtypes.rst:1285 msgid "Mutable sequence types also support the following methods:" msgstr "" "Veränderliche Sequenztypen unterstützen außerdem die folgenden Methoden:" -#: ../../library/stdtypes.rst:1289 +#: ../../builtins/stdtypes.rst:1294 msgid "" "Append *value* to the end of the sequence. This is equivalent to writing " "``seq[len(seq):len(seq)] = [value]``." @@ -2441,14 +2448,14 @@ msgstr "" "Hängt *value* an das Ende der Sequenz an. Dies entspricht ``seq[len(seq):" "len(seq)] = [value]``." -#: ../../library/stdtypes.rst:1301 +#: ../../builtins/stdtypes.rst:1306 msgid "" "Remove all items from *sequence*. This is equivalent to writing ``del " "sequence[:]``." msgstr "" "Entfernt alle Elemente aus *sequence*. Dies entspricht ``del sequence[:]``." -#: ../../library/stdtypes.rst:1313 +#: ../../builtins/stdtypes.rst:1318 msgid "" "Create a shallow copy of *sequence*. This is equivalent to writing " "``sequence[:]``." @@ -2456,7 +2463,7 @@ msgstr "" "Erzeugt eine flache Kopie (Shallow Copy) von *sequence*. Dies entspricht " "``sequence[:]``." -#: ../../library/stdtypes.rst:1316 +#: ../../builtins/stdtypes.rst:1321 msgid "" "The :meth:`!copy` method is not part of the :class:`~collections.abc." "MutableSequence` :class:`~abc.ABC`, but most concrete mutable sequence types " @@ -2466,7 +2473,7 @@ msgstr "" "MutableSequence`-Klasse :class:`~abc.ABC`, wird jedoch von den meisten " "konkreten veränderlichen Sequenztypen bereitgestellt." -#: ../../library/stdtypes.rst:1327 +#: ../../builtins/stdtypes.rst:1332 msgid "" "Extend *sequence* with the contents of *iterable*. For the most part, this " "is the same as writing ``seq[len(seq):len(seq)] = iterable``." @@ -2474,7 +2481,7 @@ msgstr "" "Erweitert *sequence* um den Inhalt von *iterable*. Dies entspricht " "weitgehend ``seq[len(seq):len(seq)] = iterable``." -#: ../../library/stdtypes.rst:1338 +#: ../../builtins/stdtypes.rst:1343 msgid "" "Insert *value* into *sequence* at the given *index*. This is equivalent to " "writing ``sequence[index:index] = [value]``." @@ -2482,7 +2489,7 @@ msgstr "" "Fügt *value* am angegebenen *index* in *sequence* ein. Dies entspricht " "``sequence[index:index] = [value]``." -#: ../../library/stdtypes.rst:1348 +#: ../../builtins/stdtypes.rst:1353 msgid "" "Retrieve the item at *index* and also remove it from *sequence*. By default, " "the last item in *sequence* is removed and returned." @@ -2491,13 +2498,13 @@ msgstr "" "Standardmäßig wird das letzte Element in *sequence* entfernt und " "zurückgegeben." -#: ../../library/stdtypes.rst:1358 +#: ../../builtins/stdtypes.rst:1363 msgid "Remove the first item from *sequence* where ``sequence[i] == value``." msgstr "" "Entfernt das erste Element aus *sequence*, für das ``sequence[i] == value`` " "gilt." -#: ../../library/stdtypes.rst:1369 +#: ../../builtins/stdtypes.rst:1374 msgid "" "Reverse the items of *sequence* in place. This method maintains economy of " "space when reversing a large sequence. To remind users that it operates by " @@ -2507,11 +2514,11 @@ msgstr "" "Speicherplatz beim Umkehren einer großen Sequenz. Um daran zu erinnern, dass " "sie über Seiteneffekte arbeitet, gibt sie ``None`` zurück." -#: ../../library/stdtypes.rst:1377 +#: ../../builtins/stdtypes.rst:1382 msgid "Lists" msgstr "Listen" -#: ../../library/stdtypes.rst:1381 +#: ../../builtins/stdtypes.rst:1386 msgid "" "Lists are mutable sequences, typically used to store collections of " "homogeneous items (where the precise degree of similarity will vary by " @@ -2521,30 +2528,30 @@ msgstr "" "Sammlungen homogener Elemente verwendet werden (wobei der genaue Grad der " "Ähnlichkeit je nach Anwendung variiert)." -#: ../../library/stdtypes.rst:1387 +#: ../../builtins/stdtypes.rst:1392 msgid "Lists may be constructed in several ways:" msgstr "Listen können auf verschiedene Arten konstruiert werden:" -#: ../../library/stdtypes.rst:1389 +#: ../../builtins/stdtypes.rst:1394 msgid "Using a pair of square brackets to denote the empty list: ``[]``" msgstr "Verwendung eines Paars eckiger Klammern für die leere Liste: ``[]``" -#: ../../library/stdtypes.rst:1390 +#: ../../builtins/stdtypes.rst:1395 msgid "" "Using square brackets, separating items with commas: ``[a]``, ``[a, b, c]``" msgstr "" "Verwendung eckiger Klammern mit kommagetrennten Elementen: ``[a]``, ``[a, b, " "c]``" -#: ../../library/stdtypes.rst:1391 +#: ../../builtins/stdtypes.rst:1396 msgid "Using a list comprehension: ``[x for x in iterable]``" msgstr "Verwendung einer List-Comprehension: ``[x for x in iterable]``" -#: ../../library/stdtypes.rst:1392 +#: ../../builtins/stdtypes.rst:1397 msgid "Using the type constructor: ``list()`` or ``list(iterable)``" msgstr "Verwendung des Typ-Konstruktors: ``list()`` oder ``list(iterable)``" -#: ../../library/stdtypes.rst:1394 +#: ../../builtins/stdtypes.rst:1399 msgid "" "The constructor builds a list whose items are the same and in the same order " "as *iterable*'s items. *iterable* may be either a sequence, a container " @@ -2563,7 +2570,7 @@ msgstr "" "``list( (1, 2, 3) )`` liefert ``[1, 2, 3]``. Wenn kein Argument übergeben " "wird, erzeugt der Konstruktor eine neue leere Liste, ``[]``." -#: ../../library/stdtypes.rst:1403 +#: ../../builtins/stdtypes.rst:1408 msgid "" "Many other operations also produce lists, including the :func:`sorted` built-" "in." @@ -2571,12 +2578,12 @@ msgstr "" "Viele weitere Operationen erzeugen ebenfalls Listen, einschließlich der " "eingebauten Funktion :func:`sorted`." -#: ../../library/stdtypes.rst:1406 +#: ../../builtins/stdtypes.rst:1411 msgid "Lists are :ref:`generic ` over the types of their items." msgstr "" "Listen sind hinsichtlich des Typs ihrer Elemente :ref:`generisch `." -#: ../../library/stdtypes.rst:1408 +#: ../../builtins/stdtypes.rst:1413 msgid "" "Lists implement all of the :ref:`common ` and :ref:`mutable " "` sequence operations. Lists also provide the following " @@ -2586,7 +2593,7 @@ msgstr "" "`veränderlichen ` Sequenzoperationen. Listen bieten " "außerdem die folgende zusätzliche Methode:" -#: ../../library/stdtypes.rst:1414 +#: ../../builtins/stdtypes.rst:1419 msgid "" "This method sorts the list in place, using only ``<`` comparisons between " "items. Exceptions are not suppressed - if any comparison operations fail, " @@ -2599,7 +2606,7 @@ msgstr "" "fehl (und die Liste bleibt voraussichtlich in einem teilweise modifizierten " "Zustand zurück)." -#: ../../library/stdtypes.rst:1419 +#: ../../builtins/stdtypes.rst:1424 msgid "" ":meth:`sort` accepts two arguments that can only be passed by keyword (:ref:" "`keyword-only arguments `):" @@ -2608,7 +2615,7 @@ msgstr "" "übergeben werden können (:ref:`keyword-only arguments `):" -#: ../../library/stdtypes.rst:1422 +#: ../../builtins/stdtypes.rst:1427 msgid "" "*key* specifies a function of one argument that is used to extract a " "comparison key from each list element (for example, ``key=str.lower``). The " @@ -2623,7 +2630,7 @@ msgstr "" "Standardwert von ``None`` bedeutet, dass Listenelemente direkt sortiert " "werden, ohne einen separaten Schlüsselwert zu berechnen." -#: ../../library/stdtypes.rst:1429 +#: ../../builtins/stdtypes.rst:1434 msgid "" "The :func:`functools.cmp_to_key` utility is available to convert a 2.x style " "*cmp* function to a *key* function." @@ -2631,7 +2638,7 @@ msgstr "" "Das Hilfswerkzeug :func:`functools.cmp_to_key` steht zur Verfügung, um eine " "*cmp*-Funktion im Stil von Python 2.x in eine *key*-Funktion umzuwandeln." -#: ../../library/stdtypes.rst:1432 +#: ../../builtins/stdtypes.rst:1437 msgid "" "*reverse* is a boolean value. If set to ``True``, then the list elements " "are sorted as if each comparison were reversed." @@ -2639,7 +2646,7 @@ msgstr "" "*reverse* ist ein boolescher Wert. Wenn er auf ``True`` gesetzt ist, werden " "die Listenelemente so sortiert, als ob jeder Vergleich umgekehrt worden wäre." -#: ../../library/stdtypes.rst:1435 +#: ../../builtins/stdtypes.rst:1440 msgid "" "This method modifies the sequence in place for economy of space when sorting " "a large sequence. To remind users that it operates by side effect, it does " @@ -2652,7 +2659,7 @@ msgstr "" "(verwende :func:`sorted`, um explizit eine neue sortierte Listeninstanz " "anzufordern)." -#: ../../library/stdtypes.rst:1440 +#: ../../builtins/stdtypes.rst:1445 msgid "" "The :meth:`sort` method is guaranteed to be stable. A sort is stable if it " "guarantees not to change the relative order of elements that compare equal " @@ -2665,14 +2672,14 @@ msgstr "" "Sortierungen in mehreren Durchläufen (zum Beispiel zuerst nach Abteilung, " "dann nach Gehaltsstufe sortieren)." -#: ../../library/stdtypes.rst:1445 +#: ../../builtins/stdtypes.rst:1450 msgid "" "For sorting examples and a brief sorting tutorial, see :ref:`sortinghowto`." msgstr "" "Für Sortierbeispiele und ein kurzes Sortier-Tutorial siehe :ref:" "`sortinghowto`." -#: ../../library/stdtypes.rst:1449 +#: ../../builtins/stdtypes.rst:1454 msgid "" "While a list is being sorted, the effect of attempting to mutate, or even " "inspect, the list is undefined. The C implementation of Python makes the " @@ -2685,7 +2692,7 @@ msgstr "" "und löst einen :exc:`ValueError` aus, wenn sie feststellen kann, dass die " "Liste während eines Sortiervorgangs verändert wurde." -#: ../../library/stdtypes.rst:1456 +#: ../../builtins/stdtypes.rst:1461 msgid "" "For detailed information on thread-safety guarantees for :class:`list` " "objects, see :ref:`thread-safety-list`." @@ -2693,11 +2700,11 @@ msgstr "" "Detaillierte Informationen zu den Thread-Sicherheitsgarantien für Objekte " "vom Typ :class:`list` findest du unter :ref:`thread-safety-list`." -#: ../../library/stdtypes.rst:1463 +#: ../../builtins/stdtypes.rst:1468 msgid "Tuples" msgstr "Tupels" -#: ../../library/stdtypes.rst:1467 +#: ../../builtins/stdtypes.rst:1472 msgid "" "Tuples are immutable sequences, typically used to store collections of " "heterogeneous data (such as the 2-tuples produced by the :func:`enumerate` " @@ -2712,31 +2719,31 @@ msgstr "" "Daten benötigt wird (wie etwa zur Ermöglichung der Speicherung in einer :" "class:`set`- oder :class:`dict`-Instanz)." -#: ../../library/stdtypes.rst:1475 +#: ../../builtins/stdtypes.rst:1480 msgid "Tuples may be constructed in a number of ways:" msgstr "Tupel können auf verschiedene Arten konstruiert werden:" -#: ../../library/stdtypes.rst:1477 +#: ../../builtins/stdtypes.rst:1482 msgid "Using a pair of parentheses to denote the empty tuple: ``()``" msgstr "Verwendung eines Paars runder Klammern für das leere Tupel: ``()``" -#: ../../library/stdtypes.rst:1478 +#: ../../builtins/stdtypes.rst:1483 msgid "Using a trailing comma for a singleton tuple: ``a,`` or ``(a,)``" msgstr "" "Verwendung eines nachgestellten Kommas für ein Tupel mit einem " "Element(Singleton-Tupel): ``a,`` oder ``(a,)``" -#: ../../library/stdtypes.rst:1479 +#: ../../builtins/stdtypes.rst:1484 msgid "Separating items with commas: ``a, b, c`` or ``(a, b, c)``" msgstr "Trennen von Elementen durch Kommas: ``a, b, c`` oder ``(a, b, c)``" -#: ../../library/stdtypes.rst:1480 +#: ../../builtins/stdtypes.rst:1485 msgid "Using the :func:`tuple` built-in: ``tuple()`` or ``tuple(iterable)``" msgstr "" "Verwendung der eingebauten Funktion :func:`tuple`: ``tuple()`` oder " "``tuple(iterable)``" -#: ../../library/stdtypes.rst:1482 +#: ../../builtins/stdtypes.rst:1487 msgid "" "The constructor builds a tuple whose items are the same and in the same " "order as *iterable*'s items. *iterable* may be either a sequence, a " @@ -2755,7 +2762,7 @@ msgstr "" "Argument übergeben wird, erzeugt der Konstruktor ein neues leeres Tupel, " "``()``." -#: ../../library/stdtypes.rst:1490 +#: ../../builtins/stdtypes.rst:1495 msgid "" "Note that it is actually the comma which makes a tuple, not the parentheses. " "The parentheses are optional, except in the empty tuple case, or when they " @@ -2770,7 +2777,7 @@ msgstr "" "``f((a, b, c))`` ein Funktionsaufruf mit einem 3-Tupel als einzigem Argument " "ist." -#: ../../library/stdtypes.rst:1496 +#: ../../builtins/stdtypes.rst:1501 msgid "" "Tuples implement all of the :ref:`common ` sequence " "operations." @@ -2778,7 +2785,7 @@ msgstr "" "Tupel implementieren alle :ref:`gemeinsamen ` " "Sequenzoperationen." -#: ../../library/stdtypes.rst:1499 +#: ../../builtins/stdtypes.rst:1504 msgid "" "Tuples are :ref:`generic ` over the types of their contents. For " "more information, refer to :ref:`the typing documentation on annotating " @@ -2788,7 +2795,7 @@ msgstr "" "Weitere Informationen findest du in der :ref:`typing-Dokumentation zum " "Annotieren von Tupeln `." -#: ../../library/stdtypes.rst:1503 +#: ../../builtins/stdtypes.rst:1508 msgid "" "For heterogeneous collections of data where access by name is clearer than " "access by index, :func:`collections.namedtuple` may be a more appropriate " @@ -2798,11 +2805,11 @@ msgstr "" "verständlicher ist als der Zugriff über Indizes, kann :func:`collections." "namedtuple` eine passendere Wahl als ein einfaches Tupel-Objekt sein." -#: ../../library/stdtypes.rst:1511 +#: ../../builtins/stdtypes.rst:1516 msgid "Ranges" msgstr "Ranges" -#: ../../library/stdtypes.rst:1515 +#: ../../builtins/stdtypes.rst:1520 msgid "" "The :class:`range` type represents an immutable sequence of numbers and is " "commonly used for looping a specific number of times in :keyword:`for` loops." @@ -2811,7 +2818,7 @@ msgstr "" "häufig verwendet, um eine bestimmte Anzahl von Wiederholungen in :keyword:" "`for`-Schleifen auszuführen." -#: ../../library/stdtypes.rst:1522 +#: ../../builtins/stdtypes.rst:1527 msgid "" "The arguments to the range constructor must be integers (either built-in :" "class:`int` or any object that implements the :meth:`~object.__index__` " @@ -2826,7 +2833,7 @@ msgstr "" "wird, ist der Standardwert ``0``. Wenn *step* null ist, wird ein :exc:" "`ValueError` ausgelöst." -#: ../../library/stdtypes.rst:1528 +#: ../../builtins/stdtypes.rst:1533 msgid "" "For a positive *step*, the contents of a range ``r`` are determined by the " "formula ``r[i] = start + step*i`` where ``i >= 0`` and ``r[i] < stop``." @@ -2835,7 +2842,7 @@ msgstr "" "Formel ``r[i] = start + step*i`` bestimmt, wobei ``i >= 0`` und ``r[i] < " "stop`` gilt." -#: ../../library/stdtypes.rst:1532 +#: ../../builtins/stdtypes.rst:1537 msgid "" "For a negative *step*, the contents of the range are still determined by the " "formula ``r[i] = start + step*i``, but the constraints are ``i >= 0`` and " @@ -2845,7 +2852,7 @@ msgstr "" "Formel ``r[i] = start + step*i`` bestimmt, die Bedingungen lauten jedoch ``i " ">= 0`` und ``r[i] > stop``." -#: ../../library/stdtypes.rst:1536 +#: ../../builtins/stdtypes.rst:1541 msgid "" "A range object will be empty if ``r[0]`` does not meet the value constraint. " "Ranges do support negative indices, but these are interpreted as indexing " @@ -2855,7 +2862,7 @@ msgstr "" "Ranges unterstützen negative Indizes, diese werden jedoch als Indizierung " "vom Ende der durch die positiven Indizes bestimmten Sequenz interpretiert." -#: ../../library/stdtypes.rst:1541 +#: ../../builtins/stdtypes.rst:1546 msgid "" "Ranges containing absolute values larger than :data:`sys.maxsize` are " "permitted but some features (such as :func:`len`) may raise :exc:" @@ -2865,11 +2872,11 @@ msgstr "" "zulässig, aber einige Funktionen (wie z. B. :func:`len`) können einen :exc:" "`OverflowError` auslösen." -#: ../../library/stdtypes.rst:1545 +#: ../../builtins/stdtypes.rst:1550 msgid "Range examples::" msgstr "Range-Beispiele::" -#: ../../library/stdtypes.rst:1547 +#: ../../builtins/stdtypes.rst:1552 msgid "" ">>> list(range(10))\n" "[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]\n" @@ -2901,7 +2908,7 @@ msgstr "" ">>> list(range(1, 0))\n" "[]" -#: ../../library/stdtypes.rst:1562 +#: ../../builtins/stdtypes.rst:1567 msgid "" "Ranges implement all of the :ref:`common ` sequence " "operations except concatenation and repetition (due to the fact that range " @@ -2914,7 +2921,7 @@ msgstr "" "strengen Muster folgen, und Wiederholung sowie Verkettung dieses Muster in " "der Regel verletzen würden)." -#: ../../library/stdtypes.rst:1569 +#: ../../builtins/stdtypes.rst:1574 msgid "" "The value of the *start* parameter (or ``0`` if the parameter was not " "supplied)" @@ -2922,11 +2929,11 @@ msgstr "" "Der Wert des Parameters *start* (oder ``0``, falls der Parameter nicht " "übergeben wurde)" -#: ../../library/stdtypes.rst:1574 +#: ../../builtins/stdtypes.rst:1579 msgid "The value of the *stop* parameter" msgstr "Der Wert des Parameters *stop*" -#: ../../library/stdtypes.rst:1578 +#: ../../builtins/stdtypes.rst:1583 msgid "" "The value of the *step* parameter (or ``1`` if the parameter was not " "supplied)" @@ -2934,7 +2941,7 @@ msgstr "" "Der Wert des Parameters *step* (oder ``1``, falls der Parameter nicht " "übergeben wurde)" -#: ../../library/stdtypes.rst:1581 +#: ../../builtins/stdtypes.rst:1586 msgid "" "The advantage of the :class:`range` type over a regular :class:`list` or :" "class:`tuple` is that a :class:`range` object will always take the same " @@ -2949,7 +2956,7 @@ msgstr "" "speichert und einzelne Elemente sowie Teilbereiche erst bei Bedarf " "berechnet)." -#: ../../library/stdtypes.rst:1587 +#: ../../builtins/stdtypes.rst:1592 msgid "" "Range objects implement the :class:`collections.abc.Sequence` ABC, and " "provide features such as containment tests, element index lookup, slicing " @@ -2959,7 +2966,7 @@ msgstr "" "bieten Funktionen wie Prüfung von Enthaltensein, Elementindex-Abfrage, " "Slicing und Unterstützung für negative Indizes (siehe :ref:`typesseq`):" -#: ../../library/stdtypes.rst:1607 +#: ../../builtins/stdtypes.rst:1612 msgid "" "Testing range objects for equality with ``==`` and ``!=`` compares them as " "sequences. That is, two range objects are considered equal if they " @@ -2976,7 +2983,7 @@ msgstr "" "Beispiel ``range(0) == range(2, 1, 3)`` oder ``range(0, 3, 2) == range(0, 4, " "2)``.)" -#: ../../library/stdtypes.rst:1614 +#: ../../builtins/stdtypes.rst:1619 msgid "" "Implement the Sequence ABC. Support slicing and negative indices. Test :" "class:`int` objects for membership in constant time instead of iterating " @@ -2986,7 +2993,7 @@ msgstr "" "Indizes. Prüfung von :class:`int`-Objekten auf Mitgliedschaft in konstanter " "Zeit anstatt über alle Elemente zu iterieren." -#: ../../library/stdtypes.rst:1620 +#: ../../builtins/stdtypes.rst:1625 msgid "" "Define '==' and '!=' to compare range objects based on the sequence of " "values they define (instead of comparing based on object identity)." @@ -2995,7 +3002,7 @@ msgstr "" "definierten Wertesequenz zu vergleichen (anstatt auf Basis der " "Objektidentität)." -#: ../../library/stdtypes.rst:1625 +#: ../../builtins/stdtypes.rst:1630 msgid "" "Added the :attr:`~range.start`, :attr:`~range.stop` and :attr:`~range.step` " "attributes." @@ -3003,7 +3010,7 @@ msgstr "" "Die Attribute :attr:`~range.start`, :attr:`~range.stop` und :attr:`~range." "step` hinzugefügt." -#: ../../library/stdtypes.rst:1630 +#: ../../builtins/stdtypes.rst:1635 msgid "" "The `linspace recipe `_ shows how to implement a lazy version of range " @@ -3013,11 +3020,11 @@ msgstr "" "spaced-numbers-linspace/>`_ zeigt, wie eine Lazy-Version von Range " "implementiert werden kann, die für Gleitkomma-Anwendungen geeignet ist." -#: ../../library/stdtypes.rst:1642 +#: ../../builtins/stdtypes.rst:1647 msgid "Text and Binary Sequence Type Methods Summary" msgstr "Zusammenfassung der Methoden von Text- und Binärsequenztypen" -#: ../../library/stdtypes.rst:1643 +#: ../../builtins/stdtypes.rst:1648 msgid "" "The following table summarizes the text and binary sequence types methods by " "category." @@ -3025,395 +3032,395 @@ msgstr "" "Die folgende Tabelle fasst die Methoden der Text- und Binärsequenztypen nach " "Kategorien zusammen." -#: ../../library/stdtypes.rst:1648 +#: ../../builtins/stdtypes.rst:1653 msgid "Category" msgstr "Kategorie" -#: ../../library/stdtypes.rst:1648 +#: ../../builtins/stdtypes.rst:1653 msgid ":class:`str` methods" msgstr ":class:`str`-Methoden" -#: ../../library/stdtypes.rst:1648 +#: ../../builtins/stdtypes.rst:1653 msgid ":class:`bytes` and :class:`bytearray` methods" msgstr ":class:`bytes`- und :class:`bytearray`-Methoden" -#: ../../library/stdtypes.rst:1650 +#: ../../builtins/stdtypes.rst:1655 msgid "Formatting" msgstr "Formatierung" -#: ../../library/stdtypes.rst:1650 +#: ../../builtins/stdtypes.rst:1655 msgid ":meth:`str.format`" msgstr ":meth:`str.format`" -#: ../../library/stdtypes.rst:1652 +#: ../../builtins/stdtypes.rst:1657 msgid ":meth:`str.format_map`" msgstr ":meth:`str.format_map`" -#: ../../library/stdtypes.rst:1654 +#: ../../builtins/stdtypes.rst:1659 msgid ":ref:`f-strings`" msgstr ":ref:`f-strings`" -#: ../../library/stdtypes.rst:1656 +#: ../../builtins/stdtypes.rst:1661 msgid ":ref:`old-string-formatting`" msgstr ":ref:`old-string-formatting`" -#: ../../library/stdtypes.rst:1656 +#: ../../builtins/stdtypes.rst:1661 msgid ":ref:`bytes-formatting`" msgstr ":ref:`bytes-formatting`" -#: ../../library/stdtypes.rst:1658 +#: ../../builtins/stdtypes.rst:1663 msgid "Searching and Replacing" msgstr "Suchen und Ersetzen" -#: ../../library/stdtypes.rst:1658 +#: ../../builtins/stdtypes.rst:1663 msgid ":meth:`str.find`" msgstr ":meth:`str.find`" -#: ../../library/stdtypes.rst:1658 +#: ../../builtins/stdtypes.rst:1663 msgid ":meth:`str.rfind`" msgstr ":meth:`str.rfind`" -#: ../../library/stdtypes.rst:1658 +#: ../../builtins/stdtypes.rst:1663 msgid ":meth:`bytes.find`" msgstr ":meth:`bytes.find`" -#: ../../library/stdtypes.rst:1658 +#: ../../builtins/stdtypes.rst:1663 msgid ":meth:`bytes.rfind`" msgstr ":meth:`bytes.rfind`" -#: ../../library/stdtypes.rst:1660 +#: ../../builtins/stdtypes.rst:1665 msgid ":meth:`str.index`" msgstr ":meth:`str.index`" -#: ../../library/stdtypes.rst:1660 +#: ../../builtins/stdtypes.rst:1665 msgid ":meth:`str.rindex`" msgstr ":meth:`str.rindex`" -#: ../../library/stdtypes.rst:1660 +#: ../../builtins/stdtypes.rst:1665 msgid ":meth:`bytes.index`" msgstr ":meth:`bytes.index`" -#: ../../library/stdtypes.rst:1660 +#: ../../builtins/stdtypes.rst:1665 msgid ":meth:`bytes.rindex`" msgstr ":meth:`bytes.rindex`" -#: ../../library/stdtypes.rst:1662 +#: ../../builtins/stdtypes.rst:1667 msgid ":meth:`str.startswith`" msgstr ":meth:`str.startswith`" -#: ../../library/stdtypes.rst:1662 +#: ../../builtins/stdtypes.rst:1667 msgid ":meth:`bytes.startswith`" msgstr ":meth:`bytes.startswith`" -#: ../../library/stdtypes.rst:1664 +#: ../../builtins/stdtypes.rst:1669 msgid ":meth:`str.endswith`" msgstr ":meth:`str.endswith`" -#: ../../library/stdtypes.rst:1664 +#: ../../builtins/stdtypes.rst:1669 msgid ":meth:`bytes.endswith`" msgstr ":meth:`bytes.endswith`" -#: ../../library/stdtypes.rst:1666 +#: ../../builtins/stdtypes.rst:1671 msgid ":meth:`str.count`" msgstr ":meth:`str.count`" -#: ../../library/stdtypes.rst:1666 +#: ../../builtins/stdtypes.rst:1671 msgid ":meth:`bytes.count`" msgstr ":meth:`bytes.count`" -#: ../../library/stdtypes.rst:1668 +#: ../../builtins/stdtypes.rst:1673 msgid ":meth:`str.replace`" msgstr ":meth:`str.replace`" -#: ../../library/stdtypes.rst:1668 +#: ../../builtins/stdtypes.rst:1673 msgid ":meth:`bytes.replace`" msgstr ":meth:`bytes.replace`" -#: ../../library/stdtypes.rst:1670 +#: ../../builtins/stdtypes.rst:1675 msgid "Splitting and Joining" msgstr "Trennen und Zusammenfügen" -#: ../../library/stdtypes.rst:1670 +#: ../../builtins/stdtypes.rst:1675 msgid ":meth:`str.split`" msgstr ":meth:`str.split`" -#: ../../library/stdtypes.rst:1670 +#: ../../builtins/stdtypes.rst:1675 msgid ":meth:`str.rsplit`" msgstr ":meth:`str.rsplit`" -#: ../../library/stdtypes.rst:1670 +#: ../../builtins/stdtypes.rst:1675 msgid ":meth:`bytes.split`" msgstr ":meth:`bytes.split`" -#: ../../library/stdtypes.rst:1670 +#: ../../builtins/stdtypes.rst:1675 msgid ":meth:`bytes.rsplit`" msgstr ":meth:`bytes.rsplit`" -#: ../../library/stdtypes.rst:1672 +#: ../../builtins/stdtypes.rst:1677 msgid ":meth:`str.splitlines`" msgstr ":meth:`str.splitlines`" -#: ../../library/stdtypes.rst:1672 +#: ../../builtins/stdtypes.rst:1677 msgid ":meth:`bytes.splitlines`" msgstr ":meth:`bytes.splitlines`" -#: ../../library/stdtypes.rst:1674 +#: ../../builtins/stdtypes.rst:1679 msgid ":meth:`str.partition`" msgstr ":meth:`str.partition`" -#: ../../library/stdtypes.rst:1674 +#: ../../builtins/stdtypes.rst:1679 msgid ":meth:`bytes.partition`" msgstr ":meth:`bytes.partition`" -#: ../../library/stdtypes.rst:1676 +#: ../../builtins/stdtypes.rst:1681 msgid ":meth:`str.rpartition`" msgstr ":meth:`str.rpartition`" -#: ../../library/stdtypes.rst:1676 +#: ../../builtins/stdtypes.rst:1681 msgid ":meth:`bytes.rpartition`" msgstr ":meth:`bytes.rpartition`" -#: ../../library/stdtypes.rst:1678 +#: ../../builtins/stdtypes.rst:1683 msgid ":meth:`str.join`" msgstr ":meth:`str.join`" -#: ../../library/stdtypes.rst:1678 +#: ../../builtins/stdtypes.rst:1683 msgid ":meth:`bytes.join`" msgstr ":meth:`bytes.join`" -#: ../../library/stdtypes.rst:1680 +#: ../../builtins/stdtypes.rst:1685 msgid "String Classification" msgstr "String-Klassifikation" -#: ../../library/stdtypes.rst:1680 +#: ../../builtins/stdtypes.rst:1685 msgid ":meth:`str.isalpha`" msgstr ":meth:`str.isalpha`" -#: ../../library/stdtypes.rst:1680 +#: ../../builtins/stdtypes.rst:1685 msgid ":meth:`bytes.isalpha`" msgstr ":meth:`bytes.isalpha`" -#: ../../library/stdtypes.rst:1682 +#: ../../builtins/stdtypes.rst:1687 msgid ":meth:`str.isdecimal`" msgstr ":meth:`str.isdecimal`" -#: ../../library/stdtypes.rst:1684 +#: ../../builtins/stdtypes.rst:1689 msgid ":meth:`str.isdigit`" msgstr ":meth:`str.isdigit`" -#: ../../library/stdtypes.rst:1684 +#: ../../builtins/stdtypes.rst:1689 msgid ":meth:`bytes.isdigit`" msgstr ":meth:`bytes.isdigit`" -#: ../../library/stdtypes.rst:1686 +#: ../../builtins/stdtypes.rst:1691 msgid ":meth:`str.isnumeric`" msgstr ":meth:`str.isnumeric`" -#: ../../library/stdtypes.rst:1688 +#: ../../builtins/stdtypes.rst:1693 msgid ":meth:`str.isalnum`" msgstr ":meth:`str.isalnum`" -#: ../../library/stdtypes.rst:1688 +#: ../../builtins/stdtypes.rst:1693 msgid ":meth:`bytes.isalnum`" msgstr ":meth:`bytes.isalnum`" -#: ../../library/stdtypes.rst:1690 +#: ../../builtins/stdtypes.rst:1695 msgid ":meth:`str.isidentifier`" msgstr ":meth:`str.isidentifier`" -#: ../../library/stdtypes.rst:1692 +#: ../../builtins/stdtypes.rst:1697 msgid ":meth:`str.islower`" msgstr ":meth:`str.islower`" -#: ../../library/stdtypes.rst:1692 +#: ../../builtins/stdtypes.rst:1697 msgid ":meth:`bytes.islower`" msgstr ":meth:`bytes.islower`" -#: ../../library/stdtypes.rst:1694 +#: ../../builtins/stdtypes.rst:1699 msgid ":meth:`str.isupper`" msgstr ":meth:`str.isupper`" -#: ../../library/stdtypes.rst:1694 +#: ../../builtins/stdtypes.rst:1699 msgid ":meth:`bytes.isupper`" msgstr ":meth:`bytes.isupper`" -#: ../../library/stdtypes.rst:1696 +#: ../../builtins/stdtypes.rst:1701 msgid ":meth:`str.istitle`" msgstr ":meth:`str.istitle`" -#: ../../library/stdtypes.rst:1696 +#: ../../builtins/stdtypes.rst:1701 msgid ":meth:`bytes.istitle`" msgstr ":meth:`bytes.istitle`" -#: ../../library/stdtypes.rst:1698 +#: ../../builtins/stdtypes.rst:1703 msgid ":meth:`str.isspace`" msgstr ":meth:`str.isspace`" -#: ../../library/stdtypes.rst:1698 +#: ../../builtins/stdtypes.rst:1703 msgid ":meth:`bytes.isspace`" msgstr ":meth:`bytes.isspace`" -#: ../../library/stdtypes.rst:1700 +#: ../../builtins/stdtypes.rst:1705 msgid ":meth:`str.isprintable`" msgstr ":meth:`str.isprintable`" -#: ../../library/stdtypes.rst:1702 +#: ../../builtins/stdtypes.rst:1707 msgid "Case Manipulation" msgstr "Groß-/Kleinschreibung bearbeiten" -#: ../../library/stdtypes.rst:1702 +#: ../../builtins/stdtypes.rst:1707 msgid ":meth:`str.lower`" msgstr ":meth:`str.lower`" -#: ../../library/stdtypes.rst:1702 +#: ../../builtins/stdtypes.rst:1707 msgid ":meth:`bytes.lower`" msgstr ":meth:`bytes.lower`" -#: ../../library/stdtypes.rst:1704 +#: ../../builtins/stdtypes.rst:1709 msgid ":meth:`str.upper`" msgstr ":meth:`str.upper`" -#: ../../library/stdtypes.rst:1704 +#: ../../builtins/stdtypes.rst:1709 msgid ":meth:`bytes.upper`" msgstr ":meth:`bytes.upper`" -#: ../../library/stdtypes.rst:1706 +#: ../../builtins/stdtypes.rst:1711 msgid ":meth:`str.casefold`" msgstr ":meth:`str.casefold`" -#: ../../library/stdtypes.rst:1708 +#: ../../builtins/stdtypes.rst:1713 msgid ":meth:`str.capitalize`" msgstr ":meth:`str.capitalize`" -#: ../../library/stdtypes.rst:1708 +#: ../../builtins/stdtypes.rst:1713 msgid ":meth:`bytes.capitalize`" msgstr ":meth:`bytes.capitalize`" -#: ../../library/stdtypes.rst:1710 +#: ../../builtins/stdtypes.rst:1715 msgid ":meth:`str.title`" msgstr ":meth:`str.title`" -#: ../../library/stdtypes.rst:1710 +#: ../../builtins/stdtypes.rst:1715 msgid ":meth:`bytes.title`" msgstr ":meth:`bytes.title`" -#: ../../library/stdtypes.rst:1712 +#: ../../builtins/stdtypes.rst:1717 msgid ":meth:`str.swapcase`" msgstr ":meth:`str.swapcase`" -#: ../../library/stdtypes.rst:1712 +#: ../../builtins/stdtypes.rst:1717 msgid ":meth:`bytes.swapcase`" msgstr ":meth:`bytes.swapcase`" -#: ../../library/stdtypes.rst:1714 +#: ../../builtins/stdtypes.rst:1719 msgid "Padding and Stripping" msgstr "Auffüllen und Entfernen von Zeichen" -#: ../../library/stdtypes.rst:1714 +#: ../../builtins/stdtypes.rst:1719 msgid ":meth:`str.ljust`" msgstr ":meth:`str.ljust`" -#: ../../library/stdtypes.rst:1714 +#: ../../builtins/stdtypes.rst:1719 msgid ":meth:`str.rjust`" msgstr ":meth:`str.rjust`" -#: ../../library/stdtypes.rst:1714 +#: ../../builtins/stdtypes.rst:1719 msgid ":meth:`bytes.ljust`" msgstr ":meth:`bytes.ljust`" -#: ../../library/stdtypes.rst:1714 +#: ../../builtins/stdtypes.rst:1719 msgid ":meth:`bytes.rjust`" msgstr ":meth:`bytes.rjust`" -#: ../../library/stdtypes.rst:1716 +#: ../../builtins/stdtypes.rst:1721 msgid ":meth:`str.center`" msgstr ":meth:`str.center`" -#: ../../library/stdtypes.rst:1716 +#: ../../builtins/stdtypes.rst:1721 msgid ":meth:`bytes.center`" msgstr ":meth:`bytes.center`" -#: ../../library/stdtypes.rst:1718 +#: ../../builtins/stdtypes.rst:1723 msgid ":meth:`str.expandtabs`" msgstr ":meth:`str.expandtabs`" -#: ../../library/stdtypes.rst:1718 +#: ../../builtins/stdtypes.rst:1723 msgid ":meth:`bytes.expandtabs`" msgstr ":meth:`bytes.expandtabs`" -#: ../../library/stdtypes.rst:1720 +#: ../../builtins/stdtypes.rst:1725 msgid ":meth:`str.strip`" msgstr ":meth:`str.strip`" -#: ../../library/stdtypes.rst:1720 +#: ../../builtins/stdtypes.rst:1725 msgid ":meth:`bytes.strip`" msgstr ":meth:`bytes.strip`" -#: ../../library/stdtypes.rst:1722 +#: ../../builtins/stdtypes.rst:1727 msgid ":meth:`str.lstrip`" msgstr ":meth:`str.lstrip`" -#: ../../library/stdtypes.rst:1722 +#: ../../builtins/stdtypes.rst:1727 msgid ":meth:`str.rstrip`" msgstr ":meth:`str.rstrip`" -#: ../../library/stdtypes.rst:1722 +#: ../../builtins/stdtypes.rst:1727 msgid ":meth:`bytes.lstrip`" msgstr ":meth:`bytes.lstrip`" -#: ../../library/stdtypes.rst:1722 +#: ../../builtins/stdtypes.rst:1727 msgid ":meth:`bytes.rstrip`" msgstr ":meth:`bytes.rstrip`" -#: ../../library/stdtypes.rst:1724 +#: ../../builtins/stdtypes.rst:1729 msgid ":meth:`str.removeprefix`" msgstr ":meth:`str.removeprefix`" -#: ../../library/stdtypes.rst:1724 +#: ../../builtins/stdtypes.rst:1729 msgid ":meth:`bytes.removeprefix`" msgstr ":meth:`bytes.removeprefix`" -#: ../../library/stdtypes.rst:1726 +#: ../../builtins/stdtypes.rst:1731 msgid ":meth:`str.removesuffix`" msgstr ":meth:`str.removesuffix`" -#: ../../library/stdtypes.rst:1726 +#: ../../builtins/stdtypes.rst:1731 msgid ":meth:`bytes.removesuffix`" msgstr ":meth:`bytes.removesuffix`" -#: ../../library/stdtypes.rst:1728 +#: ../../builtins/stdtypes.rst:1733 msgid "Translation and Encoding" msgstr "Übersetzung und Kodierung" -#: ../../library/stdtypes.rst:1728 +#: ../../builtins/stdtypes.rst:1733 msgid ":meth:`str.translate`" msgstr ":meth:`str.translate`" -#: ../../library/stdtypes.rst:1728 +#: ../../builtins/stdtypes.rst:1733 msgid ":meth:`bytes.translate`" msgstr ":meth:`bytes.translate`" -#: ../../library/stdtypes.rst:1730 +#: ../../builtins/stdtypes.rst:1735 msgid ":meth:`str.maketrans`" msgstr ":meth:`str.maketrans`" -#: ../../library/stdtypes.rst:1730 +#: ../../builtins/stdtypes.rst:1735 msgid ":meth:`bytes.maketrans`" msgstr ":meth:`bytes.maketrans`" -#: ../../library/stdtypes.rst:1732 +#: ../../builtins/stdtypes.rst:1737 msgid ":meth:`str.encode`" msgstr ":meth:`str.encode`" -#: ../../library/stdtypes.rst:1734 +#: ../../builtins/stdtypes.rst:1739 msgid ":meth:`bytes.decode`" msgstr ":meth:`bytes.decode`" -#: ../../library/stdtypes.rst:1740 +#: ../../builtins/stdtypes.rst:1745 msgid "Text Sequence Type --- :class:`str`" msgstr "Textsequenztyp – :class:`str`" -#: ../../library/stdtypes.rst:1742 +#: ../../builtins/stdtypes.rst:1747 msgid "" "Textual data in Python is handled with :class:`str` objects, or :dfn:" "`strings`. Strings are immutable :ref:`sequences ` of Unicode code " @@ -3424,15 +3431,15 @@ msgstr "" "Unicode-Codepunkten. String-Literale werden auf verschiedene Arten " "geschrieben:" -#: ../../library/stdtypes.rst:1747 +#: ../../builtins/stdtypes.rst:1752 msgid "Single quotes: ``'allows embedded \"double\" quotes'``" msgstr "Einfache Anführungszeichen: ``'allows embedded \"double\" quotes'``" -#: ../../library/stdtypes.rst:1748 +#: ../../builtins/stdtypes.rst:1753 msgid "Double quotes: ``\"allows embedded 'single' quotes\"``" msgstr "Doppelte Anführungszeichen: ``\"allows embedded 'single' quotes\"``" -#: ../../library/stdtypes.rst:1749 +#: ../../builtins/stdtypes.rst:1754 msgid "" "Triple quoted: ``'''Three single quotes'''``, ``\"\"\"Three double " "quotes\"\"\"``" @@ -3440,7 +3447,7 @@ msgstr "" "Dreifache Anführungszeichen: ``'''Three single quotes'''``, ``\"\"\"Three " "double quotes\"\"\"``" -#: ../../library/stdtypes.rst:1751 +#: ../../builtins/stdtypes.rst:1756 msgid "" "Triple quoted strings may span multiple lines - all associated whitespace " "will be included in the string literal." @@ -3449,7 +3456,7 @@ msgstr "" "Zeilen erstrecken – alle zugehörigen Whitespaces werden in das String-" "Literal aufgenommen." -#: ../../library/stdtypes.rst:1754 +#: ../../builtins/stdtypes.rst:1759 msgid "" "String literals that are part of a single expression and have only " "whitespace between them will be implicitly converted to a single string " @@ -3459,7 +3466,7 @@ msgstr "" "zwischen sich haben, werden implizit in ein einziges String-Literal " "umgewandelt. Das heißt: ``(\"spam \" \"eggs\") == \"spam eggs\"``." -#: ../../library/stdtypes.rst:1758 +#: ../../builtins/stdtypes.rst:1763 msgid "" "See :ref:`strings` for more about the various forms of string literal, " "including supported :ref:`escape sequences `, and the " @@ -3470,7 +3477,7 @@ msgstr "" "sequences>` und des Präfixes ``r`` (\"raw\"), das die meisten Verarbeitungen " "von Escape-Sequenzen deaktiviert." -#: ../../library/stdtypes.rst:1762 +#: ../../builtins/stdtypes.rst:1767 msgid "" "Strings may also be created from other objects using the :class:`str` " "constructor." @@ -3478,7 +3485,7 @@ msgstr "" "Strings können auch aus anderen Objekten mithilfe des :class:`str`-" "Konstruktors erzeugt werden." -#: ../../library/stdtypes.rst:1765 +#: ../../builtins/stdtypes.rst:1770 msgid "" "Since there is no separate \"character\" type, indexing a string produces " "strings of length 1. That is, for a non-empty string *s*, ``s[0] == s[0:1]``." @@ -3487,7 +3494,7 @@ msgstr "" "Strings Strings der Länge 1. Das heißt, für einen nicht-leeren String *s* " "gilt: ``s[0] == s[0:1]``." -#: ../../library/stdtypes.rst:1771 +#: ../../builtins/stdtypes.rst:1776 msgid "" "There is also no mutable string type, but :meth:`str.join` or :class:`io." "StringIO` can be used to efficiently construct strings from multiple " @@ -3497,7 +3504,7 @@ msgstr "" "class:`io.StringIO` können verwendet werden, um Strings effizient aus " "mehreren Fragmenten zusammenzusetzen." -#: ../../library/stdtypes.rst:1775 +#: ../../builtins/stdtypes.rst:1780 msgid "" "For backwards compatibility with the Python 2 series, the ``u`` prefix is " "once again permitted on string literals. It has no effect on the meaning of " @@ -3508,7 +3515,7 @@ msgstr "" "Bedeutung von String-Literalen und kann nicht mit dem Präfix ``r`` " "kombiniert werden." -#: ../../library/stdtypes.rst:1789 +#: ../../builtins/stdtypes.rst:1794 msgid "" "Return a :ref:`string ` version of *object*. If *object* is not " "provided, returns the empty string. Otherwise, the behavior of ``str()`` " @@ -3519,7 +3526,7 @@ msgstr "" "das Verhalten von ``str()`` davon ab, ob *encoding* oder *errors* wie folgt " "angegeben sind." -#: ../../library/stdtypes.rst:1793 +#: ../../builtins/stdtypes.rst:1798 msgid "" "If neither *encoding* nor *errors* is given, ``str(object)`` returns :meth:" "`type(object).__str__(object) `, which is the \"informal\" " @@ -3535,7 +3542,7 @@ msgstr "" "`~object.__str__`-Methode besitzt, fällt :func:`str` darauf zurück, :func:" "`repr(object) ` zurückzugeben." -#: ../../library/stdtypes.rst:1805 +#: ../../builtins/stdtypes.rst:1810 msgid "" "If at least one of *encoding* or *errors* is given, *object* should be a :" "term:`bytes-like object` (e.g. :class:`bytes` or :class:`bytearray`). In " @@ -3556,7 +3563,7 @@ msgstr "" "ref:`binaryseq` und :ref:`bufferobjects` für Informationen über " "Pufferobjekte." -#: ../../library/stdtypes.rst:1814 +#: ../../builtins/stdtypes.rst:1819 msgid "" "Passing a :class:`bytes` object to :func:`str` without the *encoding* or " "*errors* arguments falls under the first case of returning the informal " @@ -3568,7 +3575,7 @@ msgstr "" "informellen String-Repräsentation (siehe auch die Kommandozeilenoption :" "option:`-b` von Python). Zum Beispiel::" -#: ../../library/stdtypes.rst:1819 +#: ../../builtins/stdtypes.rst:1824 msgid "" ">>> str(b'Zoot!')\n" "\"b'Zoot!'\"" @@ -3576,7 +3583,7 @@ msgstr "" ">>> str(b'Zoot!')\n" "\"b'Zoot!'\"" -#: ../../library/stdtypes.rst:1822 +#: ../../builtins/stdtypes.rst:1827 msgid "" "For more information on the ``str`` class and its methods, see :ref:" "`textseq` and the :ref:`string-methods` section below. To output formatted " @@ -3588,11 +3595,11 @@ msgstr "" "Zur Ausgabe formatierter Strings siehe die Abschnitte :ref:`f-strings` und :" "ref:`formatstrings`. Siehe außerdem den Abschnitt :ref:`stringservices`." -#: ../../library/stdtypes.rst:1834 +#: ../../builtins/stdtypes.rst:1839 msgid "String Methods" msgstr "String-Methoden" -#: ../../library/stdtypes.rst:1839 +#: ../../builtins/stdtypes.rst:1844 msgid "" "Strings implement all of the :ref:`common ` sequence " "operations, along with the additional methods described below." @@ -3601,7 +3608,7 @@ msgstr "" "Sequenzoperationen zusammen mit den nachfolgend beschriebenen zusätzlichen " "Methoden." -#: ../../library/stdtypes.rst:1842 +#: ../../builtins/stdtypes.rst:1847 msgid "" "Strings also support two styles of string formatting, one providing a large " "degree of flexibility and customization (see :meth:`str.format`, :ref:" @@ -3618,7 +3625,7 @@ msgstr "" "ist, aber für die Fälle, die sie abdeckt, oft schneller ist (:ref:`old-" "string-formatting`)." -#: ../../library/stdtypes.rst:1849 +#: ../../builtins/stdtypes.rst:1854 msgid "" "The :ref:`textservices` section of the standard library covers a number of " "other modules that provide various text related utilities (including regular " @@ -3629,7 +3636,7 @@ msgstr "" "bereitstellen (einschließlich der Unterstützung regulärer Ausdrücke im " "Modul :mod:`re`)." -#: ../../library/stdtypes.rst:1855 +#: ../../builtins/stdtypes.rst:1860 msgid "" "Return a copy of the string with its first character capitalized and the " "rest lowercased." @@ -3637,7 +3644,7 @@ msgstr "" "Gibt eine Kopie des Strings zurück, bei der das erste Zeichen " "großgeschrieben und der Rest kleingeschrieben ist." -#: ../../library/stdtypes.rst:1858 +#: ../../builtins/stdtypes.rst:1863 msgid "" "The first character is now put into titlecase rather than uppercase. This " "means that characters like digraphs will only have their first letter " @@ -3647,7 +3654,7 @@ msgstr "" "Das bedeutet, dass bei Zeichen wie Digraphen nur der erste Buchstabe " "großgeschrieben wird und nicht das gesamte Zeichen." -#: ../../library/stdtypes.rst:1865 +#: ../../builtins/stdtypes.rst:1870 msgid "" "Return a casefolded copy of the string. Casefolded strings may be used for " "caseless matching." @@ -3655,7 +3662,7 @@ msgstr "" "Gibt eine casefold-Kopie des Strings zurück. Casefold-Strings können für " "Abgleiche ohne Berücksichtigung der Groß-/Kleinschreibung verwendet werden." -#: ../../library/stdtypes.rst:1868 +#: ../../builtins/stdtypes.rst:1873 msgid "" "Casefolding is similar to lowercasing but more aggressive because it is " "intended to remove all case distinctions in a string. For example, the " @@ -3670,7 +3677,7 @@ msgstr "" "`lower` bei ``'ß'`` nichts bewirken; :meth:`casefold` wandelt ihn in " "``\"ss\"`` um. Zum Beispiel:" -#: ../../library/stdtypes.rst:1875 +#: ../../builtins/stdtypes.rst:1880 msgid "" ">>> 'straße'.lower()\n" "'straße'\n" @@ -3682,7 +3689,7 @@ msgstr "" ">>> 'straße'.casefold()\n" "'strasse'" -#: ../../library/stdtypes.rst:1882 +#: ../../builtins/stdtypes.rst:1887 msgid "" "The casefolding algorithm is `described in section 3.13.3 'Default Case " "Folding' of the Unicode Standard `__." -#: ../../library/stdtypes.rst:1891 +#: ../../builtins/stdtypes.rst:1896 msgid "" "Return centered in a string of length *width*. Padding is done using the " "specified *fillchar* (default is an ASCII space). The original string is " @@ -3703,7 +3710,7 @@ msgstr "" "Leerzeichen). Der ursprüngliche String wird zurückgegeben, wenn *width* " "kleiner oder gleich ``len(s)`` ist. Zum Beispiel::" -#: ../../library/stdtypes.rst:1895 +#: ../../builtins/stdtypes.rst:1900 msgid "" ">>> 'Python'.center(10)\n" "' Python '\n" @@ -3719,7 +3726,7 @@ msgstr "" ">>> 'Python'.center(4)\n" "'Python'" -#: ../../library/stdtypes.rst:1905 +#: ../../builtins/stdtypes.rst:1910 msgid "" "Return the number of non-overlapping occurrences of substring *sub* in the " "range [*start*, *end*]. Optional arguments *start* and *end* are " @@ -3729,7 +3736,7 @@ msgstr "" "Bereich [*start*, *end*] zurück. Die optionalen Argumente *start* und *end* " "werden wie in der Slice-Notation interpretiert." -#: ../../library/stdtypes.rst:1909 +#: ../../builtins/stdtypes.rst:1914 msgid "" "If *sub* is empty, returns the number of empty strings between characters " "which is the length of the string plus one. For example::" @@ -3737,7 +3744,7 @@ msgstr "" "Wenn *sub* leer ist, wird die Anzahl der leeren Strings zwischen den Zeichen " "zurückgegeben, was der Länge des Strings plus eins entspricht. Zum Beispiel::" -#: ../../library/stdtypes.rst:1912 +#: ../../builtins/stdtypes.rst:1917 msgid "" ">>> 'spam, spam, spam'.count('spam')\n" "3\n" @@ -3761,11 +3768,11 @@ msgstr "" ">>> 'spam, spam, spam'.count('')\n" "17" -#: ../../library/stdtypes.rst:1925 +#: ../../builtins/stdtypes.rst:1930 msgid "Return the string encoded to :class:`bytes`." msgstr "Gibt den als :class:`bytes` kodierten String zurück." -#: ../../library/stdtypes.rst:1927 ../../library/stdtypes.rst:3675 +#: ../../builtins/stdtypes.rst:1932 ../../builtins/stdtypes.rst:3682 msgid "" "*encoding* defaults to ``'utf-8'``; see :ref:`standard-encodings` for " "possible values." @@ -3773,7 +3780,7 @@ msgstr "" "*encoding* ist standardmäßig ``'utf-8'``; siehe :ref:`standard-encodings` " "für mögliche Werte." -#: ../../library/stdtypes.rst:1930 +#: ../../builtins/stdtypes.rst:1935 msgid "" "*errors* controls how encoding errors are handled. If ``'strict'`` (the " "default), a :exc:`UnicodeError` exception is raised. Other possible values " @@ -3787,7 +3794,7 @@ msgstr "" "``'backslashreplace'`` und jeder andere über :func:`codecs.register_error` " "registrierte Name. Siehe :ref:`error-handlers` für Details." -#: ../../library/stdtypes.rst:1937 +#: ../../builtins/stdtypes.rst:1942 msgid "" "For performance reasons, the value of *errors* is not checked for validity " "unless an encoding error actually occurs, :ref:`devmode` is enabled or a :" @@ -3798,7 +3805,7 @@ msgstr "" "ref:`devmode` ist aktiviert oder es wird ein :ref:`Debug-Build ` verwendet. Zum Beispiel::" -#: ../../library/stdtypes.rst:1943 +#: ../../builtins/stdtypes.rst:1948 msgid "" ">>> encoded_str_to_bytes = 'Python'.encode()\n" ">>> type(encoded_str_to_bytes)\n" @@ -3812,11 +3819,11 @@ msgstr "" ">>> encoded_str_to_bytes\n" "b'Python'" -#: ../../library/stdtypes.rst:1950 ../../library/stdtypes.rst:3694 +#: ../../builtins/stdtypes.rst:1955 ../../builtins/stdtypes.rst:3701 msgid "Added support for keyword arguments." msgstr "Unterstützung für Schlüsselwort-Argumente hinzugefügt." -#: ../../library/stdtypes.rst:1953 ../../library/stdtypes.rst:3697 +#: ../../builtins/stdtypes.rst:1958 ../../builtins/stdtypes.rst:3704 msgid "" "The value of the *errors* argument is now checked in :ref:`devmode` and in :" "ref:`debug mode `." @@ -3824,7 +3831,7 @@ msgstr "" "Der Wert des Arguments *errors* wird nun im :ref:`devmode` und im :ref:" "`Debug-Modus ` geprüft." -#: ../../library/stdtypes.rst:1960 +#: ../../builtins/stdtypes.rst:1965 msgid "" "Return ``True`` if the string ends with the specified *suffix*, otherwise " "return ``False``. *suffix* can also be a tuple of suffixes to look for. " @@ -3839,7 +3846,7 @@ msgstr "" "Verwendung von *start* und *end* entspricht ``str[start:end]." "endswith(suffix)``. Zum Beispiel::" -#: ../../library/stdtypes.rst:1966 +#: ../../builtins/stdtypes.rst:1971 msgid "" ">>> 'Python'.endswith('on')\n" "True\n" @@ -3859,11 +3866,11 @@ msgstr "" ">>> 'Python is amazing'.endswith('is', 0, 9)\n" "True" -#: ../../library/stdtypes.rst:1975 +#: ../../builtins/stdtypes.rst:1980 msgid "See also :meth:`startswith` and :meth:`removesuffix`." msgstr "Siehe auch :meth:`startswith` und :meth:`removesuffix`." -#: ../../library/stdtypes.rst:1980 +#: ../../builtins/stdtypes.rst:1985 msgid "" "Return a copy of the string where all tab characters are replaced by one or " "more spaces, depending on the current column and the given tab size. Tab " @@ -3893,7 +3900,7 @@ msgstr "" "aktuelle Spalte um eins erhöht, unabhängig davon, wie das Zeichen bei der " "Ausgabe dargestellt wird. Zum Beispiel::" -#: ../../library/stdtypes.rst:1993 +#: ../../builtins/stdtypes.rst:1998 msgid "" ">>> '01\\t012\\t0123\\t01234'.expandtabs()\n" "'01 012 0123 01234'\n" @@ -3911,7 +3918,7 @@ msgstr "" "01 012\n" "0123 01234" -#: ../../library/stdtypes.rst:2004 +#: ../../builtins/stdtypes.rst:2009 msgid "" "Return the lowest index in the string where substring *sub* is found within " "the slice ``s[start:end]``. Optional arguments *start* and *end* are " @@ -3923,7 +3930,7 @@ msgstr "" "Argumente *start* und *end* werden wie in der Slice-Notation interpretiert. " "Gibt ``-1`` zurück, wenn *sub* nicht gefunden wird. Zum Beispiel::" -#: ../../library/stdtypes.rst:2009 +#: ../../builtins/stdtypes.rst:2014 msgid "" ">>> 'spam, spam, spam'.find('sp')\n" "0\n" @@ -3935,11 +3942,11 @@ msgstr "" ">>> 'spam, spam, spam'.find('sp', 5)\n" "6" -#: ../../library/stdtypes.rst:2014 +#: ../../builtins/stdtypes.rst:2019 msgid "See also :meth:`rfind` and :meth:`index`." msgstr "Siehe auch :meth:`rfind` und :meth:`index`." -#: ../../library/stdtypes.rst:2018 +#: ../../builtins/stdtypes.rst:2023 msgid "" "The :meth:`~str.find` method should be used only if you need to know the " "position of *sub*. To check if *sub* is a substring or not, use the :" @@ -3949,7 +3956,7 @@ msgstr "" "von *sub* benötigt wird. Um zu prüfen, ob *sub* ein Teilstring ist oder " "nicht, verwende den Operator :keyword:`in`::" -#: ../../library/stdtypes.rst:2022 +#: ../../builtins/stdtypes.rst:2027 msgid "" ">>> 'Py' in 'Python'\n" "True" @@ -3957,7 +3964,7 @@ msgstr "" ">>> 'Py' in 'Python'\n" "True" -#: ../../library/stdtypes.rst:2028 +#: ../../builtins/stdtypes.rst:2033 msgid "" "Perform a string formatting operation. The string on which this method is " "called can contain literal text or replacement fields delimited by braces " @@ -3974,7 +3981,7 @@ msgstr "" "Kopie der Zeichenkette zurück, in der jedes Ersetzungsfeld durch den String-" "Wert des entsprechenden Arguments ersetzt wird. Zum Beispiel:" -#: ../../library/stdtypes.rst:2035 +#: ../../builtins/stdtypes.rst:2040 msgid "" ">>> \"The sum of 1 + 2 is {0}\".format(1+2)\n" "'The sum of 1 + 2 is 3'\n" @@ -3990,7 +3997,7 @@ msgstr "" ">>> \"{1} expects the {0} Inquisition!\".format(\"Spanish\", \"Nobody\")\n" "'Nobody expects the Spanish Inquisition!'" -#: ../../library/stdtypes.rst:2044 +#: ../../builtins/stdtypes.rst:2049 msgid "" "See :ref:`formatstrings` for a description of the various formatting options " "that can be specified in format strings." @@ -3998,7 +4005,7 @@ msgstr "" "Siehe :ref:`formatstrings` für eine Beschreibung der verschiedenen " "Formatierungsoptionen, die in Format-Strings angegeben werden können." -#: ../../library/stdtypes.rst:2048 +#: ../../builtins/stdtypes.rst:2053 msgid "" "When formatting a number (:class:`int`, :class:`float`, :class:`complex`, :" "class:`decimal.Decimal` and subclasses) with the ``n`` type (ex: ``'{:n}'." @@ -4017,7 +4024,7 @@ msgstr "" "von der Locale ``LC_CTYPE`` unterscheidet. Diese vorübergehende Änderung " "betrifft auch andere Threads." -#: ../../library/stdtypes.rst:2057 +#: ../../builtins/stdtypes.rst:2062 msgid "" "When formatting a number with the ``n`` type, the function sets temporarily " "the ``LC_CTYPE`` locale to the ``LC_NUMERIC`` locale in some cases." @@ -4025,7 +4032,7 @@ msgstr "" "Beim Formatieren einer Zahl mit dem Typ ``n`` setzt die Funktion in einigen " "Fällen vorübergehend die Locale ``LC_CTYPE`` auf die Locale ``LC_NUMERIC``." -#: ../../library/stdtypes.rst:2065 +#: ../../builtins/stdtypes.rst:2070 msgid "" "Similar to ``str.format(**mapping)``, except that ``mapping`` is used " "directly and not copied to a :class:`dict`. This is useful if for example " @@ -4035,7 +4042,7 @@ msgstr "" "verwendet und nicht in ein :class:`dict` kopiert wird. Dies ist nützlich, " "wenn ``mapping`` beispielsweise eine Unterklasse von dict ist:" -#: ../../library/stdtypes.rst:2081 +#: ../../builtins/stdtypes.rst:2086 msgid "" "Like :meth:`~str.find`, but raise :exc:`ValueError` when the substring is " "not found. For example:" @@ -4043,7 +4050,7 @@ msgstr "" "Wie :meth:`~str.find`, löst jedoch einen :exc:`ValueError` aus, wenn der " "Teilstring nicht gefunden wird. Zum Beispiel:" -#: ../../library/stdtypes.rst:2084 +#: ../../builtins/stdtypes.rst:2089 msgid "" ">>> 'spam, spam, spam'.index('spam')\n" "0\n" @@ -4063,11 +4070,11 @@ msgstr "" " ~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^\n" "ValueError: substring not found" -#: ../../library/stdtypes.rst:2095 +#: ../../builtins/stdtypes.rst:2100 msgid "See also :meth:`rindex`." msgstr "Siehe auch :meth:`rindex`." -#: ../../library/stdtypes.rst:2100 +#: ../../builtins/stdtypes.rst:2105 msgid "" "Return ``True`` if all characters in the string are alphanumeric and there " "is at least one character, ``False`` otherwise. A character ``c`` is " @@ -4080,7 +4087,7 @@ msgstr "" "isalpha()``, ``c.isdecimal()``, ``c.isdigit()`` oder ``c.isnumeric()``. Zum " "Beispiel:" -#: ../../library/stdtypes.rst:2105 +#: ../../builtins/stdtypes.rst:2110 msgid "" ">>> 'abc123'.isalnum()\n" "True\n" @@ -4100,7 +4107,7 @@ msgstr "" ">>> ' '.isalnum()\n" "False" -#: ../../library/stdtypes.rst:2119 +#: ../../builtins/stdtypes.rst:2124 msgid "" "Return ``True`` if all characters in the string are alphabetic and there is " "at least one character, ``False`` otherwise. Alphabetic characters are " @@ -4121,7 +4128,7 @@ msgstr "" "www.unicode.org/versions/Unicode16.0.0/core-spec/chapter-4/#G91002>`_ " "definiert ist. Zum Beispiel:" -#: ../../library/stdtypes.rst:2128 +#: ../../builtins/stdtypes.rst:2133 msgid "" ">>> 'Letters and spaces'.isalpha()\n" "False\n" @@ -4139,11 +4146,11 @@ msgstr "" "gelten\n" "True" -#: ../../library/stdtypes.rst:2137 +#: ../../builtins/stdtypes.rst:2142 msgid "See :ref:`unicode-properties`." msgstr "Siehe :ref:`unicode-properties`." -#: ../../library/stdtypes.rst:2142 +#: ../../builtins/stdtypes.rst:2147 msgid "" "Return ``True`` if the string is empty or all characters in the string are " "ASCII, ``False`` otherwise. ASCII characters have code points in the range " @@ -4153,7 +4160,7 @@ msgstr "" "ASCII sind, andernfalls ``False``. ASCII-Zeichen haben Codepunkte im Bereich " "U+0000-U+007F. Zum Beispiel:" -#: ../../library/stdtypes.rst:2146 +#: ../../builtins/stdtypes.rst:2151 msgid "" ">>> 'ASCII characters'.isascii()\n" "True\n" @@ -4165,7 +4172,7 @@ msgstr "" ">>> 'µ'.isascii()\n" "False" -#: ../../library/stdtypes.rst:2158 +#: ../../builtins/stdtypes.rst:2163 msgid "" "Return ``True`` if all characters in the string are decimal characters and " "there is at least one character, ``False`` otherwise. Decimal characters are " @@ -4180,7 +4187,7 @@ msgstr "" "Dezimalzeichen ein Zeichen in der allgemeinen Unicode-Kategorie \"Nd\". Zum " "Beispiel:" -#: ../../library/stdtypes.rst:2165 +#: ../../builtins/stdtypes.rst:2170 msgid "" ">>> '0123456789'.isdecimal()\n" "True\n" @@ -4196,7 +4203,7 @@ msgstr "" ">>> 'alphabetic'.isdecimal()\n" "False" -#: ../../library/stdtypes.rst:2177 +#: ../../builtins/stdtypes.rst:2182 msgid "" "Return ``True`` if all characters in the string are digits and there is at " "least one character, ``False`` otherwise. Digits include decimal characters " @@ -4215,18 +4222,18 @@ msgstr "" "Kharosthi#Numerals>`__. Formal ist eine Ziffer ein Zeichen mit dem " "Eigenschaftswert Numeric_Type=Digit oder Numeric_Type=Decimal." -#: ../../library/stdtypes.rst:2185 ../../library/stdtypes.rst:2266 -#: ../../library/stdtypes.rst:2283 ../../library/stdtypes.rst:2310 -#: ../../library/stdtypes.rst:2365 ../../library/stdtypes.rst:2442 -#: ../../library/stdtypes.rst:2553 ../../library/stdtypes.rst:2574 -#: ../../library/stdtypes.rst:2638 ../../library/stdtypes.rst:2658 -#: ../../library/stdtypes.rst:2672 ../../library/stdtypes.rst:2759 -#: ../../library/stdtypes.rst:2783 ../../library/stdtypes.rst:2797 -#: ../../library/stdtypes.rst:2912 +#: ../../builtins/stdtypes.rst:2190 ../../builtins/stdtypes.rst:2271 +#: ../../builtins/stdtypes.rst:2288 ../../builtins/stdtypes.rst:2315 +#: ../../builtins/stdtypes.rst:2370 ../../builtins/stdtypes.rst:2447 +#: ../../builtins/stdtypes.rst:2558 ../../builtins/stdtypes.rst:2579 +#: ../../builtins/stdtypes.rst:2644 ../../builtins/stdtypes.rst:2665 +#: ../../builtins/stdtypes.rst:2679 ../../builtins/stdtypes.rst:2766 +#: ../../builtins/stdtypes.rst:2790 ../../builtins/stdtypes.rst:2804 +#: ../../builtins/stdtypes.rst:2919 msgid "For example:" msgstr "Zum Beispiel:" -#: ../../library/stdtypes.rst:2187 +#: ../../builtins/stdtypes.rst:2192 msgid "" ">>> '0123456789'.isdigit()\n" "True\n" @@ -4246,11 +4253,11 @@ msgstr "" ">>> '²'.isdecimal(), '²'.isdigit(), '²'.isnumeric()\n" "(False, True, True)" -#: ../../library/stdtypes.rst:2198 +#: ../../builtins/stdtypes.rst:2203 msgid "See also :meth:`isdecimal` and :meth:`isnumeric`." msgstr "Siehe auch :meth:`isdecimal` und :meth:`isnumeric`." -#: ../../library/stdtypes.rst:2203 +#: ../../builtins/stdtypes.rst:2208 msgid "" "Return ``True`` if the string is a valid identifier according to the " "language definition, section :ref:`identifiers`." @@ -4258,7 +4265,7 @@ msgstr "" "Gibt ``True`` zurück, wenn der String ein gültiger Bezeichner gemäß der " "Sprachdefinition, Abschnitt :ref:`identifiers`, ist." -#: ../../library/stdtypes.rst:2206 +#: ../../builtins/stdtypes.rst:2211 msgid "" ":func:`keyword.iskeyword` can be used to test whether string ``s`` is a " "reserved identifier, such as :keyword:`def` and :keyword:`class`." @@ -4266,11 +4273,11 @@ msgstr "" "Mit :func:`keyword.iskeyword` kann getestet werden, ob der String ``s`` ein " "reservierter Bezeichner wie :keyword:`def` und :keyword:`class` ist." -#: ../../library/stdtypes.rst:2209 +#: ../../builtins/stdtypes.rst:2214 msgid "Example: ::" msgstr "Beispiel: ::" -#: ../../library/stdtypes.rst:2212 +#: ../../builtins/stdtypes.rst:2217 msgid "" ">>> from keyword import iskeyword\n" "\n" @@ -4286,7 +4293,7 @@ msgstr "" ">>> 'def'.isidentifier(), iskeyword('def')\n" "(True, True)" -#: ../../library/stdtypes.rst:2222 +#: ../../builtins/stdtypes.rst:2227 msgid "" "Return ``True`` if all cased characters [4]_ in the string are lowercase and " "there is at least one cased character, ``False`` otherwise." @@ -4295,7 +4302,7 @@ msgstr "" "String kleingeschrieben sind und mindestens ein Zeichen mit Groß-/" "Kleinschreibung vorhanden ist, andernfalls ``False``." -#: ../../library/stdtypes.rst:2228 +#: ../../builtins/stdtypes.rst:2233 msgid "" "Return ``True`` if all characters in the string are numeric characters, and " "there is at least one character, ``False`` otherwise. Numeric characters " @@ -4312,7 +4319,7 @@ msgstr "" "Eigenschaftswert Numeric_Type=Digit, Numeric_Type=Decimal oder " "Numeric_Type=Numeric." -#: ../../library/stdtypes.rst:2236 +#: ../../builtins/stdtypes.rst:2241 msgid "" ">>> '0123456789'.isnumeric()\n" "True\n" @@ -4332,11 +4339,11 @@ msgstr "" ">>> '²'.isdecimal(), '²'.isdigit(), '²'.isnumeric()\n" "(False, True, True)" -#: ../../library/stdtypes.rst:2247 +#: ../../builtins/stdtypes.rst:2252 msgid "See also :meth:`isdecimal` and :meth:`isdigit`." msgstr "Siehe auch :meth:`isdecimal` und :meth:`isdigit`." -#: ../../library/stdtypes.rst:2252 +#: ../../builtins/stdtypes.rst:2257 msgid "" "Return ``True`` if all characters in the string are printable, ``False`` if " "it contains at least one non-printable character." @@ -4344,7 +4351,7 @@ msgstr "" "Gibt ``True`` zurück, wenn alle Zeichen im String druckbar sind, ``False``, " "wenn er mindestens ein nicht druckbares Zeichen enthält." -#: ../../library/stdtypes.rst:2255 +#: ../../builtins/stdtypes.rst:2260 msgid "" "Here \"printable\" means the character is suitable for :func:`repr` to use " "in its output; \"non-printable\" means that :func:`repr` on built-in types " @@ -4357,7 +4364,7 @@ msgstr "" "keinen Einfluss auf die Behandlung von Strings, die in :data:`sys.stdout` " "oder :data:`sys.stderr` geschrieben werden." -#: ../../library/stdtypes.rst:2260 +#: ../../builtins/stdtypes.rst:2265 msgid "" "The printable characters are those which in the Unicode character database " "(see :mod:`unicodedata`) have a general category in group Letter, Mark, " @@ -4372,7 +4379,7 @@ msgstr "" "diejenigen in der Gruppe Trennzeichen oder Andere (Z oder C), mit Ausnahme " "des ASCII-Leerzeichens." -#: ../../library/stdtypes.rst:2268 +#: ../../builtins/stdtypes.rst:2273 msgid "" ">>> ''.isprintable(), ' '.isprintable()\n" "(True, True)\n" @@ -4384,11 +4391,11 @@ msgstr "" ">>> '\\t'.isprintable(), '\\n'.isprintable()\n" "(False, False)" -#: ../../library/stdtypes.rst:2275 +#: ../../builtins/stdtypes.rst:2280 msgid "See also :meth:`isspace`." msgstr "Siehe auch :meth:`isspace`." -#: ../../library/stdtypes.rst:2280 +#: ../../builtins/stdtypes.rst:2285 msgid "" "Return ``True`` if there are only whitespace characters in the string and " "there is at least one character, ``False`` otherwise." @@ -4396,7 +4403,7 @@ msgstr "" "Gibt ``True`` zurück, wenn der String nur Whitespace-Zeichen enthält und " "mindestens ein Zeichen vorhanden ist, andernfalls ``False``." -#: ../../library/stdtypes.rst:2285 +#: ../../builtins/stdtypes.rst:2290 msgid "" ">>> ''.isspace()\n" "False\n" @@ -4416,7 +4423,7 @@ msgstr "" ">>> '\\u3000'.isspace() # IDEOGRAPHIC SPACE\n" "True" -#: ../../library/stdtypes.rst:2296 +#: ../../builtins/stdtypes.rst:2301 msgid "" "A character is *whitespace* if in the Unicode character database (see :mod:" "`unicodedata`), either its general category is ``Zs`` (\"Separator, " @@ -4427,11 +4434,11 @@ msgstr "" "space\") ist oder seine bidirektionale Klasse eine von ``WS``, ``B`` oder " "``S`` ist." -#: ../../library/stdtypes.rst:2301 +#: ../../builtins/stdtypes.rst:2306 msgid "See also :meth:`isprintable`." msgstr "Siehe auch :meth:`isprintable`." -#: ../../library/stdtypes.rst:2306 +#: ../../builtins/stdtypes.rst:2311 msgid "" "Return ``True`` if the string is a titlecased string and there is at least " "one character, for example uppercase characters may only follow uncased " @@ -4443,7 +4450,7 @@ msgstr "" "Zeichen ohne Groß-/Kleinschreibung folgen und Kleinbuchstaben nur auf solche " "mit Groß-/Kleinschreibung. Gibt andernfalls ``False`` zurück." -#: ../../library/stdtypes.rst:2312 +#: ../../builtins/stdtypes.rst:2317 msgid "" ">>> 'Spam, Spam, Spam'.istitle()\n" "True\n" @@ -4459,11 +4466,11 @@ msgstr "" ">>> 'SPAM, SPAM, SPAM'.istitle()\n" "False" -#: ../../library/stdtypes.rst:2321 +#: ../../builtins/stdtypes.rst:2326 msgid "See also :meth:`title`." msgstr "Siehe auch :meth:`title`." -#: ../../library/stdtypes.rst:2326 +#: ../../builtins/stdtypes.rst:2331 msgid "" "Return ``True`` if all cased characters [4]_ in the string are uppercase and " "there is at least one cased character, ``False`` otherwise." @@ -4472,7 +4479,7 @@ msgstr "" "String großgeschrieben sind und mindestens ein Zeichen mit Groß-/" "Kleinschreibung vorhanden ist, andernfalls ``False``." -#: ../../library/stdtypes.rst:2344 +#: ../../builtins/stdtypes.rst:2349 msgid "" "Return a string which is the concatenation of the strings in *iterable*. A :" "exc:`TypeError` will be raised if there are any non-string values in " @@ -4485,7 +4492,7 @@ msgstr "" "Trennzeichen zwischen den Elementen ist der String, der diese Methode " "bereitstellt." -#: ../../library/stdtypes.rst:2349 +#: ../../builtins/stdtypes.rst:2354 msgid "" ">>> ', '.join(['spam', 'spam', 'spam'])\n" "'spam, spam, spam'\n" @@ -4497,11 +4504,11 @@ msgstr "" ">>> '-'.join('Python')\n" "'P-y-t-h-o-n'" -#: ../../library/stdtypes.rst:2356 +#: ../../builtins/stdtypes.rst:2361 msgid "See also :meth:`split`." msgstr "Siehe auch :meth:`split`." -#: ../../library/stdtypes.rst:2361 +#: ../../builtins/stdtypes.rst:2366 msgid "" "Return the string left justified in a string of length *width*. Padding is " "done using the specified *fillchar* (default is an ASCII space). The " @@ -4512,7 +4519,7 @@ msgstr "" "Leerzeichen). Der ursprüngliche String wird zurückgegeben, wenn *width* " "kleiner oder gleich ``len(s)`` ist." -#: ../../library/stdtypes.rst:2367 +#: ../../builtins/stdtypes.rst:2372 msgid "" ">>> 'Python'.ljust(10)\n" "'Python '\n" @@ -4528,11 +4535,11 @@ msgstr "" ">>> 'Monty Python'.ljust(10, '.')\n" "'Monty Python'" -#: ../../library/stdtypes.rst:2376 ../../library/stdtypes.rst:2921 +#: ../../builtins/stdtypes.rst:2381 ../../builtins/stdtypes.rst:2928 msgid "See also :meth:`rjust`." msgstr "Siehe auch :meth:`rjust`." -#: ../../library/stdtypes.rst:2381 +#: ../../builtins/stdtypes.rst:2386 msgid "" "Return a copy of the string with all the cased characters [4]_ converted to " "lowercase. For example:" @@ -4540,7 +4547,7 @@ msgstr "" "Gibt eine Kopie des Strings zurück, bei der alle Zeichen mit Groß-/" "Kleinschreibung [4]_ in Kleinbuchstaben umgewandelt wurden. Zum Beispiel:" -#: ../../library/stdtypes.rst:2384 +#: ../../builtins/stdtypes.rst:2389 msgid "" ">>> 'Lower Method Example'.lower()\n" "'lower method example'" @@ -4548,7 +4555,7 @@ msgstr "" ">>> 'Lower Method Example'.lower()\n" "'lower method example'" -#: ../../library/stdtypes.rst:2389 +#: ../../builtins/stdtypes.rst:2394 msgid "" "The lowercasing algorithm used is `described in section 3.13.2 'Default Case " "Conversion' of the Unicode Standard `__ beschrieben." -#: ../../library/stdtypes.rst:2396 +#: ../../builtins/stdtypes.rst:2401 msgid "" "Return a copy of the string with leading characters removed. The *chars* " "argument is a string specifying the set of characters to be removed. If " @@ -4573,7 +4580,7 @@ msgstr "" "*chars* ist kein Präfix; vielmehr werden alle Kombinationen seiner Werte " "abgeschnitten::" -#: ../../library/stdtypes.rst:2401 +#: ../../builtins/stdtypes.rst:2406 msgid "" ">>> ' spacious '.lstrip()\n" "'spacious '\n" @@ -4585,7 +4592,7 @@ msgstr "" ">>> 'www.example.com'.lstrip('cmowz.')\n" "'example.com'" -#: ../../library/stdtypes.rst:2406 +#: ../../builtins/stdtypes.rst:2411 msgid "" "See :meth:`str.removeprefix` for a method that will remove a single prefix " "string rather than all of a set of characters. For example::" @@ -4593,7 +4600,7 @@ msgstr "" "Siehe :meth:`str.removeprefix` für eine Methode, die einen einzelnen Präfix-" "String anstelle einer Menge aller Zeichen entfernt. Zum Beispiel::" -#: ../../library/stdtypes.rst:2409 +#: ../../builtins/stdtypes.rst:2414 msgid "" ">>> 'Arthur: three!'.lstrip('Arthur: ')\n" "'ee!'\n" @@ -4605,7 +4612,7 @@ msgstr "" ">>> 'Arthur: three!'.removeprefix('Arthur: ')\n" "'three!'" -#: ../../library/stdtypes.rst:2418 +#: ../../builtins/stdtypes.rst:2423 msgid "" "This static method returns a translation table usable for :meth:`str." "translate`." @@ -4613,7 +4620,7 @@ msgstr "" "Diese statische Methode gibt eine Übersetzungstabelle zurück, die für :meth:" "`str.translate` verwendet werden kann." -#: ../../library/stdtypes.rst:2420 +#: ../../builtins/stdtypes.rst:2425 msgid "" "If there is only one argument, it must be a dictionary mapping Unicode " "ordinals (integers) or characters (strings of length 1) to Unicode ordinals, " @@ -4625,7 +4632,7 @@ msgstr "" "Ordinalzahlen, Strings (beliebiger Länge) oder ``None`` abbildet. " "Zeichenschlüssel werden anschließend in Ordinalzahlen umgewandelt." -#: ../../library/stdtypes.rst:2425 +#: ../../builtins/stdtypes.rst:2430 msgid "" "If there are two arguments, they must be strings of equal length, and in the " "resulting dictionary, each character in *from* will be mapped to the " @@ -4638,11 +4645,11 @@ msgstr "" "muss dieses ein String sein, dessen Zeichen im Ergebnis auf ``None`` " "abgebildet werden." -#: ../../library/stdtypes.rst:2432 +#: ../../builtins/stdtypes.rst:2437 msgid "*dict* can now be a :class:`frozendict`." msgstr "*dict* kann jetzt ein :class:`frozendict` sein." -#: ../../library/stdtypes.rst:2437 +#: ../../builtins/stdtypes.rst:2442 msgid "" "Split the string at the first occurrence of *sep*, and return a 3-tuple " "containing the part before the separator, the separator itself, and the part " @@ -4655,7 +4662,7 @@ msgstr "" "wird, wird ein 3-Tupel zurückgegeben, das den String selbst enthält, gefolgt " "von zwei leeren Strings." -#: ../../library/stdtypes.rst:2444 +#: ../../builtins/stdtypes.rst:2449 msgid "" ">>> 'Monty Python'.partition(' ')\n" "('Monty', ' ', 'Python')\n" @@ -4671,11 +4678,11 @@ msgstr "" ">>> 'Monty Python'.partition('-')\n" "('Monty Python', '', '')" -#: ../../library/stdtypes.rst:2453 +#: ../../builtins/stdtypes.rst:2458 msgid "See also :meth:`rpartition`." msgstr "Siehe auch :meth:`rpartition`." -#: ../../library/stdtypes.rst:2458 +#: ../../builtins/stdtypes.rst:2463 msgid "" "If the string starts with the *prefix* string, return " "``string[len(prefix):]``. Otherwise, return a copy of the original string:" @@ -4684,7 +4691,7 @@ msgstr "" "``string[len(prefix):]`` zurückgegeben. Andernfalls wird eine Kopie des " "ursprünglichen Strings zurückgegeben:" -#: ../../library/stdtypes.rst:2462 +#: ../../builtins/stdtypes.rst:2467 msgid "" ">>> 'TestHook'.removeprefix('Test')\n" "'Hook'\n" @@ -4696,11 +4703,11 @@ msgstr "" ">>> 'BaseTestCase'.removeprefix('Test')\n" "'BaseTestCase'" -#: ../../library/stdtypes.rst:2471 +#: ../../builtins/stdtypes.rst:2476 msgid "See also :meth:`removesuffix` and :meth:`startswith`." msgstr "Siehe auch :meth:`removesuffix` und :meth:`startswith`." -#: ../../library/stdtypes.rst:2476 +#: ../../builtins/stdtypes.rst:2481 msgid "" "If the string ends with the *suffix* string and that *suffix* is not empty, " "return ``string[:-len(suffix)]``. Otherwise, return a copy of the original " @@ -4710,7 +4717,7 @@ msgstr "" "nicht leer ist, wird ``string[:-len(suffix)]`` zurückgegeben. Andernfalls " "wird eine Kopie des ursprünglichen Strings zurückgegeben:" -#: ../../library/stdtypes.rst:2480 +#: ../../builtins/stdtypes.rst:2485 msgid "" ">>> 'MiscTests'.removesuffix('Tests')\n" "'Misc'\n" @@ -4722,11 +4729,11 @@ msgstr "" ">>> 'TmpDirMixin'.removesuffix('Tests')\n" "'TmpDirMixin'" -#: ../../library/stdtypes.rst:2489 +#: ../../builtins/stdtypes.rst:2494 msgid "See also :meth:`removeprefix` and :meth:`endswith`." msgstr "Siehe auch :meth:`removeprefix` und :meth:`endswith`." -#: ../../library/stdtypes.rst:2494 +#: ../../builtins/stdtypes.rst:2499 msgid "" "Return a copy of the string with all occurrences of substring *old* replaced " "by *new*. If *count* is given, only the first *count* occurrences are " @@ -4738,7 +4745,7 @@ msgstr "" "ersten *count* Vorkommen ersetzt. Wenn *count* nicht angegeben oder ``-1`` " "ist, werden alle Vorkommen ersetzt. Zum Beispiel:" -#: ../../library/stdtypes.rst:2499 +#: ../../builtins/stdtypes.rst:2504 msgid "" ">>> 'spam, spam, spam'.replace('spam', 'eggs')\n" "'eggs, eggs, eggs'\n" @@ -4750,11 +4757,11 @@ msgstr "" ">>> 'spam, spam, spam'.replace('spam', 'eggs', 1)\n" "'eggs, spam, spam'" -#: ../../library/stdtypes.rst:2506 ../../library/stdtypes.rst:3801 +#: ../../builtins/stdtypes.rst:2511 ../../builtins/stdtypes.rst:3808 msgid "*count* is now supported as a keyword argument." msgstr "*count* wird nun als Schlüsselwort-Argument unterstützt." -#: ../../library/stdtypes.rst:2512 +#: ../../builtins/stdtypes.rst:2517 msgid "" "Return the highest index in the string where substring *sub* is found, such " "that *sub* is contained within ``s[start:end]``. Optional arguments *start* " @@ -4766,7 +4773,7 @@ msgstr "" "Die optionalen Argumente *start* und *end* werden wie in der Slice-Notation " "interpretiert. Gibt im Fehlerfall ``-1`` zurück. Zum Beipiel:" -#: ../../library/stdtypes.rst:2517 +#: ../../builtins/stdtypes.rst:2522 msgid "" ">>> 'spam, spam, spam'.rfind('sp')\n" "12\n" @@ -4778,11 +4785,11 @@ msgstr "" ">>> 'spam, spam, spam'.rfind('sp', 0, 10)\n" "6" -#: ../../library/stdtypes.rst:2524 +#: ../../builtins/stdtypes.rst:2529 msgid "See also :meth:`find` and :meth:`rindex`." msgstr "Siehe auch :meth:`find` und :meth:`rindex`." -#: ../../library/stdtypes.rst:2529 +#: ../../builtins/stdtypes.rst:2534 msgid "" "Like :meth:`rfind` but raises :exc:`ValueError` when the substring *sub* is " "not found. For example:" @@ -4790,7 +4797,7 @@ msgstr "" "Wie :meth:`rfind`, löst jedoch einen :exc:`ValueError` aus, wenn der " "Teilstring *sub* nicht gefunden wird. Zum Beipsiel:" -#: ../../library/stdtypes.rst:2533 +#: ../../builtins/stdtypes.rst:2538 msgid "" ">>> 'spam, spam, spam'.rindex('spam')\n" "12\n" @@ -4810,11 +4817,11 @@ msgstr "" " ~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^\n" "ValueError: substring not found" -#: ../../library/stdtypes.rst:2544 +#: ../../builtins/stdtypes.rst:2549 msgid "See also :meth:`index` and :meth:`find`." msgstr "Siehe auch :meth:`index` und :meth:`find`." -#: ../../library/stdtypes.rst:2549 +#: ../../builtins/stdtypes.rst:2554 msgid "" "Return the string right justified in a string of length *width*. Padding is " "done using the specified *fillchar* (default is an ASCII space). The " @@ -4825,7 +4832,7 @@ msgstr "" "Leerzeichen). Der ursprüngliche String wird zurückgegeben, wenn *width* " "kleiner oder gleich ``len(s)`` ist." -#: ../../library/stdtypes.rst:2555 +#: ../../builtins/stdtypes.rst:2560 msgid "" ">>> 'Python'.rjust(10)\n" "' Python'\n" @@ -4841,11 +4848,11 @@ msgstr "" ">>> 'Monty Python'.rjust(10, '.')\n" "'Monty Python'" -#: ../../library/stdtypes.rst:2564 +#: ../../builtins/stdtypes.rst:2569 msgid "See also :meth:`ljust` and :meth:`zfill`." msgstr "Siehe auch :meth:`ljust` und :meth:`zfill`." -#: ../../library/stdtypes.rst:2569 +#: ../../builtins/stdtypes.rst:2574 msgid "" "Split the string at the last occurrence of *sep*, and return a 3-tuple " "containing the part before the separator, the separator itself, and the part " @@ -4858,7 +4865,7 @@ msgstr "" "wird, wird ein 3-Tupel zurückgegeben, das zwei leere Strings enthält, " "gefolgt von dem String selbst." -#: ../../library/stdtypes.rst:2576 +#: ../../builtins/stdtypes.rst:2581 msgid "" ">>> 'Monty Python'.rpartition(' ')\n" "('Monty', ' ', 'Python')\n" @@ -4874,17 +4881,19 @@ msgstr "" ">>> 'Monty Python'.rpartition('-')\n" "('', '', 'Monty Python')" -#: ../../library/stdtypes.rst:2585 +#: ../../builtins/stdtypes.rst:2590 msgid "See also :meth:`partition`." msgstr "Siehe auch :meth:`partition`." -#: ../../library/stdtypes.rst:2590 +#: ../../builtins/stdtypes.rst:2595 +#, fuzzy msgid "" "Return a list of the words in the string, using *sep* as the delimiter " "string. If *maxsplit* is given, at most *maxsplit* splits are done, the " -"*rightmost* ones. If *sep* is not specified or ``None``, any whitespace " -"string is a separator. Except for splitting from the right, :meth:`rsplit` " -"behaves like :meth:`split` which is described in detail below." +"*rightmost* ones. If *sep* is not specified or ``None``, any :meth:" +"`whitespace ` string is a separator. Except for splitting from " +"the right, :meth:`rsplit` behaves like :meth:`split` which is described in " +"detail below." msgstr "" "Gibt eine Liste der Wörter im String zurück, wobei *sep* als Trenn-String " "verwendet wird. Wenn *maxsplit* angegeben ist, werden höchstens *maxsplit* " @@ -4894,7 +4903,7 @@ msgstr "" "meth:`rsplit` wie :meth:`split`, was weiter unten ausführlich beschrieben " "ist." -#: ../../library/stdtypes.rst:2599 +#: ../../builtins/stdtypes.rst:2605 msgid "" "Return a copy of the string with trailing characters removed. The *chars* " "argument is a string specifying the set of characters to be removed. If " @@ -4909,7 +4918,7 @@ msgstr "" "ist kein Suffix; stattdessen werden alle Kombinationen seiner Werte " "entfernt. Zum Beispiel:" -#: ../../library/stdtypes.rst:2605 +#: ../../builtins/stdtypes.rst:2611 msgid "" ">>> ' spacious '.rstrip()\n" "' spacious'\n" @@ -4921,7 +4930,7 @@ msgstr "" ">>> 'mississippi'.rstrip('ipz')\n" "'mississ'" -#: ../../library/stdtypes.rst:2612 +#: ../../builtins/stdtypes.rst:2618 msgid "" "See :meth:`removesuffix` for a method that will remove a single suffix " "string rather than all of a set of characters. For example::" @@ -4929,7 +4938,7 @@ msgstr "" "Siehe :meth:`removesuffix` für eine Methode, die einen einzelnen Suffix-" "String anstelle einer Menge aller Zeichen entfernt. Zum Beispiel::" -#: ../../library/stdtypes.rst:2615 +#: ../../builtins/stdtypes.rst:2621 msgid "" ">>> 'Monty Python'.rstrip(' Python')\n" "'M'\n" @@ -4941,11 +4950,11 @@ msgstr "" ">>> 'Monty Python'.removesuffix(' Python')\n" "'Monty'" -#: ../../library/stdtypes.rst:2620 +#: ../../builtins/stdtypes.rst:2626 msgid "See also :meth:`strip`." msgstr "Siehe auch :meth:`strip`." -#: ../../library/stdtypes.rst:2625 +#: ../../builtins/stdtypes.rst:2631 msgid "" "Return a list of the words in the string, using *sep* as the delimiter " "string. If *maxsplit* is given, at most *maxsplit* splits are done (thus, " @@ -4960,7 +4969,7 @@ msgstr "" "Begrenzung für die Anzahl der Trennungen (alle möglichen Trennungen werden " "vorgenommen)." -#: ../../library/stdtypes.rst:2631 +#: ../../builtins/stdtypes.rst:2637 msgid "" "If *sep* is given, consecutive delimiters are not grouped together and are " "deemed to delimit empty strings (for example, ``'1,,2'.split(',')`` returns " @@ -4976,7 +4985,7 @@ msgstr "" "mehrerer Trennzeichen zu teilen, verwende :func:`re.split`). Das Teilen " "eines leeren Strings mit einem angegebenen Trennzeichen gibt ``['']`` zurück." -#: ../../library/stdtypes.rst:2640 +#: ../../builtins/stdtypes.rst:2646 msgid "" ">>> '1,2,3'.split(',')\n" "['1', '2', '3']\n" @@ -4996,14 +5005,15 @@ msgstr "" ">>> '1<>2<>3<4'.split('<>')\n" "['1', '2', '3<4']" -#: ../../library/stdtypes.rst:2651 +#: ../../builtins/stdtypes.rst:2657 +#, fuzzy msgid "" "If *sep* is not specified or is ``None``, a different splitting algorithm is " -"applied: runs of consecutive whitespace are regarded as a single separator, " -"and the result will contain no empty strings at the start or end if the " -"string has leading or trailing whitespace. Consequently, splitting an empty " -"string or a string consisting of just whitespace with a ``None`` separator " -"returns ``[]``." +"applied: runs of consecutive :meth:`whitespace ` are regarded " +"as a single separator, and the result will contain no empty strings at the " +"start or end if the string has leading or trailing whitespace. " +"Consequently, splitting an empty string or a string consisting of just " +"whitespace with a ``None`` separator returns ``[]``." msgstr "" "Wenn *sep* nicht angegeben oder ``None`` ist, wird ein anderer " "Trennalgorithmus angewendet: Folgen aufeinanderfolgender Whitespaces werden " @@ -5013,7 +5023,7 @@ msgstr "" "eines Strings, der nur aus Whitespaces besteht, mit einem ``None``-" "Trennzeichen ``[]`` zurück." -#: ../../library/stdtypes.rst:2660 +#: ../../builtins/stdtypes.rst:2667 msgid "" ">>> '1 2 3'.split()\n" "['1', '2', '3']\n" @@ -5029,7 +5039,7 @@ msgstr "" ">>> ' 1 2 3 '.split()\n" "['1', '2', '3']" -#: ../../library/stdtypes.rst:2669 +#: ../../builtins/stdtypes.rst:2676 msgid "" "If *sep* is not specified or is ``None`` and *maxsplit* is ``0``, only " "leading runs of consecutive whitespace are considered." @@ -5038,7 +5048,7 @@ msgstr "" "ist, werden nur führende Folgen aufeinanderfolgender Whitespaces " "berücksichtigt." -#: ../../library/stdtypes.rst:2674 +#: ../../builtins/stdtypes.rst:2681 msgid "" ">>> \"\".split(None, 0)\n" "[]\n" @@ -5054,11 +5064,11 @@ msgstr "" ">>> \" foo \".split(maxsplit=0)\n" "['foo ']" -#: ../../library/stdtypes.rst:2683 +#: ../../builtins/stdtypes.rst:2690 msgid "See also :meth:`join` and :meth:`rsplit`." msgstr "See also :meth:`join` and :meth:`rsplit`." -#: ../../library/stdtypes.rst:2691 +#: ../../builtins/stdtypes.rst:2698 msgid "" "Return a list of the lines in the string, breaking at line boundaries. Line " "breaks are not included in the resulting list unless *keepends* is given and " @@ -5068,7 +5078,7 @@ msgstr "" "Zeilenbegrenzungen. Zeilenumbrüche sind nicht in der Ergebnisliste " "enthalten, es sei denn, *keepends* ist angegeben und wahr." -#: ../../library/stdtypes.rst:2695 +#: ../../builtins/stdtypes.rst:2702 msgid "" "This method splits on the following line boundaries. In particular, the " "boundaries are a superset of :term:`universal newlines`." @@ -5077,119 +5087,119 @@ msgstr "" "die Begrenzungen eine Obermenge von :term:`universellen Zeilenenden " "`." -#: ../../library/stdtypes.rst:2699 +#: ../../builtins/stdtypes.rst:2706 msgid "Representation" msgstr "Darstellung" -#: ../../library/stdtypes.rst:2699 +#: ../../builtins/stdtypes.rst:2706 msgid "Description" msgstr "Beschreibung" -#: ../../library/stdtypes.rst:2701 +#: ../../builtins/stdtypes.rst:2708 msgid "``\\n``" msgstr "``\\n``" -#: ../../library/stdtypes.rst:2701 +#: ../../builtins/stdtypes.rst:2708 msgid "Line Feed" msgstr "Zeilenvorschub (Line Feed)" -#: ../../library/stdtypes.rst:2703 +#: ../../builtins/stdtypes.rst:2710 msgid "``\\r``" msgstr "``\\r``" -#: ../../library/stdtypes.rst:2703 +#: ../../builtins/stdtypes.rst:2710 msgid "Carriage Return" msgstr "Wagenrücklauf (Carriage Return)" -#: ../../library/stdtypes.rst:2705 +#: ../../builtins/stdtypes.rst:2712 msgid "``\\r\\n``" msgstr "``\\r\\n``" -#: ../../library/stdtypes.rst:2705 +#: ../../builtins/stdtypes.rst:2712 msgid "Carriage Return + Line Feed" msgstr "Wagenrücklauf + Zeilenvorschub" -#: ../../library/stdtypes.rst:2707 +#: ../../builtins/stdtypes.rst:2714 msgid "``\\v`` or ``\\x0b``" msgstr "``\\v`` oder ``\\x0b``" -#: ../../library/stdtypes.rst:2707 +#: ../../builtins/stdtypes.rst:2714 msgid "Line Tabulation" msgstr "Vertikaler Tabulator (Line Tabulation)" -#: ../../library/stdtypes.rst:2709 +#: ../../builtins/stdtypes.rst:2716 msgid "``\\f`` or ``\\x0c``" msgstr "``\\f`` oder ``\\x0c``" -#: ../../library/stdtypes.rst:2709 +#: ../../builtins/stdtypes.rst:2716 msgid "Form Feed" msgstr "Seitenvorschub (Form Feed)" -#: ../../library/stdtypes.rst:2711 +#: ../../builtins/stdtypes.rst:2718 msgid "``\\x1c``" msgstr "``\\x1c``" -#: ../../library/stdtypes.rst:2711 +#: ../../builtins/stdtypes.rst:2718 msgid "File Separator" msgstr "Dateitrennzeichen (File Separator)" -#: ../../library/stdtypes.rst:2713 +#: ../../builtins/stdtypes.rst:2720 msgid "``\\x1d``" msgstr "``\\x1d``" -#: ../../library/stdtypes.rst:2713 +#: ../../builtins/stdtypes.rst:2720 msgid "Group Separator" msgstr "Gruppentrennzeichen (Group Separator)" -#: ../../library/stdtypes.rst:2715 +#: ../../builtins/stdtypes.rst:2722 msgid "``\\x1e``" msgstr "``\\x1e``" -#: ../../library/stdtypes.rst:2715 +#: ../../builtins/stdtypes.rst:2722 msgid "Record Separator" msgstr "Datensatztrennzeichen (Record Separator)" -#: ../../library/stdtypes.rst:2717 +#: ../../builtins/stdtypes.rst:2724 msgid "``\\x85``" msgstr "``\\x85``" -#: ../../library/stdtypes.rst:2717 +#: ../../builtins/stdtypes.rst:2724 msgid "Next Line (C1 Control Code)" msgstr "Nächste Zeile (C1-Steuercode)" -#: ../../library/stdtypes.rst:2719 +#: ../../builtins/stdtypes.rst:2726 msgid "``\\u2028``" msgstr "``\\u2028``" -#: ../../library/stdtypes.rst:2719 +#: ../../builtins/stdtypes.rst:2726 msgid "Line Separator" msgstr "Zeilentrennzeichen (Line Separator)" -#: ../../library/stdtypes.rst:2721 +#: ../../builtins/stdtypes.rst:2728 msgid "``\\u2029``" msgstr "``\\u2029``" -#: ../../library/stdtypes.rst:2721 +#: ../../builtins/stdtypes.rst:2728 msgid "Paragraph Separator" msgstr "Absatztrennzeichen (Paragraph Separator)" -#: ../../library/stdtypes.rst:2726 +#: ../../builtins/stdtypes.rst:2733 msgid "``\\v`` and ``\\f`` added to list of line boundaries." msgstr "``\\v`` und ``\\f`` zur Liste der Zeilenbegrenzungen hinzugefügt." -#: ../../library/stdtypes.rst:2728 ../../library/stdtypes.rst:2834 -#: ../../library/stdtypes.rst:3011 ../../library/stdtypes.rst:4014 -#: ../../library/stdtypes.rst:4032 ../../library/stdtypes.rst:4122 -#: ../../library/stdtypes.rst:4138 ../../library/stdtypes.rst:4163 -#: ../../library/stdtypes.rst:4177 ../../library/stdtypes.rst:4205 -#: ../../library/stdtypes.rst:4219 ../../library/stdtypes.rst:4237 -#: ../../library/stdtypes.rst:4264 ../../library/stdtypes.rst:4287 -#: ../../library/stdtypes.rst:4314 ../../library/stdtypes.rst:4356 -#: ../../library/stdtypes.rst:4380 +#: ../../builtins/stdtypes.rst:2735 ../../builtins/stdtypes.rst:2841 +#: ../../builtins/stdtypes.rst:3018 ../../builtins/stdtypes.rst:4024 +#: ../../builtins/stdtypes.rst:4043 ../../builtins/stdtypes.rst:4134 +#: ../../builtins/stdtypes.rst:4150 ../../builtins/stdtypes.rst:4175 +#: ../../builtins/stdtypes.rst:4189 ../../builtins/stdtypes.rst:4217 +#: ../../builtins/stdtypes.rst:4231 ../../builtins/stdtypes.rst:4249 +#: ../../builtins/stdtypes.rst:4276 ../../builtins/stdtypes.rst:4299 +#: ../../builtins/stdtypes.rst:4326 ../../builtins/stdtypes.rst:4368 +#: ../../builtins/stdtypes.rst:4392 msgid "For example::" msgstr "Zum Beispiel::" -#: ../../library/stdtypes.rst:2730 +#: ../../builtins/stdtypes.rst:2737 msgid "" ">>> 'ab c\\n\\nde fg\\rkl\\r\\n'.splitlines()\n" "['ab c', '', 'de fg', 'kl']\n" @@ -5201,7 +5211,7 @@ msgstr "" ">>> 'ab c\\n\\nde fg\\rkl\\r\\n'.splitlines(keepends=True)\n" "['ab c\\n', '\\n', 'de fg\\r', 'kl\\r\\n']" -#: ../../library/stdtypes.rst:2735 +#: ../../builtins/stdtypes.rst:2742 msgid "" "Unlike :meth:`~str.split` when a delimiter string *sep* is given, this " "method returns an empty list for the empty string, and a terminal line break " @@ -5211,7 +5221,7 @@ msgstr "" "ist, gibt diese Methode für den leeren String eine leere Liste zurück, und " "ein abschließender Zeilenumbruch führt nicht zu einer zusätzlichen Zeile::" -#: ../../library/stdtypes.rst:2739 +#: ../../builtins/stdtypes.rst:2746 msgid "" ">>> \"\".splitlines()\n" "[]\n" @@ -5223,11 +5233,11 @@ msgstr "" ">>> \"One line\\n\".splitlines()\n" "['One line']" -#: ../../library/stdtypes.rst:2744 +#: ../../builtins/stdtypes.rst:2751 msgid "For comparison, ``split('\\n')`` gives::" msgstr "Zum Vergleich liefert ``split('\\n')``::" -#: ../../library/stdtypes.rst:2746 +#: ../../builtins/stdtypes.rst:2753 msgid "" ">>> ''.split('\\n')\n" "['']\n" @@ -5239,7 +5249,7 @@ msgstr "" ">>> 'Two lines\\n'.split('\\n')\n" "['Two lines', '']" -#: ../../library/stdtypes.rst:2754 +#: ../../builtins/stdtypes.rst:2761 msgid "" "Return ``True`` if string starts with the *prefix*, otherwise return " "``False``. *prefix* can also be a tuple of prefixes to look for. With " @@ -5251,7 +5261,7 @@ msgstr "" "optionalem *start* wird der String ab dieser Position geprüft. Mit " "optionalem *end* wird der Vergleich an dieser Position beendet." -#: ../../library/stdtypes.rst:2761 +#: ../../builtins/stdtypes.rst:2768 msgid "" ">>> 'Python'.startswith('Py')\n" "True\n" @@ -5267,11 +5277,11 @@ msgstr "" ">>> 'Python is amazing'.startswith('is', 7)\n" "True" -#: ../../library/stdtypes.rst:2770 +#: ../../builtins/stdtypes.rst:2777 msgid "See also :meth:`endswith` and :meth:`removeprefix`." msgstr "Siehe auch :meth:`endswith` und :meth:`removeprefix`." -#: ../../library/stdtypes.rst:2775 +#: ../../builtins/stdtypes.rst:2782 msgid "" "Return a copy of the string with the leading and trailing characters " "removed. The *chars* argument is a string specifying the set of characters " @@ -5286,11 +5296,11 @@ msgstr "" "Whitespace. Das Argument chars ist kein Präfix oder Suffix; stattdessen " "werden alle Kombinationen seiner Werte entfernt." -#: ../../library/stdtypes.rst:2781 +#: ../../builtins/stdtypes.rst:2788 msgid "Whitespace characters are defined by :meth:`str.isspace`." msgstr "Whitespace-Zeichen werden durch :meth:`str.isspace` definiert." -#: ../../library/stdtypes.rst:2785 +#: ../../builtins/stdtypes.rst:2792 msgid "" ">>> ' spacious '.strip()\n" "'spacious'\n" @@ -5302,7 +5312,7 @@ msgstr "" ">>> 'www.example.com'.strip('cmowz.')\n" "'example'" -#: ../../library/stdtypes.rst:2792 +#: ../../builtins/stdtypes.rst:2799 msgid "" "The outermost leading and trailing *chars* argument values are stripped from " "the string. Characters are removed from the leading end until reaching a " @@ -5315,7 +5325,7 @@ msgstr "" "enthalten ist. Ein entsprechender Vorgang findet am nachgestellten Ende " "statt." -#: ../../library/stdtypes.rst:2799 +#: ../../builtins/stdtypes.rst:2806 msgid "" ">>> comment_string = '#....... Section 3.2.1 Issue #32 .......'\n" ">>> comment_string.strip('.#! ')\n" @@ -5325,11 +5335,11 @@ msgstr "" ">>> comment_string.strip('.#! ')\n" "'Section 3.2.1 Issue #32'" -#: ../../library/stdtypes.rst:2805 +#: ../../builtins/stdtypes.rst:2812 msgid "See also :meth:`rstrip`." msgstr "Siehe auch :meth:`rstrip`." -#: ../../library/stdtypes.rst:2810 +#: ../../builtins/stdtypes.rst:2817 msgid "" "Return a copy of the string with uppercase characters converted to lowercase " "and vice versa. For example:" @@ -5337,7 +5347,7 @@ msgstr "" "Gibt eine Kopie der Zeichenkette zurück, bei der Großbuchstaben in " "Kleinbuchstaben umgewandelt werden und umgekehrt. Zum Beispiel:" -#: ../../library/stdtypes.rst:2813 +#: ../../builtins/stdtypes.rst:2820 msgid "" ">>> 'Hello World'.swapcase()\n" "'hELLO wORLD'" @@ -5345,7 +5355,7 @@ msgstr "" ">>> 'Hello World'.swapcase()\n" "'hELLO wORLD'" -#: ../../library/stdtypes.rst:2818 +#: ../../builtins/stdtypes.rst:2825 msgid "" "Note that it is not necessarily true that ``s.swapcase().swapcase() == s``. " "For example:" @@ -5353,7 +5363,7 @@ msgstr "" "Beachte, dass es nicht zwangsläufig zutrifft, dass s.swapcase().swapcase() " "== s gilt. Zum Beispiel:" -#: ../../library/stdtypes.rst:2821 +#: ../../builtins/stdtypes.rst:2828 msgid "" ">>> 'straße'.swapcase().swapcase()\n" "'strasse'" @@ -5361,11 +5371,11 @@ msgstr "" ">>> 'straße'.swapcase().swapcase()\n" "'strasse'" -#: ../../library/stdtypes.rst:2826 +#: ../../builtins/stdtypes.rst:2833 msgid "See also :meth:`str.lower` and :meth:`str.upper`." msgstr "Siehe auch :meth:`str.lower` und :meth:`str.upper`." -#: ../../library/stdtypes.rst:2831 +#: ../../builtins/stdtypes.rst:2838 msgid "" "Return a titlecased version of the string where words start with an " "uppercase character and the remaining characters are lowercase." @@ -5373,7 +5383,7 @@ msgstr "" "Gibt eine Titlecase-Version des Strings zurück, bei der Wörter mit einem " "Großbuchstaben beginnen und die restlichen Zeichen kleingeschrieben sind." -#: ../../library/stdtypes.rst:2836 +#: ../../builtins/stdtypes.rst:2843 msgid "" ">>> 'Hello world'.title()\n" "'Hello World'" @@ -5381,7 +5391,7 @@ msgstr "" ">>> 'Hello world'.title()\n" "'Hello World'" -#: ../../library/stdtypes.rst:2839 ../../library/stdtypes.rst:4324 +#: ../../builtins/stdtypes.rst:2846 ../../builtins/stdtypes.rst:4336 msgid "" "The algorithm uses a simple language-independent definition of a word as " "groups of consecutive letters. The definition works in many contexts but it " @@ -5394,7 +5404,7 @@ msgstr "" "Verkürzungen und Possessivformen Wortgrenzen bilden, was möglicherweise " "nicht das gewünschte Ergebnis ist::" -#: ../../library/stdtypes.rst:2844 +#: ../../builtins/stdtypes.rst:2851 msgid "" ">>> \"they're bill's friends from the UK\".title()\n" "\"They'Re Bill'S Friends From The Uk\"" @@ -5402,7 +5412,7 @@ msgstr "" ">>> \"they're bill's friends from the UK\".title()\n" "\"They'Re Bill'S Friends From The Uk\"" -#: ../../library/stdtypes.rst:2847 +#: ../../builtins/stdtypes.rst:2854 msgid "" "The :func:`string.capwords` function does not have this problem, as it " "splits words on spaces only." @@ -5410,7 +5420,7 @@ msgstr "" "Die Funktion :func:`string.capwords` hat dieses Problem nicht, da sie Wörter " "ausschließlich an Leerzeichen trennt." -#: ../../library/stdtypes.rst:2850 +#: ../../builtins/stdtypes.rst:2857 msgid "" "Alternatively, a workaround for apostrophes can be constructed using regular " "expressions::" @@ -5418,7 +5428,7 @@ msgstr "" "Alternativ kann ein Workaround für Apostrophe mithilfe regulärer Ausdrücke " "konstruiert werden::" -#: ../../library/stdtypes.rst:2853 +#: ../../builtins/stdtypes.rst:2860 msgid "" ">>> import re\n" ">>> def titlecase(s):\n" @@ -5438,11 +5448,11 @@ msgstr "" ">>> titlecase(\"they're bill's friends.\")\n" "\"They're Bill's Friends.\"" -#: ../../library/stdtypes.rst:2862 +#: ../../builtins/stdtypes.rst:2869 msgid "See also :meth:`istitle`." msgstr "Siehe auch :meth:`istitle`." -#: ../../library/stdtypes.rst:2867 +#: ../../builtins/stdtypes.rst:2874 msgid "" "Return a copy of the string in which each character has been mapped through " "the given translation table. The table must be an object that implements " @@ -5464,7 +5474,7 @@ msgstr "" "dem Ergebnis-String zu löschen; oder eine :exc:`LookupError`-Ausnahme " "auslösen, um das Zeichen auf sich selbst abzubilden." -#: ../../library/stdtypes.rst:2876 +#: ../../builtins/stdtypes.rst:2883 msgid "" "You can use :meth:`str.maketrans` to create a translation map from character-" "to-character mappings in different formats." @@ -5472,7 +5482,7 @@ msgstr "" "Du kannst :meth:`str.maketrans` verwenden, um eine Übersetzungstabelle aus " "Zeichen-zu-Zeichen-Abbildungen in verschiedenen Formaten zu erstellen." -#: ../../library/stdtypes.rst:2879 +#: ../../builtins/stdtypes.rst:2886 msgid "" "The following example uses a mapping to replace ``'a'`` with ``'X'``, " "``'b'`` with ``'Y'``, and delete ``'c'``:" @@ -5480,7 +5490,7 @@ msgstr "" "Das folgende Beispiel verwendet ein Mapping, um ``'a'`` durch ``'X'`` und " "``'b'`` durch ``'Y'`` zu ersetzen sowie ``'c'`` zu löschen:" -#: ../../library/stdtypes.rst:2882 +#: ../../builtins/stdtypes.rst:2889 msgid "" ">>> 'abc123'.translate({ord('a'): 'X', ord('b'): 'Y', ord('c'): None})\n" "'XY123'" @@ -5488,7 +5498,7 @@ msgstr "" ">>> 'abc123'.translate({ord('a'): 'X', ord('b'): 'Y', ord('c'): None})\n" "'XY123'" -#: ../../library/stdtypes.rst:2887 +#: ../../builtins/stdtypes.rst:2894 msgid "" "See also the :mod:`codecs` module for a more flexible approach to custom " "character mappings." @@ -5496,7 +5506,7 @@ msgstr "" "Siehe auch das Modul :mod:`codecs` für einen flexibleren Ansatz bei " "benutzerdefinierten Zeichenabbildungen." -#: ../../library/stdtypes.rst:2893 +#: ../../builtins/stdtypes.rst:2900 msgid "" "Return a copy of the string with all the cased characters [4]_ converted to " "uppercase. Note that ``s.upper().isupper()`` might be ``False`` if ``s`` " @@ -5511,7 +5521,7 @@ msgstr "" "resultierenden Zeichens/Zeichen nicht \"Lu\" (Buchstabe, Großbuchstabe), " "sondern z. B. \"Lt\" (Buchstabe, Titlecase) ist." -#: ../../library/stdtypes.rst:2899 +#: ../../builtins/stdtypes.rst:2906 msgid "" "The uppercasing algorithm used is `described in section 3.13.2 'Default Case " "Conversion' of the Unicode Standard `__." -#: ../../library/stdtypes.rst:2906 +#: ../../builtins/stdtypes.rst:2913 msgid "" "Return a copy of the string left filled with ASCII ``'0'`` digits to make a " "string of length *width*. A leading sign prefix (``'+'``/``'-'``) is handled " @@ -5535,7 +5545,7 @@ msgstr "" "ursprüngliche String wird zurückgegeben, wenn *width* kleiner oder gleich " "``len(s)`` ist." -#: ../../library/stdtypes.rst:2914 +#: ../../builtins/stdtypes.rst:2921 msgid "" ">>> \"42\".zfill(5)\n" "'00042'\n" @@ -5547,11 +5557,11 @@ msgstr "" ">>> \"-42\".zfill(5)\n" "'-0042'" -#: ../../library/stdtypes.rst:2941 +#: ../../builtins/stdtypes.rst:2948 msgid "Formatted String Literals (f-strings)" msgstr "Formatierte String-Literale (f-Strings)" -#: ../../library/stdtypes.rst:2944 +#: ../../builtins/stdtypes.rst:2951 msgid "" "The :keyword:`await` and :keyword:`async for` can be used in expressions " "within f-strings." @@ -5559,11 +5569,11 @@ msgstr "" ":keyword:`await` und :keyword:`async for` können in Ausdrücken innerhalb von " "f-Strings verwendet werden." -#: ../../library/stdtypes.rst:2947 +#: ../../builtins/stdtypes.rst:2954 msgid "Added the debug specifier (``=``)" msgstr "Der Debug-Bezeichner (``=``) wurde hinzugefügt" -#: ../../library/stdtypes.rst:2949 +#: ../../builtins/stdtypes.rst:2956 msgid "" "Many restrictions on expressions within f-strings have been removed. " "Notably, nested strings, comments, and backslashes are now permitted." @@ -5572,7 +5582,7 @@ msgstr "" "aufgehoben. Insbesondere sind verschachtelte Strings, Kommentare und " "Backslashes nun erlaubt." -#: ../../library/stdtypes.rst:2953 +#: ../../builtins/stdtypes.rst:2960 msgid "" "An :dfn:`f-string` (formally a :dfn:`formatted string literal`) is a string " "literal that is prefixed with ``f`` or ``F``. This type of string literal " @@ -5587,21 +5597,21 @@ msgstr "" "geschweifte Klammern (``{}``) abgegrenzt werden. Jedes Ersetzungsfeld muss " "einen Ausdruck enthalten, optional gefolgt von:" -#: ../../library/stdtypes.rst:2960 +#: ../../builtins/stdtypes.rst:2967 msgid "a *debug specifier* -- an equal sign (``=``);" msgstr "einen *Debug-Bezeichner* – ein Gleichheitszeichen (``=``);" -#: ../../library/stdtypes.rst:2961 +#: ../../builtins/stdtypes.rst:2968 msgid "a *conversion specifier* -- ``!s``, ``!r`` or ``!a``; and/or" msgstr "" "einen *Konvertierungsbezeichner* – ``!s``, ``!r`` oder ``!a``; und/oder" -#: ../../library/stdtypes.rst:2962 +#: ../../builtins/stdtypes.rst:2969 msgid "a *format specifier* prefixed with a colon (``:``)." msgstr "" "einen *Formatbezeichner*, dem ein Doppelpunkt (``:``) vorangestellt ist." -#: ../../library/stdtypes.rst:2964 +#: ../../builtins/stdtypes.rst:2971 msgid "" "See the :ref:`Lexical Analysis section on f-strings ` for details " "on the syntax of these fields." @@ -5609,11 +5619,11 @@ msgstr "" "Details zur Syntax dieser Felder findest du im :ref:`Abschnitt zur " "lexikalischen Analyse zu f-Strings `." -#: ../../library/stdtypes.rst:2968 +#: ../../builtins/stdtypes.rst:2975 msgid "Debug specifier" msgstr "Debug-Bezeichner" -#: ../../library/stdtypes.rst:2972 +#: ../../builtins/stdtypes.rst:2979 msgid "" "If a debug specifier -- an equal sign (``=``) -- appears after the " "replacement field expression, the resulting f-string will contain the " @@ -5625,7 +5635,7 @@ msgstr "" "Quelltext des Ausdrucks, das Gleichheitszeichen sowie den Wert des " "Ausdrucks. Dies ist häufig beim Debuggen nützlich::" -#: ../../library/stdtypes.rst:2977 +#: ../../builtins/stdtypes.rst:2984 msgid "" ">>> number = 14.3\n" ">>> f'{number=}'\n" @@ -5635,7 +5645,7 @@ msgstr "" ">>> f'{number=}'\n" "'number=14.3'" -#: ../../library/stdtypes.rst:2981 +#: ../../builtins/stdtypes.rst:2988 msgid "" "Whitespace before, inside and after the expression, as well as whitespace " "after the equal sign, is significant --- it is retained in the result::" @@ -5643,7 +5653,7 @@ msgstr "" "Whitespace vor, innerhalb und nach dem Ausdruck sowie Whitespace nach dem " "Gleichheitszeichen ist bedeutsam – er wird im Ergebnis beibehalten::" -#: ../../library/stdtypes.rst:2984 +#: ../../builtins/stdtypes.rst:2991 msgid "" ">>> f'{ number - 4 = }'\n" "' number - 4 = 10.3'" @@ -5651,11 +5661,11 @@ msgstr "" ">>> f'{ number - 4 = }'\n" "' number - 4 = 10.3'" -#: ../../library/stdtypes.rst:2989 +#: ../../builtins/stdtypes.rst:2996 msgid "Conversion specifier" msgstr "Konvertierungsbezeichner" -#: ../../library/stdtypes.rst:2991 +#: ../../builtins/stdtypes.rst:2998 msgid "" "By default, the value of a replacement field expression is converted to a " "string using :func:`str`::" @@ -5663,7 +5673,7 @@ msgstr "" "Standardmäßig wird der Wert eines Ausdrucks im Ersetzungsfeld mithilfe von :" "func:`str` in eine Zeichenkette umgewandelt::" -#: ../../library/stdtypes.rst:2994 +#: ../../builtins/stdtypes.rst:3001 msgid "" ">>> from fractions import Fraction\n" ">>> one_third = Fraction(1, 3)\n" @@ -5675,7 +5685,7 @@ msgstr "" ">>> f'{one_third}'\n" "'1/3'" -#: ../../library/stdtypes.rst:2999 +#: ../../builtins/stdtypes.rst:3006 msgid "" "When a debug specifier but no format specifier is used, the default " "conversion instead uses :func:`repr`::" @@ -5683,7 +5693,7 @@ msgstr "" "Wird ein Debug-Bezeichner, aber kein Formatbezeichner verwendet, nutzt die " "Standardkonvertierung stattdessen :func:`repr`::" -#: ../../library/stdtypes.rst:3002 +#: ../../builtins/stdtypes.rst:3009 msgid "" ">>> f'{one_third = }'\n" "'one_third = Fraction(1, 3)'" @@ -5691,26 +5701,26 @@ msgstr "" ">>> f'{one_third = }'\n" "'one_third = Fraction(1, 3)'" -#: ../../library/stdtypes.rst:3005 +#: ../../builtins/stdtypes.rst:3012 msgid "" "The conversion can be specified explicitly using one of these specifiers:" msgstr "" "Die Konvertierung kann explizit mithilfe eines dieser Bezeichner angegeben " "werden:" -#: ../../library/stdtypes.rst:3007 +#: ../../builtins/stdtypes.rst:3014 msgid "``!s`` for :func:`str`" msgstr "``!s`` für :func:`str`" -#: ../../library/stdtypes.rst:3008 +#: ../../builtins/stdtypes.rst:3015 msgid "``!r`` for :func:`repr`" msgstr "``!r`` für :func:`repr`" -#: ../../library/stdtypes.rst:3009 +#: ../../builtins/stdtypes.rst:3016 msgid "``!a`` for :func:`ascii`" msgstr "``!a`` für :func:`ascii`" -#: ../../library/stdtypes.rst:3013 +#: ../../builtins/stdtypes.rst:3020 msgid "" ">>> str(one_third)\n" "'1/3'\n" @@ -5742,11 +5752,11 @@ msgstr "" ">>> f'{string = !a}'\n" "\"string = '\\\\xa1ko\\\\u010dka \\\\U0001f638!'\"" -#: ../../library/stdtypes.rst:3030 +#: ../../builtins/stdtypes.rst:3037 msgid "Format specifier" msgstr "Formatbezeichner" -#: ../../library/stdtypes.rst:3032 +#: ../../builtins/stdtypes.rst:3039 msgid "" "After the expression has been evaluated, and possibly converted using an " "explicit conversion specifier, it is formatted using the :func:`format` " @@ -5763,7 +5773,7 @@ msgstr "" "format` wird dann als Endwert für das Ersetzungsfeld verwendet. Zum " "Beispiel::" -#: ../../library/stdtypes.rst:3039 +#: ../../builtins/stdtypes.rst:3046 msgid "" ">>> from fractions import Fraction\n" ">>> one_third = Fraction(1, 3)\n" @@ -5787,11 +5797,11 @@ msgstr "" ">>> f'{one_third = :~>10}~'\n" "'one_third = ~~~~~~~1/3~'" -#: ../../library/stdtypes.rst:3053 +#: ../../builtins/stdtypes.rst:3060 msgid "Template String Literals (t-strings)" msgstr "Formatierte String-Literale (t-Strings)" -#: ../../library/stdtypes.rst:3055 +#: ../../builtins/stdtypes.rst:3062 msgid "" "A :dfn:`t-string` (formally a :dfn:`template string literal`) is a string " "literal that is prefixed with ``t`` or ``T``." @@ -5799,7 +5809,7 @@ msgstr "" "Ein :dfn:`T-String` (formell ein :dfn:`Template-Zeichenfolgenliteral`) ist " "ein Zeichenfolgenliteral, dem ``t`` oder ``T`` vorangestellt ist." -#: ../../library/stdtypes.rst:3058 +#: ../../builtins/stdtypes.rst:3065 msgid "" "These strings follow the same syntax and evaluation rules as :ref:`formatted " "string literals `, with the following differences:" @@ -5808,7 +5818,7 @@ msgstr "" "`formatierte Zeichenkettenliterale `, mit den folgenden " "Unterschieden:" -#: ../../library/stdtypes.rst:3062 +#: ../../builtins/stdtypes.rst:3069 msgid "" "Rather than evaluating to a ``str`` object, template string literals " "evaluate to a :class:`string.templatelib.Template` object." @@ -5817,7 +5827,7 @@ msgstr "" "Zeichenfolgenliterale zu einem Objekt vom Typ :class:`string.templatelib." "Template` ausgewertet." -#: ../../library/stdtypes.rst:3065 +#: ../../builtins/stdtypes.rst:3072 msgid "" "The :func:`format` protocol is not used. Instead, the format specifier and " "conversions (if any) are passed to a new :class:`~string.templatelib." @@ -5832,7 +5842,7 @@ msgstr "" "resultierende Objekt :class:`~string.templatelib.Template` verarbeitet, zu " "entscheiden, wie mit Formatbezeichnern und Konvertierungen umgegangen wird." -#: ../../library/stdtypes.rst:3072 +#: ../../builtins/stdtypes.rst:3079 msgid "" "Format specifiers containing nested replacement fields are evaluated " "eagerly, prior to being passed to the :class:`~string.templatelib." @@ -5849,7 +5859,7 @@ msgstr "" "Wäre ``precision`` gleich ``2``, wäre der resultierende Formatbezeichner " "``'.2f'``." -#: ../../library/stdtypes.rst:3080 +#: ../../builtins/stdtypes.rst:3087 msgid "" "When the equals sign ``'='`` is provided in an interpolation expression, the " "text of the expression is appended to the literal string that precedes the " @@ -5869,11 +5879,11 @@ msgstr "" "'``r``' (:func:`repr`) gesetzt wird. Wird eine explizite Konvertierung oder " "ein Formatbezeichner angegeben, überschreibt dies das Standardverhalten." -#: ../../library/stdtypes.rst:3094 +#: ../../builtins/stdtypes.rst:3101 msgid "``printf``-style String Formatting" msgstr "String-Formatierung im ``printf``-Stil" -#: ../../library/stdtypes.rst:3107 +#: ../../builtins/stdtypes.rst:3114 msgid "" "The formatting operations described here exhibit a variety of quirks that " "lead to a number of common errors (such as failing to display tuples and " @@ -5883,7 +5893,7 @@ msgstr "" "Eigenheiten auf, die zu häufigen Fehlern führen (wie z. B. dem fehlerhaften " "Darstellen von Tupeln und Dictionaries)." -#: ../../library/stdtypes.rst:3111 +#: ../../builtins/stdtypes.rst:3118 msgid "" "Using :ref:`formatted string literals `, the :meth:`str.format` " "interface, or :class:`string.Template` may help avoid these errors. Each of " @@ -5895,7 +5905,7 @@ msgstr "" "diese Fehler zu vermeiden. Jede dieser Alternativen bietet eigene Vor- und " "Nachteile hinsichtlich Einfachheit, Flexibilität und/oder Erweiterbarkeit." -#: ../../library/stdtypes.rst:3116 +#: ../../builtins/stdtypes.rst:3123 msgid "" "String objects have one unique built-in operation: the ``%`` operator " "(modulo). This is also known as the string *formatting* or *interpolation* " @@ -5912,7 +5922,7 @@ msgstr "" "ähnelt der Verwendung der Funktion :c:func:`sprintf` in der Sprache C. Zum " "Beispiel:" -#: ../../library/stdtypes.rst:3123 +#: ../../builtins/stdtypes.rst:3130 msgid "" ">>> print('%s has %d quote types.' % ('Python', 2))\n" "Python has 2 quote types." @@ -5920,7 +5930,7 @@ msgstr "" ">>> print('%s has %d quote types.' % ('Python', 2))\n" "Python has 2 quote types." -#: ../../library/stdtypes.rst:3128 +#: ../../builtins/stdtypes.rst:3135 msgid "" "If *format* requires a single argument, *values* may be a single non-tuple " "object. [5]_ Otherwise, *values* must be a tuple with exactly the number of " @@ -5932,7 +5942,7 @@ msgstr "" "der durch den Format-String angegebenen Anzahl von Elementen oder ein " "einzelnes Mapping-Objekt (z. B. ein Dictionary) sein." -#: ../../library/stdtypes.rst:3138 ../../library/stdtypes.rst:4435 +#: ../../builtins/stdtypes.rst:3145 ../../builtins/stdtypes.rst:4447 msgid "" "A conversion specifier contains two or more characters and has the following " "components, which must occur in this order:" @@ -5940,11 +5950,11 @@ msgstr "" "Ein Konvertierungsspezifizierer besteht aus zwei oder mehr Zeichen und hat " "die folgenden Komponenten, die in dieser Reihenfolge auftreten müssen:" -#: ../../library/stdtypes.rst:3141 ../../library/stdtypes.rst:4438 +#: ../../builtins/stdtypes.rst:3148 ../../builtins/stdtypes.rst:4450 msgid "The ``'%'`` character, which marks the start of the specifier." msgstr "Das Zeichen ``'%'``, das den Beginn des Spezifizierers markiert." -#: ../../library/stdtypes.rst:3143 ../../library/stdtypes.rst:4440 +#: ../../builtins/stdtypes.rst:3150 ../../builtins/stdtypes.rst:4452 msgid "" "Mapping key (optional), consisting of a parenthesised sequence of characters " "(for example, ``(somename)``)." @@ -5952,7 +5962,7 @@ msgstr "" "Mapping-Schlüssel (optional), bestehend aus einer eingeklammerten " "Zeichenfolge (zum Beispiel ``(somename)``)." -#: ../../library/stdtypes.rst:3146 ../../library/stdtypes.rst:4443 +#: ../../builtins/stdtypes.rst:3153 ../../builtins/stdtypes.rst:4455 msgid "" "Conversion flags (optional), which affect the result of some conversion " "types." @@ -5960,7 +5970,7 @@ msgstr "" "Konvertierungs-Flags (optional), die das Ergebnis bestimmter " "Konvertierungstypen beeinflussen." -#: ../../library/stdtypes.rst:3149 ../../library/stdtypes.rst:4446 +#: ../../builtins/stdtypes.rst:3156 ../../builtins/stdtypes.rst:4458 msgid "" "Minimum field width (optional). If specified as an ``'*'`` (asterisk), the " "actual width is read from the next element of the tuple in *values*, and the " @@ -5971,7 +5981,7 @@ msgstr "" "*values* gelesen, und das zu konvertierende Objekt folgt nach der minimalen " "Feldbreite und der optionalen Genauigkeit." -#: ../../library/stdtypes.rst:3153 ../../library/stdtypes.rst:4450 +#: ../../builtins/stdtypes.rst:3160 ../../builtins/stdtypes.rst:4462 msgid "" "Precision (optional), given as a ``'.'`` (dot) followed by the precision. " "If specified as ``'*'`` (an asterisk), the actual precision is read from the " @@ -5983,15 +5993,15 @@ msgstr "" "tatsächliche Genauigkeit aus dem nächsten Element des Tupels in *values* " "gelesen, und der zu konvertierende Wert folgt nach der Genauigkeit." -#: ../../library/stdtypes.rst:3158 ../../library/stdtypes.rst:4455 +#: ../../builtins/stdtypes.rst:3165 ../../builtins/stdtypes.rst:4467 msgid "Length modifier (optional)." msgstr "Längenmodifikator (optional)." -#: ../../library/stdtypes.rst:3160 ../../library/stdtypes.rst:4457 +#: ../../builtins/stdtypes.rst:3167 ../../builtins/stdtypes.rst:4469 msgid "Conversion type." msgstr "Konvertierungstyp." -#: ../../library/stdtypes.rst:3162 +#: ../../builtins/stdtypes.rst:3169 msgid "" "When the right argument is a dictionary (or other mapping type), then the " "formats in the string *must* include a parenthesised mapping key into that " @@ -6004,7 +6014,7 @@ msgstr "" "eingefügt wird. Der Mapping-Schlüssel wählt den zu formatierenden Wert aus " "dem Mapping aus. Zum Beispiel:" -#: ../../library/stdtypes.rst:3171 ../../library/stdtypes.rst:4468 +#: ../../builtins/stdtypes.rst:3178 ../../builtins/stdtypes.rst:4480 msgid "" "In this case no ``*`` specifiers may occur in a format (since they require a " "sequential parameter list)." @@ -6012,38 +6022,38 @@ msgstr "" "In diesem Fall dürfen keine ``*``-Spezifizierer in einem Format vorkommen " "(da diese eine sequentielle Parameterliste erfordern)." -#: ../../library/stdtypes.rst:3174 ../../library/stdtypes.rst:4471 +#: ../../builtins/stdtypes.rst:3181 ../../builtins/stdtypes.rst:4483 msgid "The conversion flag characters are:" msgstr "Die Konvertierungs-Flag-Zeichen sind:" -#: ../../library/stdtypes.rst:3183 ../../library/stdtypes.rst:4480 +#: ../../builtins/stdtypes.rst:3190 ../../builtins/stdtypes.rst:4492 msgid "Flag" msgstr "Flag" -#: ../../library/stdtypes.rst:3185 ../../library/stdtypes.rst:4482 +#: ../../builtins/stdtypes.rst:3192 ../../builtins/stdtypes.rst:4494 msgid "``'#'``" msgstr "``'#'``" -#: ../../library/stdtypes.rst:3185 ../../library/stdtypes.rst:4482 +#: ../../builtins/stdtypes.rst:3192 ../../builtins/stdtypes.rst:4494 msgid "" "The value conversion will use the \"alternate form\" (where defined below)." msgstr "" "Die Wertkonvertierung verwendet die \"alternative Form\" (sofern unten " "definiert)." -#: ../../library/stdtypes.rst:3188 ../../library/stdtypes.rst:4485 +#: ../../builtins/stdtypes.rst:3195 ../../builtins/stdtypes.rst:4497 msgid "``'0'``" msgstr "``'0'``" -#: ../../library/stdtypes.rst:3188 ../../library/stdtypes.rst:4485 +#: ../../builtins/stdtypes.rst:3195 ../../builtins/stdtypes.rst:4497 msgid "The conversion will be zero padded for numeric values." msgstr "Die Konvertierung wird bei numerischen Werten mit Nullen aufgefüllt." -#: ../../library/stdtypes.rst:3190 ../../library/stdtypes.rst:4487 +#: ../../builtins/stdtypes.rst:3197 ../../builtins/stdtypes.rst:4499 msgid "``'-'``" msgstr "``'-'``" -#: ../../library/stdtypes.rst:3190 ../../library/stdtypes.rst:4487 +#: ../../builtins/stdtypes.rst:3197 ../../builtins/stdtypes.rst:4499 msgid "" "The converted value is left adjusted (overrides the ``'0'`` conversion if " "both are given)." @@ -6051,11 +6061,11 @@ msgstr "" "Der konvertierte Wert wird linksbündig ausgerichtet (überschreibt die " "``'0'``-Konvertierung, wenn beide angegeben sind)." -#: ../../library/stdtypes.rst:3193 ../../library/stdtypes.rst:4490 +#: ../../builtins/stdtypes.rst:3200 ../../builtins/stdtypes.rst:4502 msgid "``' '``" msgstr "``' '``" -#: ../../library/stdtypes.rst:3193 ../../library/stdtypes.rst:4490 +#: ../../builtins/stdtypes.rst:3200 ../../builtins/stdtypes.rst:4502 msgid "" "(a space) A blank should be left before a positive number (or empty string) " "produced by a signed conversion." @@ -6064,11 +6074,11 @@ msgstr "" "durch eine vorzeichenbehaftete Konvertierung erzeugt wird, sollte ein " "Leerzeichen verbleiben." -#: ../../library/stdtypes.rst:3196 ../../library/stdtypes.rst:4493 +#: ../../builtins/stdtypes.rst:3203 ../../builtins/stdtypes.rst:4505 msgid "``'+'``" msgstr "``'+'``" -#: ../../library/stdtypes.rst:3196 ../../library/stdtypes.rst:4493 +#: ../../builtins/stdtypes.rst:3203 ../../builtins/stdtypes.rst:4505 msgid "" "A sign character (``'+'`` or ``'-'``) will precede the conversion (overrides " "a \"space\" flag)." @@ -6076,7 +6086,7 @@ msgstr "" "Ein Vorzeichen (``'+'`` oder ``'-'``) wird der Konvertierung vorangestellt " "(überschreibt ein \"Leerzeichen\"-Flag)." -#: ../../library/stdtypes.rst:3200 ../../library/stdtypes.rst:4497 +#: ../../builtins/stdtypes.rst:3207 ../../builtins/stdtypes.rst:4509 msgid "" "A length modifier (``h``, ``l``, or ``L``) may be present, but is ignored as " "it is not necessary for Python -- so e.g. ``%ld`` is identical to ``%d``." @@ -6085,93 +6095,93 @@ msgstr "" "jedoch ignoriert, da er für Python nicht erforderlich ist – so ist z. B. " "``%ld`` identisch mit ``%d``." -#: ../../library/stdtypes.rst:3203 ../../library/stdtypes.rst:4500 +#: ../../builtins/stdtypes.rst:3210 ../../builtins/stdtypes.rst:4512 msgid "The conversion types are:" msgstr "Die Konvertierungstypen sind:" -#: ../../library/stdtypes.rst:3206 ../../library/stdtypes.rst:4503 +#: ../../builtins/stdtypes.rst:3213 ../../builtins/stdtypes.rst:4515 msgid "Conversion" msgstr "Konvertierung" -#: ../../library/stdtypes.rst:3208 ../../library/stdtypes.rst:4505 +#: ../../builtins/stdtypes.rst:3215 ../../builtins/stdtypes.rst:4517 msgid "``'d'``" msgstr "``'d'``" -#: ../../library/stdtypes.rst:3208 ../../library/stdtypes.rst:3210 -#: ../../library/stdtypes.rst:4505 ../../library/stdtypes.rst:4507 +#: ../../builtins/stdtypes.rst:3215 ../../builtins/stdtypes.rst:3217 +#: ../../builtins/stdtypes.rst:4517 ../../builtins/stdtypes.rst:4519 msgid "Signed integer decimal." msgstr "Vorzeichenbehaftete Dezimal-Ganzzahl." -#: ../../library/stdtypes.rst:3210 ../../library/stdtypes.rst:4507 +#: ../../builtins/stdtypes.rst:3217 ../../builtins/stdtypes.rst:4519 msgid "``'i'``" msgstr "``'i'``" -#: ../../library/stdtypes.rst:3212 ../../library/stdtypes.rst:4509 +#: ../../builtins/stdtypes.rst:3219 ../../builtins/stdtypes.rst:4521 msgid "``'o'``" msgstr "``'o'``" -#: ../../library/stdtypes.rst:3212 ../../library/stdtypes.rst:4509 +#: ../../builtins/stdtypes.rst:3219 ../../builtins/stdtypes.rst:4521 msgid "Signed octal value." msgstr "Vorzeichenbehafteter Oktalwert." -#: ../../library/stdtypes.rst:3214 ../../library/stdtypes.rst:4511 +#: ../../builtins/stdtypes.rst:3221 ../../builtins/stdtypes.rst:4523 msgid "``'u'``" msgstr "``'u'``" -#: ../../library/stdtypes.rst:3214 ../../library/stdtypes.rst:4511 +#: ../../builtins/stdtypes.rst:3221 ../../builtins/stdtypes.rst:4523 msgid "Obsolete type -- it is identical to ``'d'``." msgstr "Veralteter Typ – er ist identisch mit ``'d'``." -#: ../../library/stdtypes.rst:3216 ../../library/stdtypes.rst:4513 +#: ../../builtins/stdtypes.rst:3223 ../../builtins/stdtypes.rst:4525 msgid "``'x'``" msgstr "``'x'``" -#: ../../library/stdtypes.rst:3216 ../../library/stdtypes.rst:4513 +#: ../../builtins/stdtypes.rst:3223 ../../builtins/stdtypes.rst:4525 msgid "Signed hexadecimal (lowercase)." msgstr "Vorzeichenbehaftetes Hexadezimal (Kleinbuchstaben)." -#: ../../library/stdtypes.rst:3218 ../../library/stdtypes.rst:4515 +#: ../../builtins/stdtypes.rst:3225 ../../builtins/stdtypes.rst:4527 msgid "``'X'``" msgstr "``'X'``" -#: ../../library/stdtypes.rst:3218 ../../library/stdtypes.rst:4515 +#: ../../builtins/stdtypes.rst:3225 ../../builtins/stdtypes.rst:4527 msgid "Signed hexadecimal (uppercase)." msgstr "Vorzeichenbehaftetes Hexadezimal (Großbuchstaben)." -#: ../../library/stdtypes.rst:3220 ../../library/stdtypes.rst:4517 +#: ../../builtins/stdtypes.rst:3227 ../../builtins/stdtypes.rst:4529 msgid "``'e'``" msgstr "``'e'``" -#: ../../library/stdtypes.rst:3220 ../../library/stdtypes.rst:4517 +#: ../../builtins/stdtypes.rst:3227 ../../builtins/stdtypes.rst:4529 msgid "Floating-point exponential format (lowercase)." msgstr "Gleitkomma-Exponentialformat (Kleinbuchstaben)." -#: ../../library/stdtypes.rst:3222 ../../library/stdtypes.rst:4519 +#: ../../builtins/stdtypes.rst:3229 ../../builtins/stdtypes.rst:4531 msgid "``'E'``" msgstr "``'E'``" -#: ../../library/stdtypes.rst:3222 ../../library/stdtypes.rst:4519 +#: ../../builtins/stdtypes.rst:3229 ../../builtins/stdtypes.rst:4531 msgid "Floating-point exponential format (uppercase)." msgstr "Gleitkomma-Exponentialformat (Großbuchstaben)." -#: ../../library/stdtypes.rst:3224 ../../library/stdtypes.rst:4521 +#: ../../builtins/stdtypes.rst:3231 ../../builtins/stdtypes.rst:4533 msgid "``'f'``" msgstr "``'f'``" -#: ../../library/stdtypes.rst:3224 ../../library/stdtypes.rst:3226 -#: ../../library/stdtypes.rst:4521 ../../library/stdtypes.rst:4523 +#: ../../builtins/stdtypes.rst:3231 ../../builtins/stdtypes.rst:3233 +#: ../../builtins/stdtypes.rst:4533 ../../builtins/stdtypes.rst:4535 msgid "Floating-point decimal format." msgstr "Gleitkomma-Dezimalformat." -#: ../../library/stdtypes.rst:3226 ../../library/stdtypes.rst:4523 +#: ../../builtins/stdtypes.rst:3233 ../../builtins/stdtypes.rst:4535 msgid "``'F'``" msgstr "``'F'``" -#: ../../library/stdtypes.rst:3228 ../../library/stdtypes.rst:4525 +#: ../../builtins/stdtypes.rst:3235 ../../builtins/stdtypes.rst:4537 msgid "``'g'``" msgstr "``'g'``" -#: ../../library/stdtypes.rst:3228 ../../library/stdtypes.rst:4525 +#: ../../builtins/stdtypes.rst:3235 ../../builtins/stdtypes.rst:4537 msgid "" "Floating-point format. Uses lowercase exponential format if exponent is less " "than -4 or not less than precision, decimal format otherwise." @@ -6180,11 +6190,11 @@ msgstr "" "der Exponent kleiner als -4 oder nicht kleiner als die Genauigkeit ist, " "andernfalls das Dezimalformat." -#: ../../library/stdtypes.rst:3232 ../../library/stdtypes.rst:4529 +#: ../../builtins/stdtypes.rst:3239 ../../builtins/stdtypes.rst:4541 msgid "``'G'``" msgstr "``'G'``" -#: ../../library/stdtypes.rst:3232 ../../library/stdtypes.rst:4529 +#: ../../builtins/stdtypes.rst:3239 ../../builtins/stdtypes.rst:4541 msgid "" "Floating-point format. Uses uppercase exponential format if exponent is less " "than -4 or not less than precision, decimal format otherwise." @@ -6193,48 +6203,48 @@ msgstr "" "der Exponent kleiner als -4 oder nicht kleiner als die Genauigkeit ist, " "andernfalls das Dezimalformat." -#: ../../library/stdtypes.rst:3236 ../../library/stdtypes.rst:4533 +#: ../../builtins/stdtypes.rst:3243 ../../builtins/stdtypes.rst:4545 msgid "``'c'``" msgstr "``'c'``" -#: ../../library/stdtypes.rst:3236 +#: ../../builtins/stdtypes.rst:3243 msgid "Single character (accepts integer or single character string)." msgstr "Einzelnes Zeichen (akzeptiert Ganzzahl oder einzeichenigen String)." -#: ../../library/stdtypes.rst:3239 ../../library/stdtypes.rst:4546 +#: ../../builtins/stdtypes.rst:3246 ../../builtins/stdtypes.rst:4558 msgid "``'r'``" msgstr "``'r'``" -#: ../../library/stdtypes.rst:3239 +#: ../../builtins/stdtypes.rst:3246 msgid "String (converts any Python object using :func:`repr`)." msgstr "String (konvertiert jedes Python-Objekt mittels :func:`repr`)." -#: ../../library/stdtypes.rst:3242 ../../library/stdtypes.rst:4540 +#: ../../builtins/stdtypes.rst:3249 ../../builtins/stdtypes.rst:4552 msgid "``'s'``" msgstr "``'s'``" -#: ../../library/stdtypes.rst:3242 +#: ../../builtins/stdtypes.rst:3249 msgid "String (converts any Python object using :func:`str`)." msgstr "String (konvertiert jedes Python-Objekt mittels :func:`str`)." -#: ../../library/stdtypes.rst:3245 ../../library/stdtypes.rst:4543 +#: ../../builtins/stdtypes.rst:3252 ../../builtins/stdtypes.rst:4555 msgid "``'a'``" msgstr "``'a'``" -#: ../../library/stdtypes.rst:3245 +#: ../../builtins/stdtypes.rst:3252 msgid "String (converts any Python object using :func:`ascii`)." msgstr "String (konvertiert jedes Python-Objekt mittels :func:`ascii`)." -#: ../../library/stdtypes.rst:3248 ../../library/stdtypes.rst:4549 +#: ../../builtins/stdtypes.rst:3255 ../../builtins/stdtypes.rst:4561 msgid "``'%'``" msgstr "``'%'``" -#: ../../library/stdtypes.rst:3248 ../../library/stdtypes.rst:4549 +#: ../../builtins/stdtypes.rst:3255 ../../builtins/stdtypes.rst:4561 msgid "No argument is converted, results in a ``'%'`` character in the result." msgstr "" "Kein Argument wird konvertiert, führt zu einem ``'%'``-Zeichen im Ergebnis." -#: ../../library/stdtypes.rst:3252 +#: ../../builtins/stdtypes.rst:3259 msgid "" "For floating-point formats, the result should be correctly rounded to a " "given precision ``p`` of digits after the decimal point. The rounding mode " @@ -6244,7 +6254,7 @@ msgstr "" "Präzision ``p`` von Nachkommastellen gerundet werden. Der Rundungsmodus " "entspricht dem des eingebauten :func:`round`." -#: ../../library/stdtypes.rst:3259 ../../library/stdtypes.rst:4556 +#: ../../builtins/stdtypes.rst:3266 ../../builtins/stdtypes.rst:4568 msgid "" "The alternate form causes a leading octal specifier (``'0o'``) to be " "inserted before the first digit." @@ -6252,7 +6262,7 @@ msgstr "" "Die alternative Form bewirkt, dass vor der ersten Ziffer eine führende Oktal-" "Kennzeichnung (``'0o'``) eingefügt wird." -#: ../../library/stdtypes.rst:3263 ../../library/stdtypes.rst:4560 +#: ../../builtins/stdtypes.rst:3270 ../../builtins/stdtypes.rst:4572 msgid "" "The alternate form causes a leading ``'0x'`` or ``'0X'`` (depending on " "whether the ``'x'`` or ``'X'`` format was used) to be inserted before the " @@ -6262,7 +6272,7 @@ msgstr "" "``'0x'`` oder ``'0X'`` eingefügt wird (je nachdem, ob das Format ``'x'`` " "oder ``'X'`` verwendet wurde)." -#: ../../library/stdtypes.rst:3267 ../../library/stdtypes.rst:4564 +#: ../../builtins/stdtypes.rst:3274 ../../builtins/stdtypes.rst:4576 msgid "" "The alternate form causes the result to always contain a decimal point, even " "if no digits follow it." @@ -6270,7 +6280,7 @@ msgstr "" "Die alternative Form bewirkt, dass das Ergebnis immer einen Dezimalpunkt " "enthält, selbst wenn keine Ziffern folgen." -#: ../../library/stdtypes.rst:3270 ../../library/stdtypes.rst:4567 +#: ../../builtins/stdtypes.rst:3277 ../../builtins/stdtypes.rst:4579 msgid "" "The precision determines the number of digits after the decimal point and " "defaults to 6." @@ -6278,7 +6288,7 @@ msgstr "" "Die Genauigkeit bestimmt die Anzahl der Nachkommastellen und ist " "standardmäßig 6." -#: ../../library/stdtypes.rst:3274 ../../library/stdtypes.rst:4571 +#: ../../builtins/stdtypes.rst:3281 ../../builtins/stdtypes.rst:4583 msgid "" "The alternate form causes the result to always contain a decimal point, and " "trailing zeroes are not removed as they would otherwise be." @@ -6287,7 +6297,7 @@ msgstr "" "enthält und nachgestellte Nullen nicht entfernt werden, wie es sonst der " "Fall wäre." -#: ../../library/stdtypes.rst:3277 ../../library/stdtypes.rst:4574 +#: ../../builtins/stdtypes.rst:3284 ../../builtins/stdtypes.rst:4586 msgid "" "The precision determines the number of significant digits before and after " "the decimal point and defaults to 6." @@ -6295,17 +6305,17 @@ msgstr "" "Die Genauigkeit bestimmt die Anzahl der signifikanten Stellen vor und nach " "dem Dezimalpunkt und ist standardmäßig 6." -#: ../../library/stdtypes.rst:3281 ../../library/stdtypes.rst:4578 +#: ../../builtins/stdtypes.rst:3288 ../../builtins/stdtypes.rst:4590 msgid "If precision is ``N``, the output is truncated to ``N`` characters." msgstr "" "Wenn die Genauigkeit ``N`` beträgt, wird die Ausgabe auf ``N`` Zeichen " "gekürzt." -#: ../../library/stdtypes.rst:3284 ../../library/stdtypes.rst:4587 +#: ../../builtins/stdtypes.rst:3291 ../../builtins/stdtypes.rst:4599 msgid "See :pep:`237`." msgstr "Siehe :pep:`237`." -#: ../../library/stdtypes.rst:3286 +#: ../../builtins/stdtypes.rst:3293 msgid "" "Since Python strings have an explicit length, ``%s`` conversions do not " "assume that ``'\\0'`` is the end of the string." @@ -6313,7 +6323,7 @@ msgstr "" "Da Python-Strings eine explizite Länge haben, gehen ``%s``-Konvertierungen " "nicht davon aus, dass ``'\\0'`` das Ende des Strings markiert." -#: ../../library/stdtypes.rst:3291 +#: ../../builtins/stdtypes.rst:3298 msgid "" "``%f`` conversions for numbers whose absolute value is over 1e50 are no " "longer replaced by ``%g`` conversions." @@ -6321,14 +6331,14 @@ msgstr "" "``%f``-Konvertierungen für Zahlen, deren Absolutwert über 1e50 liegt, werden " "nicht mehr durch ``%g``-Konvertierungen ersetzt." -#: ../../library/stdtypes.rst:3302 +#: ../../builtins/stdtypes.rst:3309 msgid "" "Binary Sequence Types --- :class:`bytes`, :class:`bytearray`, :class:" "`memoryview`" msgstr "" "Binäre Sequenztypen – :class:`bytes`, :class:`bytearray`, :class:`memoryview`" -#: ../../library/stdtypes.rst:3310 +#: ../../builtins/stdtypes.rst:3317 msgid "" "The core built-in types for manipulating binary data are :class:`bytes` and :" "class:`bytearray`. They are supported by :class:`memoryview` which uses the :" @@ -6341,7 +6351,7 @@ msgstr "" "den Speicher anderer binärer Objekte zuzugreifen, ohne eine Kopie anfertigen " "zu müssen." -#: ../../library/stdtypes.rst:3315 +#: ../../builtins/stdtypes.rst:3322 msgid "" "The :mod:`array` module supports efficient storage of basic data types like " "32-bit integers and IEEE754 double-precision floating values." @@ -6350,11 +6360,11 @@ msgstr "" "Datentypen wie 32-Bit-Ganzzahlen und IEEE754-Gleitkommazahlen mit doppelter " "Genauigkeit." -#: ../../library/stdtypes.rst:3321 +#: ../../builtins/stdtypes.rst:3328 msgid "Bytes Objects" msgstr "Bytes-Objekte" -#: ../../library/stdtypes.rst:3325 +#: ../../builtins/stdtypes.rst:3332 msgid "" "Bytes objects are immutable sequences of single bytes. Since many major " "binary protocols are based on the ASCII text encoding, bytes objects offer " @@ -6366,7 +6376,7 @@ msgstr "" "Objekte mehrere Methoden, die nur bei der Arbeit mit ASCII-kompatiblen Daten " "gültig sind, und sind auf vielfältige Weise eng mit String-Objekten verwandt." -#: ../../library/stdtypes.rst:3333 +#: ../../builtins/stdtypes.rst:3340 msgid "" "Firstly, the syntax for bytes literals is largely the same as that for " "string literals, except that a ``b`` prefix is added:" @@ -6374,24 +6384,24 @@ msgstr "" "Erstens entspricht die Syntax für Bytes-Literale weitgehend der für String-" "Literale, außer dass ein Präfix ``b`` vorangestellt wird:" -#: ../../library/stdtypes.rst:3336 +#: ../../builtins/stdtypes.rst:3343 msgid "Single quotes: ``b'still allows embedded \"double\" quotes'``" msgstr "" "Einfache Anführungszeichen: ``b'still allows embedded \"double\" quotes'``" -#: ../../library/stdtypes.rst:3337 +#: ../../builtins/stdtypes.rst:3344 msgid "Double quotes: ``b\"still allows embedded 'single' quotes\"``" msgstr "" "Doppelte Anführungszeichen: ``b\"still allows embedded 'single' quotes\"``" -#: ../../library/stdtypes.rst:3338 +#: ../../builtins/stdtypes.rst:3345 msgid "" "Triple quoted: ``b'''3 single quotes'''``, ``b\"\"\"3 double quotes\"\"\"``" msgstr "" "Dreifache Anführungszeichen: ``b'''3 single quotes'''``, ``b\"\"\"3 double " "quotes\"\"\"``" -#: ../../library/stdtypes.rst:3340 +#: ../../builtins/stdtypes.rst:3347 msgid "" "Only ASCII characters are permitted in bytes literals (regardless of the " "declared source code encoding). Any binary values over 127 must be entered " @@ -6401,7 +6411,7 @@ msgstr "" "deklarierten Quellcode-Kodierung). Alle Binärwerte über 127 müssen über die " "entsprechende Escape-Sequenz in Bytes-Literale eingegeben werden." -#: ../../library/stdtypes.rst:3344 +#: ../../builtins/stdtypes.rst:3351 msgid "" "As with string literals, bytes literals may also use a ``r`` prefix to " "disable processing of escape sequences. See :ref:`strings` for more about " @@ -6412,7 +6422,7 @@ msgstr "" "ref:`strings` für weitere Details zu den verschiedenen Formen von Bytes-" "Literalen einschließlich der unterstützten Escape-Sequenzen." -#: ../../library/stdtypes.rst:3348 +#: ../../builtins/stdtypes.rst:3355 msgid "" "While bytes literals and representations are based on ASCII text, bytes " "objects actually behave like immutable sequences of integers, with each " @@ -6435,7 +6445,7 @@ msgstr "" "Anwenden von Textverarbeitungsalgorithmen auf nicht ASCII-kompatible " "Binärdatenformate führt in der Regel zu Datenbeschädigung)." -#: ../../library/stdtypes.rst:3358 +#: ../../builtins/stdtypes.rst:3365 msgid "" "In addition to the literal forms, bytes objects can be created in a number " "of other ways:" @@ -6443,25 +6453,25 @@ msgstr "" "Zusätzlich zu den Literalformen können Bytes-Objekte auf verschiedene andere " "Arten erzeugt werden:" -#: ../../library/stdtypes.rst:3361 +#: ../../builtins/stdtypes.rst:3368 msgid "A zero-filled bytes object of a specified length: ``bytes(10)``" msgstr "" "Ein mit Nullen gefülltes Bytes-Objekt einer angegebenen Länge: ``bytes(10)``" -#: ../../library/stdtypes.rst:3362 +#: ../../builtins/stdtypes.rst:3369 msgid "From an iterable of integers: ``bytes(range(20))``" msgstr "Aus einem Iterable von Ganzzahlen: ``bytes(range(20))``" -#: ../../library/stdtypes.rst:3363 +#: ../../builtins/stdtypes.rst:3370 msgid "Copying existing binary data via the buffer protocol: ``bytes(obj)``" msgstr "" "Kopieren vorhandener Binärdaten über das Pufferprotokoll: ``bytes(obj)``" -#: ../../library/stdtypes.rst:3365 +#: ../../builtins/stdtypes.rst:3372 msgid "Also see the :ref:`bytes ` built-in." msgstr "Siehe auch die eingebaute Funktion :ref:`bytes `." -#: ../../library/stdtypes.rst:3367 +#: ../../builtins/stdtypes.rst:3374 msgid "" "Since 2 hexadecimal digits correspond precisely to a single byte, " "hexadecimal numbers are a commonly used format for describing binary data. " @@ -6473,7 +6483,7 @@ msgstr "" "Binärdaten. Dementsprechend besitzt der Bytes-Typ eine zusätzliche " "Klassenmethode zum Einlesen von Daten in diesem Format:" -#: ../../library/stdtypes.rst:3373 +#: ../../builtins/stdtypes.rst:3380 msgid "" "This :class:`bytes` class method returns a bytes object, decoding the given " "string object. The string must contain two hexadecimal digits per byte, " @@ -6484,7 +6494,7 @@ msgstr "" "Hexadezimalziffern pro Byte enthalten, wobei ASCII-Whitespaces ignoriert " "werden." -#: ../../library/stdtypes.rst:3380 +#: ../../builtins/stdtypes.rst:3387 msgid "" ":meth:`bytes.fromhex` now skips all ASCII whitespace in the string, not just " "spaces." @@ -6492,7 +6502,7 @@ msgstr "" ":meth:`bytes.fromhex` überspringt nun alle ASCII-Whitespaces im String, " "nicht nur Leerzeichen." -#: ../../library/stdtypes.rst:3384 +#: ../../builtins/stdtypes.rst:3391 msgid "" ":meth:`bytes.fromhex` now accepts ASCII :class:`bytes` and :term:`bytes-like " "objects ` as input." @@ -6500,7 +6510,7 @@ msgstr "" ":meth:`bytes.fromhex` akzeptiert nun ASCII-:class:`bytes` und :term:`Byte-" "ähnliche Objekte ` als Eingabe." -#: ../../library/stdtypes.rst:3388 +#: ../../builtins/stdtypes.rst:3395 msgid "" "A reverse conversion function exists to transform a bytes object into its " "hexadecimal representation." @@ -6508,7 +6518,7 @@ msgstr "" "Es existiert eine umgekehrte Konvertierungsfunktion, um ein Bytes-Objekt in " "seine hexadezimale Darstellung umzuwandeln." -#: ../../library/stdtypes.rst:3394 ../../library/stdtypes.rst:3485 +#: ../../builtins/stdtypes.rst:3401 ../../builtins/stdtypes.rst:3492 msgid "" "Return a string object containing two hexadecimal digits for each byte in " "the instance." @@ -6516,7 +6526,7 @@ msgstr "" "Gibt ein String-Objekt zurück, das zwei Hexadezimalziffern für jedes Byte in " "der Instanz enthält." -#: ../../library/stdtypes.rst:3400 +#: ../../builtins/stdtypes.rst:3407 msgid "" "If you want to make the hex string easier to read, you can specify a single " "character separator *sep* parameter to include in the output. By default, " @@ -6531,7 +6541,7 @@ msgstr "" "berechnen die Position des Trennzeichens von rechts, negative Werte von " "links." -#: ../../library/stdtypes.rst:3417 +#: ../../builtins/stdtypes.rst:3424 msgid "" ":meth:`bytes.hex` now supports optional *sep* and *bytes_per_sep* parameters " "to insert separators between bytes in the hex output." @@ -6540,7 +6550,7 @@ msgstr "" "*bytes_per_sep*, um Trennzeichen zwischen Bytes in der Hex-Ausgabe " "einzufügen." -#: ../../library/stdtypes.rst:3421 +#: ../../builtins/stdtypes.rst:3428 msgid "" "Since bytes objects are sequences of integers (akin to a tuple), for a bytes " "object *b*, ``b[0]`` will be an integer, while ``b[0:1]`` will be a bytes " @@ -6552,7 +6562,7 @@ msgstr "" "der Länge 1 ist. (Dies steht im Gegensatz zu Text-Strings, bei denen sowohl " "Indizierung als auch Slicing einen String der Länge 1 erzeugen)" -#: ../../library/stdtypes.rst:3426 +#: ../../builtins/stdtypes.rst:3433 msgid "" "The representation of bytes objects uses the literal format (``b'...'``) " "since it is often more useful than e.g. ``bytes([46, 46, 46])``. You can " @@ -6563,11 +6573,11 @@ msgstr "" "Objekt kann mittels ``list(b)`` jederzeit in eine Liste von Ganzzahlen " "umgewandelt werden." -#: ../../library/stdtypes.rst:3434 +#: ../../builtins/stdtypes.rst:3441 msgid "Bytearray Objects" msgstr "Bytearray-Objekte" -#: ../../library/stdtypes.rst:3438 +#: ../../builtins/stdtypes.rst:3445 msgid "" ":class:`bytearray` objects are a mutable counterpart to :class:`bytes` " "objects." @@ -6575,7 +6585,7 @@ msgstr "" ":class:`bytearray`-Objekte sind ein veränderliches Gegenstück zu :class:" "`bytes`-Objekten." -#: ../../library/stdtypes.rst:3444 +#: ../../builtins/stdtypes.rst:3451 msgid "" "There is no dedicated literal syntax for bytearray objects, instead they are " "always created by calling the constructor:" @@ -6583,28 +6593,28 @@ msgstr "" "Es gibt keine eigene Literalsyntax für Bytearray-Objekte; stattdessen werden " "sie immer über den Konstruktor erzeugt:" -#: ../../library/stdtypes.rst:3447 +#: ../../builtins/stdtypes.rst:3454 msgid "Creating an empty instance: ``bytearray()``" msgstr "Erstellen einer leeren Instanz: ``bytearray()``" -#: ../../library/stdtypes.rst:3448 +#: ../../builtins/stdtypes.rst:3455 msgid "Creating a zero-filled instance with a given length: ``bytearray(10)``" msgstr "" "Erstellen einer mit Nullen gefüllten Instanz mit angegebener Länge: " "``bytearray(10)``" -#: ../../library/stdtypes.rst:3449 +#: ../../builtins/stdtypes.rst:3456 msgid "From an iterable of integers: ``bytearray(range(20))``" msgstr "Aus einem Iterable von Ganzzahlen: ``bytearray(range(20))``" -#: ../../library/stdtypes.rst:3450 +#: ../../builtins/stdtypes.rst:3457 msgid "" "Copying existing binary data via the buffer protocol: ``bytearray(b'Hi!')``" msgstr "" "Kopieren vorhandener Binärdaten über das Pufferprotokoll: " "``bytearray(b'Hi!')``" -#: ../../library/stdtypes.rst:3452 +#: ../../builtins/stdtypes.rst:3459 msgid "" "As bytearray objects are mutable, they support the :ref:`mutable ` sequence operations in addition to the common bytes and bytearray " @@ -6614,11 +6624,11 @@ msgstr "" "unter :ref:`bytes-methods` beschriebenen gemeinsamen Bytes- und Bytearray-" "Operationen die :ref:`veränderlichen ` Sequenzoperationen." -#: ../../library/stdtypes.rst:3456 +#: ../../builtins/stdtypes.rst:3463 msgid "Also see the :ref:`bytearray ` built-in." msgstr "Siehe auch die eingebaute Funktion :ref:`bytearray `." -#: ../../library/stdtypes.rst:3458 +#: ../../builtins/stdtypes.rst:3465 msgid "" "Since 2 hexadecimal digits correspond precisely to a single byte, " "hexadecimal numbers are a commonly used format for describing binary data. " @@ -6630,7 +6640,7 @@ msgstr "" "Binärdaten. Dementsprechend besitzt der Bytearray-Typ eine zusätzliche " "Klassenmethode zum Einlesen von Daten in diesem Format:" -#: ../../library/stdtypes.rst:3464 +#: ../../builtins/stdtypes.rst:3471 msgid "" "This :class:`bytearray` class method returns a bytearray object, decoding " "the given string object. The string must contain two hexadecimal digits per " @@ -6641,7 +6651,7 @@ msgstr "" "Zeichenkette muss zwei Hexadezimalziffern pro Byte enthalten, wobei ASCII-" "Whitespace ignoriert wird." -#: ../../library/stdtypes.rst:3471 +#: ../../builtins/stdtypes.rst:3478 msgid "" ":meth:`bytearray.fromhex` now skips all ASCII whitespace in the string, not " "just spaces." @@ -6649,7 +6659,7 @@ msgstr "" ":meth:`bytearray.fromhex` überspringt nun alle ASCII-Whitespaces im String, " "nicht nur Leerzeichen." -#: ../../library/stdtypes.rst:3475 +#: ../../builtins/stdtypes.rst:3482 msgid "" ":meth:`bytearray.fromhex` now accepts ASCII :class:`bytes` and :term:`bytes-" "like objects ` as input." @@ -6657,7 +6667,7 @@ msgstr "" ":meth:`bytearray.fromhex` akzeptiert nun ASCII-:class:`bytes` und :term:" "`Byte-ähnliche Objekte ` als Eingabe." -#: ../../library/stdtypes.rst:3479 +#: ../../builtins/stdtypes.rst:3486 msgid "" "A reverse conversion function exists to transform a bytearray object into " "its hexadecimal representation." @@ -6665,7 +6675,7 @@ msgstr "" "Es existiert eine umgekehrte Konvertierungsfunktion, um ein Bytearray-Objekt " "in seine hexadezimale Darstellung umzuwandeln." -#: ../../library/stdtypes.rst:3493 +#: ../../builtins/stdtypes.rst:3500 msgid "" "Similar to :meth:`bytes.hex`, :meth:`bytearray.hex` now supports optional " "*sep* and *bytes_per_sep* parameters to insert separators between bytes in " @@ -6675,7 +6685,7 @@ msgstr "" "optionalen Parameter *sep* und *bytes_per_sep*, um Trennzeichen zwischen " "Bytes in der Hex-Ausgabe einzufügen." -#: ../../library/stdtypes.rst:3500 +#: ../../builtins/stdtypes.rst:3507 msgid "" "Resize the :class:`bytearray` to contain *size* bytes. *size* must be " "greater than or equal to 0." @@ -6683,14 +6693,14 @@ msgstr "" "Ändert die Größe des :class:`bytearray` auf *size* Bytes. *size* muss größer " "oder gleich 0 sein." -#: ../../library/stdtypes.rst:3503 +#: ../../builtins/stdtypes.rst:3510 msgid "" "If the :class:`bytearray` needs to shrink, bytes beyond *size* are truncated." msgstr "" "Wenn das :class:`bytearray` verkleinert werden muss, werden Bytes jenseits " "von *size* abgeschnitten." -#: ../../library/stdtypes.rst:3505 +#: ../../builtins/stdtypes.rst:3512 msgid "" "If the :class:`bytearray` needs to grow, all new bytes, those beyond *size*, " "will be set to null bytes." @@ -6698,15 +6708,15 @@ msgstr "" "Wenn das :class:`bytearray` vergrößert werden muss, werden alle neuen Bytes " "jenseits von *size* auf Nullbytes gesetzt." -#: ../../library/stdtypes.rst:3509 +#: ../../builtins/stdtypes.rst:3516 msgid "This is equivalent to:" msgstr "Dies entspricht:" -#: ../../library/stdtypes.rst:3517 +#: ../../builtins/stdtypes.rst:3524 msgid "Examples:" msgstr "Beispiele:" -#: ../../library/stdtypes.rst:3532 +#: ../../builtins/stdtypes.rst:3539 msgid "" "Remove the first *n* bytes from the bytearray and return them as an " "immutable :class:`bytes`. By default (if *n* is ``None``), return all bytes " @@ -6716,7 +6726,7 @@ msgstr "" "unveränderliches :class:`bytes` zurück. Standardmäßig (falls *n* ``None`` " "ist) werden alle Bytes zurückgegeben und das bytearray geleert." -#: ../../library/stdtypes.rst:3536 +#: ../../builtins/stdtypes.rst:3543 msgid "" "If *n* is negative, index from the end and take the first :func:`len` plus " "*n* bytes. If *n* is out of bounds, raise :exc:`IndexError`." @@ -6725,7 +6735,7 @@ msgstr "" "*n* Bytes werden entnommen. Liegt *n* außerhalb des gültigen Bereichs, wird :" "exc:`IndexError` ausgelöst." -#: ../../library/stdtypes.rst:3539 +#: ../../builtins/stdtypes.rst:3546 msgid "" "Taking less than the full length will leave remaining bytes in the :class:" "`bytearray`, which requires a copy. If the remaining bytes should be " @@ -6738,11 +6748,11 @@ msgstr "" "`del`, um zu kürzen, und anschließend :func:`~bytearray.take_bytes` ohne " "Größenangabe." -#: ../../library/stdtypes.rst:3546 +#: ../../builtins/stdtypes.rst:3553 msgid "Taking all bytes is a zero-copy operation." msgstr "Das Entnehmen aller Bytes ist eine Zero-Copy-Operation." -#: ../../library/stdtypes.rst:3550 +#: ../../builtins/stdtypes.rst:3557 msgid "" "See the :ref:`What's New ` entry for " "common code patterns which can be optimized with :meth:`bytearray." @@ -6752,7 +6762,7 @@ msgstr "" "gängige Code-Muster, die mit :meth:`bytearray.take_bytes` optimiert werden " "können." -#: ../../library/stdtypes.rst:3554 +#: ../../builtins/stdtypes.rst:3561 msgid "" "Since bytearray objects are sequences of integers (akin to a list), for a " "bytearray object *b*, ``b[0]`` will be an integer, while ``b[0:1]`` will be " @@ -6765,7 +6775,7 @@ msgstr "" "bei denen sowohl Indizierung als auch Slicing einen String der Länge 1 " "erzeugen)" -#: ../../library/stdtypes.rst:3559 +#: ../../builtins/stdtypes.rst:3566 msgid "" "The representation of bytearray objects uses the bytes literal format " "(``bytearray(b'...')``) since it is often more useful than e.g. " @@ -6777,7 +6787,7 @@ msgstr "" "``bytearray([46, 46, 46])``. Ein Bytearray-Objekt kann mittels ``list(b)`` " "jederzeit in eine Liste von Ganzzahlen umgewandelt werden." -#: ../../library/stdtypes.rst:3566 +#: ../../builtins/stdtypes.rst:3573 msgid "" "For detailed information on thread-safety guarantees for :class:`bytearray` " "objects, see :ref:`thread-safety-bytearray`." @@ -6785,11 +6795,11 @@ msgstr "" "Detaillierte Informationen zu den Thread-Sicherheitsgarantien für Objekte " "vom Typ :class:`bytearray` findest du unter :ref:`thread-safety-bytearray`." -#: ../../library/stdtypes.rst:3573 +#: ../../builtins/stdtypes.rst:3580 msgid "Bytes and Bytearray Operations" msgstr "Bytes- und Bytearray-Operationen" -#: ../../library/stdtypes.rst:3578 +#: ../../builtins/stdtypes.rst:3585 msgid "" "Both bytes and bytearray objects support the :ref:`common ` " "sequence operations. They interoperate not just with operands of the same " @@ -6804,7 +6814,7 @@ msgstr "" "frei gemischt werden, ohne Fehler zu verursachen. Der Rückgabetyp des " "Ergebnisses kann jedoch von der Reihenfolge der Operanden abhängen." -#: ../../library/stdtypes.rst:3586 +#: ../../builtins/stdtypes.rst:3593 msgid "" "The methods on bytes and bytearray objects don't accept strings as their " "arguments, just as the methods on strings don't accept bytes as their " @@ -6814,7 +6824,7 @@ msgstr "" "Argumente, genauso wie die Methoden auf Strings keine Bytes als Argumente " "akzeptieren. Zum Beispiel muss man schreiben::" -#: ../../library/stdtypes.rst:3590 +#: ../../builtins/stdtypes.rst:3597 msgid "" "a = \"abc\"\n" "b = a.replace(\"a\", \"f\")" @@ -6822,11 +6832,11 @@ msgstr "" "a = \"abc\"\n" "b = a.replace(\"a\", \"f\")" -#: ../../library/stdtypes.rst:3593 +#: ../../builtins/stdtypes.rst:3600 msgid "and::" msgstr "and::" -#: ../../library/stdtypes.rst:3595 +#: ../../builtins/stdtypes.rst:3602 msgid "" "a = b\"abc\"\n" "b = a.replace(b\"a\", b\"f\")" @@ -6834,7 +6844,7 @@ msgstr "" "a = b\"abc\"\n" "b = a.replace(b\"a\", b\"f\")" -#: ../../library/stdtypes.rst:3598 +#: ../../builtins/stdtypes.rst:3605 msgid "" "Some bytes and bytearray operations assume the use of ASCII compatible " "binary formats, and hence should be avoided when working with arbitrary " @@ -6845,7 +6855,7 @@ msgstr "" "beliebigen Binärdaten vermieden werden. Diese Einschränkungen werden unten " "behandelt." -#: ../../library/stdtypes.rst:3603 +#: ../../builtins/stdtypes.rst:3610 msgid "" "Using these ASCII based operations to manipulate binary data that is not " "stored in an ASCII based format may lead to data corruption." @@ -6854,7 +6864,7 @@ msgstr "" "Binärdaten, die nicht in einem ASCII-basierten Format gespeichert sind, kann " "zu Datenbeschädigung führen." -#: ../../library/stdtypes.rst:3606 +#: ../../builtins/stdtypes.rst:3613 msgid "" "The following methods on bytes and bytearray objects can be used with " "arbitrary binary data." @@ -6862,7 +6872,7 @@ msgstr "" "Die folgenden Methoden auf Bytes- und Bytearray-Objekten können mit " "beliebigen Binärdaten verwendet werden." -#: ../../library/stdtypes.rst:3612 +#: ../../builtins/stdtypes.rst:3619 msgid "" "Return the number of non-overlapping occurrences of subsequence *sub* in the " "range [*start*, *end*]. Optional arguments *start* and *end* are " @@ -6872,9 +6882,9 @@ msgstr "" "Bereich [*start*, *end*] zurück. Die optionalen Argumente *start* und *end* " "werden wie in der Slice-Notation interpretiert." -#: ../../library/stdtypes.rst:3616 ../../library/stdtypes.rst:3721 -#: ../../library/stdtypes.rst:3743 ../../library/stdtypes.rst:3813 -#: ../../library/stdtypes.rst:3826 +#: ../../builtins/stdtypes.rst:3623 ../../builtins/stdtypes.rst:3728 +#: ../../builtins/stdtypes.rst:3750 ../../builtins/stdtypes.rst:3820 +#: ../../builtins/stdtypes.rst:3833 msgid "" "The subsequence to search for may be any :term:`bytes-like object` or an " "integer in the range 0 to 255." @@ -6882,7 +6892,7 @@ msgstr "" "Die zu suchende Teilsequenz kann jedes :term:`Byte-ähnliche Objekt ` oder eine Ganzzahl im Bereich von 0 bis 255 sein." -#: ../../library/stdtypes.rst:3619 +#: ../../builtins/stdtypes.rst:3626 msgid "" "If *sub* is empty, returns the number of empty slices between characters " "which is the length of the bytes object plus one." @@ -6890,14 +6900,14 @@ msgstr "" "Wenn *sub* leer ist, wird die Anzahl der leeren Slices zwischen den Zeichen " "zurückgegeben, was der Länge des Bytes-Objekts plus eins entspricht." -#: ../../library/stdtypes.rst:3622 ../../library/stdtypes.rst:3733 -#: ../../library/stdtypes.rst:3746 ../../library/stdtypes.rst:3816 -#: ../../library/stdtypes.rst:3829 +#: ../../builtins/stdtypes.rst:3629 ../../builtins/stdtypes.rst:3740 +#: ../../builtins/stdtypes.rst:3753 ../../builtins/stdtypes.rst:3823 +#: ../../builtins/stdtypes.rst:3836 msgid "Also accept an integer in the range 0 to 255 as the subsequence." msgstr "" "Akzeptiert nun auch eine Ganzzahl im Bereich von 0 bis 255 als Teilsequenz." -#: ../../library/stdtypes.rst:3629 +#: ../../builtins/stdtypes.rst:3636 msgid "" "If the binary data starts with the *prefix* string, return " "``bytes[len(prefix):]``. Otherwise, return a copy of the original binary " @@ -6907,7 +6917,7 @@ msgstr "" "``bytes[len(prefix):]`` zurückgegeben. Andernfalls wird eine Kopie der " "ursprünglichen Binärdaten zurückgegeben::" -#: ../../library/stdtypes.rst:3633 +#: ../../builtins/stdtypes.rst:3640 msgid "" ">>> b'TestHook'.removeprefix(b'Test')\n" "b'Hook'\n" @@ -6919,21 +6929,21 @@ msgstr "" ">>> b'BaseTestCase'.removeprefix(b'Test')\n" "b'BaseTestCase'" -#: ../../library/stdtypes.rst:3638 +#: ../../builtins/stdtypes.rst:3645 msgid "The *prefix* may be any :term:`bytes-like object`." msgstr "" "Das *prefix* kann jedes :term:`Byte-ähnliche Objekt ` " "sein." -#: ../../library/stdtypes.rst:3642 ../../library/stdtypes.rst:3664 -#: ../../library/stdtypes.rst:3798 ../../library/stdtypes.rst:3894 -#: ../../library/stdtypes.rst:3908 ../../library/stdtypes.rst:3938 -#: ../../library/stdtypes.rst:3952 ../../library/stdtypes.rst:3993 -#: ../../library/stdtypes.rst:4063 ../../library/stdtypes.rst:4081 -#: ../../library/stdtypes.rst:4109 ../../library/stdtypes.rst:4248 -#: ../../library/stdtypes.rst:4303 ../../library/stdtypes.rst:4346 -#: ../../library/stdtypes.rst:4367 ../../library/stdtypes.rst:4389 -#: ../../library/stdtypes.rst:4591 +#: ../../builtins/stdtypes.rst:3649 ../../builtins/stdtypes.rst:3671 +#: ../../builtins/stdtypes.rst:3805 ../../builtins/stdtypes.rst:3901 +#: ../../builtins/stdtypes.rst:3915 ../../builtins/stdtypes.rst:3946 +#: ../../builtins/stdtypes.rst:3960 ../../builtins/stdtypes.rst:4003 +#: ../../builtins/stdtypes.rst:4075 ../../builtins/stdtypes.rst:4093 +#: ../../builtins/stdtypes.rst:4121 ../../builtins/stdtypes.rst:4260 +#: ../../builtins/stdtypes.rst:4315 ../../builtins/stdtypes.rst:4358 +#: ../../builtins/stdtypes.rst:4379 ../../builtins/stdtypes.rst:4401 +#: ../../builtins/stdtypes.rst:4603 msgid "" "The bytearray version of this method does *not* operate in place - it always " "produces a new object, even if no changes were made." @@ -6941,7 +6951,7 @@ msgstr "" "Die Bytearray-Version dieser Methode arbeitet *nicht* in-place – sie erzeugt " "immer ein neues Objekt, selbst wenn keine Änderungen vorgenommen wurden." -#: ../../library/stdtypes.rst:3651 +#: ../../builtins/stdtypes.rst:3658 msgid "" "If the binary data ends with the *suffix* string and that *suffix* is not " "empty, return ``bytes[:-len(suffix)]``. Otherwise, return a copy of the " @@ -6951,7 +6961,7 @@ msgstr "" "nicht leer ist, wird ``bytes[:-len(suffix)]`` zurückgegeben. Andernfalls " "wird eine Kopie der ursprünglichen Binärdaten zurückgegeben::" -#: ../../library/stdtypes.rst:3655 +#: ../../builtins/stdtypes.rst:3662 msgid "" ">>> b'MiscTests'.removesuffix(b'Tests')\n" "b'Misc'\n" @@ -6963,17 +6973,17 @@ msgstr "" ">>> b'TmpDirMixin'.removesuffix(b'Tests')\n" "b'TmpDirMixin'" -#: ../../library/stdtypes.rst:3660 +#: ../../builtins/stdtypes.rst:3667 msgid "The *suffix* may be any :term:`bytes-like object`." msgstr "" "Das *suffix* kann jedes :term:`Byte-ähnliche Objekt ` " "sein." -#: ../../library/stdtypes.rst:3673 +#: ../../builtins/stdtypes.rst:3680 msgid "Return the bytes decoded to a :class:`str`." msgstr "Gibt die als :class:`str` dekodierten Bytes zurück." -#: ../../library/stdtypes.rst:3678 +#: ../../builtins/stdtypes.rst:3685 msgid "" "*errors* controls how decoding errors are handled. If ``'strict'`` (the " "default), a :exc:`UnicodeError` exception is raised. Other possible values " @@ -6986,7 +6996,7 @@ msgstr "" "`codecs.register_error` registrierte Name. Siehe :ref:`error-handlers` für " "Details." -#: ../../library/stdtypes.rst:3684 +#: ../../builtins/stdtypes.rst:3691 msgid "" "For performance reasons, the value of *errors* is not checked for validity " "unless a decoding error actually occurs, :ref:`devmode` is enabled or a :ref:" @@ -6997,7 +7007,7 @@ msgstr "" "ref:`devmode` ist aktiviert oder es wird ein :ref:`Debug-Build ` verwendet." -#: ../../library/stdtypes.rst:3690 +#: ../../builtins/stdtypes.rst:3697 msgid "" "Passing the *encoding* argument to :class:`str` allows decoding any :term:" "`bytes-like object` directly, without needing to make a temporary :class:`!" @@ -7008,7 +7018,7 @@ msgstr "" "ein temporäres :class:`!bytes`- oder :class:`!bytearray`-Objekt erstellen zu " "müssen." -#: ../../library/stdtypes.rst:3705 +#: ../../builtins/stdtypes.rst:3712 msgid "" "Return ``True`` if the binary data ends with the specified *suffix*, " "otherwise return ``False``. *suffix* can also be a tuple of suffixes to " @@ -7020,13 +7030,13 @@ msgstr "" "Suffixen sein. Mit optionalem *start* wird ab dieser Position geprüft. Mit " "optionalem *end* wird der Vergleich an dieser Position beendet." -#: ../../library/stdtypes.rst:3710 +#: ../../builtins/stdtypes.rst:3717 msgid "The suffix(es) to search for may be any :term:`bytes-like object`." msgstr "" "Die zu suchenden Suffixe können jedes :term:`Byte-ähnliche Objekt ` sein." -#: ../../library/stdtypes.rst:3716 +#: ../../builtins/stdtypes.rst:3723 msgid "" "Return the lowest index in the data where the subsequence *sub* is found, " "such that *sub* is contained in the slice ``s[start:end]``. Optional " @@ -7038,7 +7048,7 @@ msgstr "" "optionalen Argumente *start* und *end* werden wie in der Slice-Notation " "interpretiert. Gibt ``-1`` zurück, wenn *sub* nicht gefunden wird." -#: ../../library/stdtypes.rst:3726 +#: ../../builtins/stdtypes.rst:3733 msgid "" "The :meth:`~bytes.find` method should be used only if you need to know the " "position of *sub*. To check if *sub* is a substring or not, use the :" @@ -7048,7 +7058,7 @@ msgstr "" "Position von *sub* benötigt wird. Um zu prüfen, ob *sub* ein Teilstring ist " "oder nicht, verwende den Operator :keyword:`in`::" -#: ../../library/stdtypes.rst:3730 +#: ../../builtins/stdtypes.rst:3737 msgid "" ">>> b'Py' in b'Python'\n" "True" @@ -7056,7 +7066,7 @@ msgstr "" ">>> b'Py' in b'Python'\n" "True" -#: ../../library/stdtypes.rst:3740 +#: ../../builtins/stdtypes.rst:3747 msgid "" "Like :meth:`~bytes.find`, but raise :exc:`ValueError` when the subsequence " "is not found." @@ -7064,7 +7074,7 @@ msgstr "" "Wie :meth:`~bytes.find`, löst jedoch einen :exc:`ValueError` aus, wenn die " "Teilsequenz nicht gefunden wird." -#: ../../library/stdtypes.rst:3753 +#: ../../builtins/stdtypes.rst:3760 msgid "" "Return a bytes or bytearray object which is the concatenation of the binary " "data sequences in *iterable*. A :exc:`TypeError` will be raised if there " @@ -7080,7 +7090,7 @@ msgstr "" "Trennzeichen zwischen den Elementen ist der Inhalt des Bytes- oder Bytearray-" "Objekts, das diese Methode bereitstellt." -#: ../../library/stdtypes.rst:3764 +#: ../../builtins/stdtypes.rst:3771 msgid "" "This static method returns a translation table usable for :meth:`bytes." "translate` that will map each character in *from* into the character at the " @@ -7092,7 +7102,7 @@ msgstr "" "derselben Position in *to* abbildet; *from* und *to* müssen beide :term:" "`Byte-ähnliche Objekte ` sein und dieselbe Länge haben." -#: ../../library/stdtypes.rst:3775 +#: ../../builtins/stdtypes.rst:3782 msgid "" "Split the sequence at the first occurrence of *sep*, and return a 3-tuple " "containing the part before the separator, the separator itself or its " @@ -7107,13 +7117,13 @@ msgstr "" "Kopie der ursprünglichen Sequenz gefolgt von zwei leeren Bytes- oder " "Bytearray-Objekten enthält." -#: ../../library/stdtypes.rst:3782 ../../library/stdtypes.rst:3843 +#: ../../builtins/stdtypes.rst:3789 ../../builtins/stdtypes.rst:3850 msgid "The separator to search for may be any :term:`bytes-like object`." msgstr "" "Das zu suchende Trennzeichen kann jedes :term:`Byte-ähnliche Objekt ` sein." -#: ../../library/stdtypes.rst:3788 +#: ../../builtins/stdtypes.rst:3795 msgid "" "Return a copy of the sequence with all occurrences of subsequence *old* " "replaced by *new*. If *count* is given, only the first *count* occurrences " @@ -7125,7 +7135,7 @@ msgstr "" "ersten *count* Vorkommen ersetzt. Wird *count* nicht angegeben oder ist " "``-1``, werden alle Vorkommen ersetzt." -#: ../../library/stdtypes.rst:3793 +#: ../../builtins/stdtypes.rst:3800 msgid "" "The subsequence to search for and its replacement may be any :term:`bytes-" "like object`." @@ -7133,7 +7143,7 @@ msgstr "" "Die zu suchende Teilsequenz und deren Ersetzung können jedes :term:`Byte-" "ähnliche Objekt ` sein." -#: ../../library/stdtypes.rst:3808 +#: ../../builtins/stdtypes.rst:3815 msgid "" "Return the highest index in the sequence where the subsequence *sub* is " "found, such that *sub* is contained within ``s[start:end]``. Optional " @@ -7145,7 +7155,7 @@ msgstr "" "Die optionalen Argumente *start* und *end* werden wie in der Slice-Notation " "interpretiert. Gibt im Fehlerfall ``-1`` zurück." -#: ../../library/stdtypes.rst:3823 +#: ../../builtins/stdtypes.rst:3830 msgid "" "Like :meth:`~bytes.rfind` but raises :exc:`ValueError` when the subsequence " "*sub* is not found." @@ -7153,7 +7163,7 @@ msgstr "" "Wie :meth:`~bytes.rfind`, löst jedoch einen :exc:`ValueError` aus, wenn die " "Teilsequenz *sub* nicht gefunden wird." -#: ../../library/stdtypes.rst:3836 +#: ../../builtins/stdtypes.rst:3843 msgid "" "Split the sequence at the last occurrence of *sep*, and return a 3-tuple " "containing the part before the separator, the separator itself or its " @@ -7168,7 +7178,7 @@ msgstr "" "leere Bytes- oder Bytearray-Objekte enthält, gefolgt von einer Kopie der " "ursprünglichen Sequenz." -#: ../../library/stdtypes.rst:3849 +#: ../../builtins/stdtypes.rst:3856 msgid "" "Return ``True`` if the binary data starts with the specified *prefix*, " "otherwise return ``False``. *prefix* can also be a tuple of prefixes to " @@ -7180,13 +7190,13 @@ msgstr "" "suchenden Präfixen sein. Mit optionalem *start* wird ab dieser Position " "geprüft. Mit optionalem *end* wird der Vergleich an dieser Position beendet." -#: ../../library/stdtypes.rst:3854 +#: ../../builtins/stdtypes.rst:3861 msgid "The prefix(es) to search for may be any :term:`bytes-like object`." msgstr "" "Die zu suchenden Präfixe können jedes :term:`Byte-ähnliche Objekt ` sein." -#: ../../library/stdtypes.rst:3860 +#: ../../builtins/stdtypes.rst:3867 msgid "" "Return a copy of the bytes or bytearray object where all bytes occurring in " "the optional argument *delete* are removed, and the remaining bytes have " @@ -7198,14 +7208,14 @@ msgstr "" "verbleibenden Bytes über die angegebene Übersetzungstabelle abgebildet " "wurden, die ein Bytes-Objekt der Länge 256 sein muss." -#: ../../library/stdtypes.rst:3865 +#: ../../builtins/stdtypes.rst:3872 msgid "" "You can use the :func:`bytes.maketrans` method to create a translation table." msgstr "" "Du kannst die Methode :func:`bytes.maketrans` verwenden, um eine " "Übersetzungstabelle zu erstellen." -#: ../../library/stdtypes.rst:3868 +#: ../../builtins/stdtypes.rst:3875 msgid "" "Set the *table* argument to ``None`` for translations that only delete " "characters::" @@ -7213,7 +7223,7 @@ msgstr "" "Setze das Argument *table* auf ``None`` für Übersetzungen, die lediglich " "Zeichen löschen::" -#: ../../library/stdtypes.rst:3871 +#: ../../builtins/stdtypes.rst:3878 msgid "" ">>> b'read this short text'.translate(None, b'aeiou')\n" "b'rd ths shrt txt'" @@ -7221,11 +7231,11 @@ msgstr "" ">>> b'read this short text'.translate(None, b'aeiou')\n" "b'rd ths shrt txt'" -#: ../../library/stdtypes.rst:3874 +#: ../../builtins/stdtypes.rst:3881 msgid "*delete* is now supported as a keyword argument." msgstr "*delete* wird nun als Schlüsselwort-Argument unterstützt." -#: ../../library/stdtypes.rst:3878 +#: ../../builtins/stdtypes.rst:3885 msgid "" "The following methods on bytes and bytearray objects have default behaviours " "that assume the use of ASCII compatible binary formats, but can still be " @@ -7240,7 +7250,7 @@ msgstr "" "Methoden in diesem Abschnitt *nicht* in-place arbeiten, sondern stattdessen " "neue Objekte erzeugen." -#: ../../library/stdtypes.rst:3887 +#: ../../builtins/stdtypes.rst:3894 msgid "" "Return a copy of the object centered in a sequence of length *width*. " "Padding is done using the specified *fillbyte* (default is an ASCII space). " @@ -7252,7 +7262,7 @@ msgstr "" "ein ASCII-Leerzeichen). Für :class:`bytes`-Objekte wird die ursprüngliche " "Sequenz zurückgegeben, wenn *width* kleiner oder gleich ``len(s)`` ist." -#: ../../library/stdtypes.rst:3901 +#: ../../builtins/stdtypes.rst:3908 msgid "" "Return a copy of the object left justified in a sequence of length *width*. " "Padding is done using the specified *fillbyte* (default is an ASCII space). " @@ -7264,13 +7274,14 @@ msgstr "" "ein ASCII-Leerzeichen). Für :class:`bytes`-Objekte wird die ursprüngliche " "Sequenz zurückgegeben, wenn *width* kleiner oder gleich ``len(s)`` ist." -#: ../../library/stdtypes.rst:3915 +#: ../../builtins/stdtypes.rst:3922 +#, fuzzy msgid "" "Return a copy of the sequence with specified leading bytes removed. The " "*bytes* argument is a binary sequence specifying the set of byte values to " "be removed. If omitted or ``None``, the *bytes* argument defaults to " -"removing ASCII whitespace. The *bytes* argument is not a prefix; rather, " -"all combinations of its values are stripped::" +"removing :meth:`ASCII whitespace `. The *bytes* argument is " +"not a prefix; rather, all combinations of its values are stripped::" msgstr "" "Gibt eine Kopie der Sequenz zurück, bei der die angegebenen führenden Bytes " "entfernt wurden. Das Argument *bytes* ist eine binäre Sequenz, die die Menge " @@ -7279,7 +7290,7 @@ msgstr "" "Argument *bytes* ist kein Präfix; vielmehr werden alle Kombinationen seiner " "Werte abgeschnitten::" -#: ../../library/stdtypes.rst:3921 +#: ../../builtins/stdtypes.rst:3929 msgid "" ">>> b' spacious '.lstrip()\n" "b'spacious '\n" @@ -7291,7 +7302,7 @@ msgstr "" ">>> b'www.example.com'.lstrip(b'cmowz.')\n" "b'example.com'" -#: ../../library/stdtypes.rst:3926 +#: ../../builtins/stdtypes.rst:3934 msgid "" "The binary sequence of byte values to remove may be any :term:`bytes-like " "object`. See :meth:`~bytes.removeprefix` for a method that will remove a " @@ -7302,7 +7313,7 @@ msgstr "" "für eine Methode, die einen einzelnen Präfix-String anstelle einer Menge " "aller Zeichen entfernt. Zum Beispiel::" -#: ../../library/stdtypes.rst:3931 +#: ../../builtins/stdtypes.rst:3939 msgid "" ">>> b'Arthur: three!'.lstrip(b'Arthur: ')\n" "b'ee!'\n" @@ -7314,7 +7325,7 @@ msgstr "" ">>> b'Arthur: three!'.removeprefix(b'Arthur: ')\n" "b'three!'" -#: ../../library/stdtypes.rst:3945 +#: ../../builtins/stdtypes.rst:3953 msgid "" "Return a copy of the object right justified in a sequence of length *width*. " "Padding is done using the specified *fillbyte* (default is an ASCII space). " @@ -7326,14 +7337,15 @@ msgstr "" "ein ASCII-Leerzeichen). Für :class:`bytes`-Objekte wird die ursprüngliche " "Sequenz zurückgegeben, wenn *width* kleiner oder gleich ``len(s)`` ist." -#: ../../library/stdtypes.rst:3959 +#: ../../builtins/stdtypes.rst:3967 +#, fuzzy msgid "" "Split the binary sequence into subsequences of the same type, using *sep* as " "the delimiter string. If *maxsplit* is given, at most *maxsplit* splits are " "done, the *rightmost* ones. If *sep* is not specified or ``None``, any " -"subsequence consisting solely of ASCII whitespace is a separator. Except for " -"splitting from the right, :meth:`rsplit` behaves like :meth:`split` which is " -"described in detail below." +"subsequence consisting solely of :meth:`ASCII whitespace ` is " +"a separator. Except for splitting from the right, :meth:`rsplit` behaves " +"like :meth:`split` which is described in detail below." msgstr "" "Teilt die binäre Sequenz in Teilsequenzen desselben Typs unter Verwendung " "von *sep* als Trenn-String. Wenn *maxsplit* angegeben ist, werden höchstens " @@ -7343,13 +7355,14 @@ msgstr "" "Trennzeichen. Abgesehen vom Trennen von rechts verhält sich :meth:`rsplit` " "wie :meth:`split`, was weiter unten ausführlich beschrieben ist." -#: ../../library/stdtypes.rst:3970 +#: ../../builtins/stdtypes.rst:3979 +#, fuzzy msgid "" "Return a copy of the sequence with specified trailing bytes removed. The " "*bytes* argument is a binary sequence specifying the set of byte values to " "be removed. If omitted or ``None``, the *bytes* argument defaults to " -"removing ASCII whitespace. The *bytes* argument is not a suffix; rather, " -"all combinations of its values are stripped::" +"removing :meth:`ASCII whitespace `. The *bytes* argument is " +"not a suffix; rather, all combinations of its values are stripped::" msgstr "" "Gibt eine Kopie der Sequenz zurück, bei der die angegebenen nachgestellten " "Bytes entfernt wurden. Das Argument *bytes* ist eine binäre Sequenz, die die " @@ -7358,7 +7371,7 @@ msgstr "" "Das Argument *bytes* ist kein Suffix; vielmehr werden alle Kombinationen " "seiner Werte abgeschnitten::" -#: ../../library/stdtypes.rst:3976 +#: ../../builtins/stdtypes.rst:3986 msgid "" ">>> b' spacious '.rstrip()\n" "b' spacious'\n" @@ -7370,7 +7383,7 @@ msgstr "" ">>> b'mississippi'.rstrip(b'ipz')\n" "b'mississ'" -#: ../../library/stdtypes.rst:3981 +#: ../../builtins/stdtypes.rst:3991 msgid "" "The binary sequence of byte values to remove may be any :term:`bytes-like " "object`. See :meth:`~bytes.removesuffix` for a method that will remove a " @@ -7381,7 +7394,7 @@ msgstr "" "für eine Methode, die einen einzelnen Suffix-String anstelle einer Menge " "aller Zeichen entfernt. Zum Beispiel::" -#: ../../library/stdtypes.rst:3986 +#: ../../builtins/stdtypes.rst:3996 msgid "" ">>> b'Monty Python'.rstrip(b' Python')\n" "b'M'\n" @@ -7393,7 +7406,7 @@ msgstr "" ">>> b'Monty Python'.removesuffix(b' Python')\n" "b'Monty'" -#: ../../library/stdtypes.rst:4000 +#: ../../builtins/stdtypes.rst:4010 msgid "" "Split the binary sequence into subsequences of the same type, using *sep* as " "the delimiter string. If *maxsplit* is given and non-negative, at most " @@ -7408,7 +7421,7 @@ msgstr "" "``-1`` ist, gibt es keine Begrenzung für die Anzahl der Trennungen (alle " "möglichen Trennungen werden vorgenommen)." -#: ../../library/stdtypes.rst:4006 +#: ../../builtins/stdtypes.rst:4016 msgid "" "If *sep* is given, consecutive delimiters are not grouped together and are " "deemed to delimit empty subsequences (for example, ``b'1,,2'.split(b',')`` " @@ -7427,7 +7440,7 @@ msgstr "" "``[bytearray(b'')]`` zurück. Das Argument *sep* kann jedes :term:`Byte-" "ähnliche Objekt ` sein." -#: ../../library/stdtypes.rst:4016 +#: ../../builtins/stdtypes.rst:4026 msgid "" ">>> b'1,2,3'.split(b',')\n" "[b'1', b'2', b'3']\n" @@ -7447,14 +7460,15 @@ msgstr "" ">>> b'1<>2<>3<4'.split(b'<>')\n" "[b'1', b'2', b'3<4']" -#: ../../library/stdtypes.rst:4025 +#: ../../builtins/stdtypes.rst:4035 +#, fuzzy msgid "" "If *sep* is not specified or is ``None``, a different splitting algorithm is " -"applied: runs of consecutive ASCII whitespace are regarded as a single " -"separator, and the result will contain no empty strings at the start or end " -"if the sequence has leading or trailing whitespace. Consequently, splitting " -"an empty sequence or a sequence consisting solely of ASCII whitespace " -"without a specified separator returns ``[]``." +"applied: runs of consecutive :meth:`ASCII whitespace ` are " +"regarded as a single separator, and the result will contain no empty strings " +"at the start or end if the sequence has leading or trailing whitespace. " +"Consequently, splitting an empty sequence or a sequence consisting solely of " +"ASCII whitespace without a specified separator returns ``[]``." msgstr "" "Wenn *sep* nicht angegeben oder ``None`` ist, wird ein anderer " "Trennalgorithmus angewendet: Folgen aufeinanderfolgender ASCII-Whitespaces " @@ -7464,7 +7478,7 @@ msgstr "" "Sequenz oder einer Sequenz, die nur aus ASCII-Whitespaces besteht, ohne " "angegebenes Trennzeichen ``[]`` zurück." -#: ../../library/stdtypes.rst:4035 +#: ../../builtins/stdtypes.rst:4046 msgid "" ">>> b'1 2 3'.split()\n" "[b'1', b'2', b'3']\n" @@ -7480,13 +7494,15 @@ msgstr "" ">>> b' 1 2 3 '.split()\n" "[b'1', b'2', b'3']" -#: ../../library/stdtypes.rst:4046 +#: ../../builtins/stdtypes.rst:4057 +#, fuzzy msgid "" "Return a copy of the sequence with specified leading and trailing bytes " "removed. The *bytes* argument is a binary sequence specifying the set of " "byte values to be removed. If omitted or ``None``, the *bytes* argument " -"defaults to removing ASCII whitespace. The *bytes* argument is not a prefix " -"or suffix; rather, all combinations of its values are stripped::" +"defaults to removing :meth:`ASCII whitespace `. The *bytes* " +"argument is not a prefix or suffix; rather, all combinations of its values " +"are stripped::" msgstr "" "Gibt eine Kopie der Sequenz zurück, bei der die angegebenen führenden und " "nachgestellten Bytes entfernt wurden. Das Argument *bytes* ist eine binäre " @@ -7496,7 +7512,7 @@ msgstr "" "noch ein Suffix, vielmehr werden alle Kombinationen seiner Werte " "abgeschnitten::" -#: ../../library/stdtypes.rst:4053 +#: ../../builtins/stdtypes.rst:4065 msgid "" ">>> b' spacious '.strip()\n" "b'spacious'\n" @@ -7508,7 +7524,7 @@ msgstr "" ">>> b'www.example.com'.strip(b'cmowz.')\n" "b'example'" -#: ../../library/stdtypes.rst:4058 +#: ../../builtins/stdtypes.rst:4070 msgid "" "The binary sequence of byte values to remove may be any :term:`bytes-like " "object`." @@ -7516,7 +7532,7 @@ msgstr "" "Die binäre Sequenz der zu entfernenden Bytewerte kann jedes :term:`Byte-" "ähnliche Objekt ` sein." -#: ../../library/stdtypes.rst:4067 +#: ../../builtins/stdtypes.rst:4079 msgid "" "The following methods on bytes and bytearray objects assume the use of ASCII " "compatible binary formats and should not be applied to arbitrary binary " @@ -7529,7 +7545,7 @@ msgstr "" "Methoden in diesem Abschnitt *nicht* in-place arbeiten, sondern stattdessen " "neue Objekte erzeugen." -#: ../../library/stdtypes.rst:4075 +#: ../../builtins/stdtypes.rst:4087 msgid "" "Return a copy of the sequence with each byte interpreted as an ASCII " "character, and the first byte capitalized and the rest lowercased. Non-ASCII " @@ -7539,7 +7555,7 @@ msgstr "" "interpretiert wird, wobei das erste Byte großgeschrieben und der Rest " "kleingeschrieben wird. Nicht-ASCII-Bytewerte werden unverändert übernommen." -#: ../../library/stdtypes.rst:4088 +#: ../../builtins/stdtypes.rst:4100 msgid "" "Return a copy of the sequence where all ASCII tab characters are replaced by " "one or more ASCII spaces, depending on the current column and the given tab " @@ -7569,7 +7585,7 @@ msgstr "" "Bytewert wird unverändert kopiert und die aktuelle Spalte um eins erhöht, " "unabhängig davon, wie der Bytewert bei der Ausgabe dargestellt wird::" -#: ../../library/stdtypes.rst:4102 +#: ../../builtins/stdtypes.rst:4114 msgid "" ">>> b'01\\t012\\t0123\\t01234'.expandtabs()\n" "b'01 012 0123 01234'\n" @@ -7581,7 +7597,7 @@ msgstr "" ">>> b'01\\t012\\t0123\\t01234'.expandtabs(4)\n" "b'01 012 0123 01234'" -#: ../../library/stdtypes.rst:4116 +#: ../../builtins/stdtypes.rst:4128 msgid "" "Return ``True`` if all bytes in the sequence are alphabetical ASCII " "characters or ASCII decimal digits and the sequence is not empty, ``False`` " @@ -7596,7 +7612,7 @@ msgstr "" "ASCII-Dezimalziffern sind diejenigen Bytewerte in der Sequenz " "``b'0123456789'``." -#: ../../library/stdtypes.rst:4124 +#: ../../builtins/stdtypes.rst:4136 msgid "" ">>> b'ABCabc1'.isalnum()\n" "True\n" @@ -7608,7 +7624,7 @@ msgstr "" ">>> b'ABC abc1'.isalnum()\n" "False" -#: ../../library/stdtypes.rst:4133 +#: ../../builtins/stdtypes.rst:4145 msgid "" "Return ``True`` if all bytes in the sequence are alphabetic ASCII characters " "and the sequence is not empty, ``False`` otherwise. Alphabetic ASCII " @@ -7620,7 +7636,7 @@ msgstr "" "Alphabetische ASCII-Zeichen sind diejenigen Bytewerte in der Sequenz " "``b'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'``." -#: ../../library/stdtypes.rst:4140 +#: ../../builtins/stdtypes.rst:4152 msgid "" ">>> b'ABCabc'.isalpha()\n" "True\n" @@ -7632,7 +7648,7 @@ msgstr "" ">>> b'ABCabc1'.isalpha()\n" "False" -#: ../../library/stdtypes.rst:4149 +#: ../../builtins/stdtypes.rst:4161 msgid "" "Return ``True`` if the sequence is empty or all bytes in the sequence are " "ASCII, ``False`` otherwise. ASCII bytes are in the range 0-0x7F." @@ -7641,7 +7657,7 @@ msgstr "" "Sequenz ASCII sind, andernfalls ``False``. ASCII-Bytes liegen im Bereich 0–" "0x7F." -#: ../../library/stdtypes.rst:4159 +#: ../../builtins/stdtypes.rst:4171 msgid "" "Return ``True`` if all bytes in the sequence are ASCII decimal digits and " "the sequence is not empty, ``False`` otherwise. ASCII decimal digits are " @@ -7651,7 +7667,7 @@ msgstr "" "sind und die Sequenz nicht leer ist, andernfalls ``False``. ASCII-" "Dezimalziffern sind diejenigen Bytewerte in der Sequenz ``b'0123456789'``." -#: ../../library/stdtypes.rst:4165 +#: ../../builtins/stdtypes.rst:4177 msgid "" ">>> b'1234'.isdigit()\n" "True\n" @@ -7663,7 +7679,7 @@ msgstr "" ">>> b'1.23'.isdigit()\n" "False" -#: ../../library/stdtypes.rst:4174 +#: ../../builtins/stdtypes.rst:4186 msgid "" "Return ``True`` if there is at least one lowercase ASCII character in the " "sequence and no uppercase ASCII characters, ``False`` otherwise." @@ -7672,7 +7688,7 @@ msgstr "" "in der Sequenz vorhanden ist und keine großgeschriebenen ASCII-Zeichen, " "andernfalls ``False``." -#: ../../library/stdtypes.rst:4179 +#: ../../builtins/stdtypes.rst:4191 msgid "" ">>> b'hello world'.islower()\n" "True\n" @@ -7684,9 +7700,9 @@ msgstr "" ">>> b'Hello world'.islower()\n" "False" -#: ../../library/stdtypes.rst:4184 ../../library/stdtypes.rst:4226 -#: ../../library/stdtypes.rst:4242 ../../library/stdtypes.rst:4292 -#: ../../library/stdtypes.rst:4361 +#: ../../builtins/stdtypes.rst:4196 ../../builtins/stdtypes.rst:4238 +#: ../../builtins/stdtypes.rst:4254 ../../builtins/stdtypes.rst:4304 +#: ../../builtins/stdtypes.rst:4373 msgid "" "Lowercase ASCII characters are those byte values in the sequence " "``b'abcdefghijklmnopqrstuvwxyz'``. Uppercase ASCII characters are those byte " @@ -7696,7 +7712,7 @@ msgstr "" "``b'abcdefghijklmnopqrstuvwxyz'``. Großgeschriebene ASCII-Zeichen sind " "diejenigen Bytewerte in der Sequenz ``b'ABCDEFGHIJKLMNOPQRSTUVWXYZ'``." -#: ../../library/stdtypes.rst:4192 +#: ../../builtins/stdtypes.rst:4204 msgid "" "Return ``True`` if all bytes in the sequence are ASCII whitespace and the " "sequence is not empty, ``False`` otherwise. ASCII whitespace characters are " @@ -7709,7 +7725,7 @@ msgstr "" "(Leerzeichen, Tabulator, Zeilenvorschub, Wagenrücklauf, vertikaler " "Tabulator, Seitenvorschub)." -#: ../../library/stdtypes.rst:4201 +#: ../../builtins/stdtypes.rst:4213 msgid "" "Return ``True`` if the sequence is ASCII titlecase and the sequence is not " "empty, ``False`` otherwise. See :meth:`bytes.title` for more details on the " @@ -7719,7 +7735,7 @@ msgstr "" "Sequenz nicht leer ist, andernfalls ``False``. Siehe :meth:`bytes.title` für " "weitere Details zur Definition von \"Titlecase\"." -#: ../../library/stdtypes.rst:4207 +#: ../../builtins/stdtypes.rst:4219 msgid "" ">>> b'Hello World'.istitle()\n" "True\n" @@ -7731,7 +7747,7 @@ msgstr "" ">>> b'Hello world'.istitle()\n" "False" -#: ../../library/stdtypes.rst:4216 +#: ../../builtins/stdtypes.rst:4228 msgid "" "Return ``True`` if there is at least one uppercase alphabetic ASCII " "character in the sequence and no lowercase ASCII characters, ``False`` " @@ -7741,7 +7757,7 @@ msgstr "" "ASCII-Zeichen in der Sequenz vorhanden ist und keine kleingeschriebenen " "ASCII-Zeichen, andernfalls ``False``." -#: ../../library/stdtypes.rst:4221 +#: ../../builtins/stdtypes.rst:4233 msgid "" ">>> b'HELLO WORLD'.isupper()\n" "True\n" @@ -7753,7 +7769,7 @@ msgstr "" ">>> b'Hello world'.isupper()\n" "False" -#: ../../library/stdtypes.rst:4234 +#: ../../builtins/stdtypes.rst:4246 msgid "" "Return a copy of the sequence with all the uppercase ASCII characters " "converted to their corresponding lowercase counterpart." @@ -7762,7 +7778,7 @@ msgstr "" "Zeichen in ihre entsprechenden kleingeschriebenen Gegenstücke umgewandelt " "wurden." -#: ../../library/stdtypes.rst:4239 +#: ../../builtins/stdtypes.rst:4251 msgid "" ">>> b'Hello World'.lower()\n" "b'hello world'" @@ -7770,7 +7786,7 @@ msgstr "" ">>> b'Hello World'.lower()\n" "b'hello world'" -#: ../../library/stdtypes.rst:4259 +#: ../../builtins/stdtypes.rst:4271 msgid "" "Return a list of the lines in the binary sequence, breaking at ASCII line " "boundaries. This method uses the :term:`universal newlines` approach to " @@ -7783,7 +7799,7 @@ msgstr "" "Zeilenumbrüche sind nicht in der Ergebnisliste enthalten, es sei denn, " "*keepends* ist angegeben und wahr." -#: ../../library/stdtypes.rst:4266 +#: ../../builtins/stdtypes.rst:4278 msgid "" ">>> b'ab c\\n\\nde fg\\rkl\\r\\n'.splitlines()\n" "[b'ab c', b'', b'de fg', b'kl']\n" @@ -7795,7 +7811,7 @@ msgstr "" ">>> b'ab c\\n\\nde fg\\rkl\\r\\n'.splitlines(keepends=True)\n" "[b'ab c\\n', b'\\n', b'de fg\\r', b'kl\\r\\n']" -#: ../../library/stdtypes.rst:4271 +#: ../../builtins/stdtypes.rst:4283 msgid "" "Unlike :meth:`~bytes.split` when a delimiter string *sep* is given, this " "method returns an empty list for the empty string, and a terminal line break " @@ -7805,7 +7821,7 @@ msgstr "" "ist, gibt diese Methode für den leeren String eine leere Liste zurück, und " "ein abschließender Zeilenumbruch führt nicht zu einer zusätzlichen Zeile::" -#: ../../library/stdtypes.rst:4275 +#: ../../builtins/stdtypes.rst:4287 msgid "" ">>> b\"\".split(b'\\n'), b\"Two lines\\n\".split(b'\\n')\n" "([b''], [b'Two lines', b''])\n" @@ -7817,7 +7833,7 @@ msgstr "" ">>> b\"\".splitlines(), b\"One line\\n\".splitlines()\n" "([], [b'One line'])" -#: ../../library/stdtypes.rst:4284 +#: ../../builtins/stdtypes.rst:4296 msgid "" "Return a copy of the sequence with all the lowercase ASCII characters " "converted to their corresponding uppercase counterpart and vice-versa." @@ -7826,7 +7842,7 @@ msgstr "" "Zeichen in ihre entsprechenden großgeschriebenen Gegenstücke umgewandelt " "wurden und umgekehrt." -#: ../../library/stdtypes.rst:4289 +#: ../../builtins/stdtypes.rst:4301 msgid "" ">>> b'Hello World'.swapcase()\n" "b'hELLO wORLD'" @@ -7834,7 +7850,7 @@ msgstr "" ">>> b'Hello World'.swapcase()\n" "b'hELLO wORLD'" -#: ../../library/stdtypes.rst:4296 +#: ../../builtins/stdtypes.rst:4308 msgid "" "Unlike :func:`str.swapcase`, it is always the case that ``bin.swapcase()." "swapcase() == bin`` for the binary versions. Case conversions are " @@ -7846,7 +7862,7 @@ msgstr "" "sind in ASCII symmetrisch, auch wenn dies für beliebige Unicode-Codepunkte " "im Allgemeinen nicht zutrifft." -#: ../../library/stdtypes.rst:4310 +#: ../../builtins/stdtypes.rst:4322 msgid "" "Return a titlecased version of the binary sequence where words start with an " "uppercase ASCII character and the remaining characters are lowercase. " @@ -7857,7 +7873,7 @@ msgstr "" "kleingeschrieben sind. Bytewerte ohne Groß-/Kleinschreibung bleiben " "unverändert." -#: ../../library/stdtypes.rst:4316 +#: ../../builtins/stdtypes.rst:4328 msgid "" ">>> b'Hello world'.title()\n" "b'Hello World'" @@ -7865,7 +7881,7 @@ msgstr "" ">>> b'Hello world'.title()\n" "b'Hello World'" -#: ../../library/stdtypes.rst:4319 +#: ../../builtins/stdtypes.rst:4331 msgid "" "Lowercase ASCII characters are those byte values in the sequence " "``b'abcdefghijklmnopqrstuvwxyz'``. Uppercase ASCII characters are those byte " @@ -7877,7 +7893,7 @@ msgstr "" "diejenigen Bytewerte in der Sequenz ``b'ABCDEFGHIJKLMNOPQRSTUVWXYZ'``. Alle " "anderen Bytewerte haben keine Groß-/Kleinschreibung." -#: ../../library/stdtypes.rst:4329 +#: ../../builtins/stdtypes.rst:4341 msgid "" ">>> b\"they're bill's friends from the UK\".title()\n" "b\"They'Re Bill'S Friends From The Uk\"" @@ -7885,14 +7901,14 @@ msgstr "" ">>> b\"they're bill's friends from the UK\".title()\n" "b\"They'Re Bill'S Friends From The Uk\"" -#: ../../library/stdtypes.rst:4332 +#: ../../builtins/stdtypes.rst:4344 msgid "" "A workaround for apostrophes can be constructed using regular expressions::" msgstr "" "Ein Workaround für Apostrophe kann mithilfe regulärer Ausdrücke konstruiert " "werden::" -#: ../../library/stdtypes.rst:4334 +#: ../../builtins/stdtypes.rst:4346 msgid "" ">>> import re\n" ">>> def titlecase(s):\n" @@ -7914,7 +7930,7 @@ msgstr "" ">>> titlecase(b\"they're bill's friends.\")\n" "b\"They're Bill's Friends.\"" -#: ../../library/stdtypes.rst:4353 +#: ../../builtins/stdtypes.rst:4365 msgid "" "Return a copy of the sequence with all the lowercase ASCII characters " "converted to their corresponding uppercase counterpart." @@ -7923,7 +7939,7 @@ msgstr "" "Zeichen in ihre entsprechenden großgeschriebenen Gegenstücke umgewandelt " "wurden." -#: ../../library/stdtypes.rst:4358 +#: ../../builtins/stdtypes.rst:4370 msgid "" ">>> b'Hello World'.upper()\n" "b'HELLO WORLD'" @@ -7931,7 +7947,7 @@ msgstr "" ">>> b'Hello World'.upper()\n" "b'HELLO WORLD'" -#: ../../library/stdtypes.rst:4374 +#: ../../builtins/stdtypes.rst:4386 msgid "" "Return a copy of the sequence left filled with ASCII ``b'0'`` digits to make " "a sequence of length *width*. A leading sign prefix (``b'+'``/ ``b'-'``) is " @@ -7946,7 +7962,7 @@ msgstr "" "`bytes`-Objekte wird die ursprüngliche Sequenz zurückgegeben, wenn *width* " "kleiner oder gleich ``len(seq)`` ist." -#: ../../library/stdtypes.rst:4382 +#: ../../builtins/stdtypes.rst:4394 msgid "" ">>> b\"42\".zfill(5)\n" "b'00042'\n" @@ -7958,11 +7974,11 @@ msgstr "" ">>> b\"-42\".zfill(5)\n" "b'-0042'" -#: ../../library/stdtypes.rst:4396 +#: ../../builtins/stdtypes.rst:4408 msgid "``printf``-style Bytes Formatting" msgstr "Bytes-Formatierung im ``printf``-Stil" -#: ../../library/stdtypes.rst:4413 +#: ../../builtins/stdtypes.rst:4425 msgid "" "The formatting operations described here exhibit a variety of quirks that " "lead to a number of common errors (such as failing to display tuples and " @@ -7974,7 +7990,7 @@ msgstr "" "Darstellen von Tupeln und Dictionaries). Wenn der auszugebende Wert ein " "Tupel oder Dictionary sein kann, packe ihn in ein Tupel." -#: ../../library/stdtypes.rst:4418 +#: ../../builtins/stdtypes.rst:4430 msgid "" "Bytes objects (``bytes``/``bytearray``) have one unique built-in operation: " "the ``%`` operator (modulo). This is also known as the bytes *formatting* or " @@ -7991,7 +8007,7 @@ msgstr "" "*values* ersetzt. Die Wirkung ähnelt der Verwendung von :c:func:`sprintf` in " "der Sprache C." -#: ../../library/stdtypes.rst:4425 +#: ../../builtins/stdtypes.rst:4437 msgid "" "If *format* requires a single argument, *values* may be a single non-tuple " "object. [5]_ Otherwise, *values* must be a tuple with exactly the number of " @@ -8003,7 +8019,7 @@ msgstr "" "der durch das Format-Bytes-Objekt angegebenen Anzahl von Elementen oder ein " "einzelnes Mapping-Objekt (z. B. ein Dictionary) sein." -#: ../../library/stdtypes.rst:4459 +#: ../../builtins/stdtypes.rst:4471 msgid "" "When the right argument is a dictionary (or other mapping type), then the " "formats in the bytes object *must* include a parenthesised mapping key into " @@ -8016,19 +8032,19 @@ msgstr "" "eingefügt wird. Der Mapping-Schlüssel wählt den zu formatierenden Wert aus " "dem Mapping aus. Zum Beispiel:" -#: ../../library/stdtypes.rst:4511 +#: ../../builtins/stdtypes.rst:4523 msgid "\\(8)" msgstr "\\(8)" -#: ../../library/stdtypes.rst:4533 +#: ../../builtins/stdtypes.rst:4545 msgid "Single byte (accepts integer or single byte objects)." msgstr "Einzelnes Byte (akzeptiert Ganzzahl oder Einzel-Byte-Objekte)." -#: ../../library/stdtypes.rst:4536 +#: ../../builtins/stdtypes.rst:4548 msgid "``'b'``" msgstr "``'b'``" -#: ../../library/stdtypes.rst:4536 +#: ../../builtins/stdtypes.rst:4548 msgid "" "Bytes (any object that follows the :ref:`buffer protocol ` or " "has :meth:`~object.__bytes__`)." @@ -8036,7 +8052,7 @@ msgstr "" "Bytes (jedes Objekt, das dem :ref:`Pufferprotokoll ` folgt " "oder :meth:`~object.__bytes__` besitzt)." -#: ../../library/stdtypes.rst:4540 +#: ../../builtins/stdtypes.rst:4552 msgid "" "``'s'`` is an alias for ``'b'`` and should only be used for Python2/3 code " "bases." @@ -8044,7 +8060,7 @@ msgstr "" "``'s'`` ist ein Alias für ``'b'`` und sollte nur für Python-2/3-Codebasen " "verwendet werden." -#: ../../library/stdtypes.rst:4543 +#: ../../builtins/stdtypes.rst:4555 msgid "" "Bytes (converts any Python object using ``repr(obj).encode('ascii', " "'backslashreplace')``)." @@ -8052,7 +8068,7 @@ msgstr "" "Bytes (konvertiert jedes Python-Objekt mittels ``repr(obj).encode('ascii', " "'backslashreplace')``)." -#: ../../library/stdtypes.rst:4546 +#: ../../builtins/stdtypes.rst:4558 msgid "" "``'r'`` is an alias for ``'a'`` and should only be used for Python2/3 code " "bases." @@ -8060,29 +8076,29 @@ msgstr "" "``'r'`` ist ein Alias für ``'a'`` und sollte nur für Python-2/3-Codebasen " "verwendet werden." -#: ../../library/stdtypes.rst:4546 +#: ../../builtins/stdtypes.rst:4558 msgid "\\(7)" msgstr "\\(7)" -#: ../../library/stdtypes.rst:4581 +#: ../../builtins/stdtypes.rst:4593 msgid "``b'%s'`` is deprecated, but will not be removed during the 3.x series." msgstr "" "``b'%s'`` ist veraltet, wird jedoch während der 3.x-Reihe nicht entfernt." -#: ../../library/stdtypes.rst:4584 +#: ../../builtins/stdtypes.rst:4596 msgid "``b'%r'`` is deprecated, but will not be removed during the 3.x series." msgstr "" "``b'%r'`` ist veraltet, wird jedoch während der 3.x-Reihe nicht entfernt." -#: ../../library/stdtypes.rst:4596 +#: ../../builtins/stdtypes.rst:4608 msgid ":pep:`461` - Adding % formatting to bytes and bytearray" msgstr ":pep:`461` - Adding % formatting to bytes and bytearray" -#: ../../library/stdtypes.rst:4603 +#: ../../builtins/stdtypes.rst:4615 msgid "Memory Views" msgstr "Memory-Views" -#: ../../library/stdtypes.rst:4605 +#: ../../builtins/stdtypes.rst:4617 msgid "" ":class:`memoryview` objects allow Python code to access the internal data of " "an object that supports the :ref:`buffer protocol ` without " @@ -8092,7 +8108,7 @@ msgstr "" "die internen Daten eines Objekts zuzugreifen, das das :ref:`Pufferprotokoll " "` unterstützt." -#: ../../library/stdtypes.rst:4611 +#: ../../builtins/stdtypes.rst:4623 msgid "" "Create a :class:`memoryview` that references *object*. *object* must " "support the buffer protocol. Built-in objects that support the buffer " @@ -8102,7 +8118,7 @@ msgstr "" "das Pufferprotokoll unterstützen. Zu den eingebauten Objekten, die das " "Pufferprotokoll unterstützen, gehören :class:`bytes` und :class:`bytearray`." -#: ../../library/stdtypes.rst:4615 +#: ../../builtins/stdtypes.rst:4627 msgid "" "A :class:`memoryview` has the notion of an *element*, which is the atomic " "memory unit handled by the originating *object*. For many simple types such " @@ -8115,7 +8131,7 @@ msgstr "" "`bytearray` ist ein Element ein einzelnes Byte, andere Typen wie :class:" "`array.array` können jedoch größere Elemente haben." -#: ../../library/stdtypes.rst:4620 +#: ../../builtins/stdtypes.rst:4632 msgid "" ":class:`!memoryview`\\s are :ref:`generic ` over the type of their " "underlying data." @@ -8123,7 +8139,7 @@ msgstr "" ":class:`!memoryview`\\s sind über einen Typparameter :ref:`generisch " "`, der den Typ ihrer zugrunde liegenden Daten angibt." -#: ../../library/stdtypes.rst:4623 +#: ../../builtins/stdtypes.rst:4635 msgid "" "``len(view)`` is equal to the length of :meth:`~memoryview.tolist`, which is " "the nested list representation of the view. If ``view.ndim == 1``, this is " @@ -8133,7 +8149,7 @@ msgstr "" "verschachtelten Listendarstellung des Views entspricht. Wenn ``view.ndim == " "1`` ist, entspricht dies der Anzahl der Elemente im View." -#: ../../library/stdtypes.rst:4627 +#: ../../builtins/stdtypes.rst:4639 msgid "" "If ``view.ndim == 0``, ``len(view)`` now raises :exc:`TypeError` instead of " "returning 1." @@ -8141,7 +8157,7 @@ msgstr "" "Wenn ``view.ndim == 0`` ist, löst ``len(view)`` nun einen :exc:`TypeError` " "aus, anstatt 1 zurückzugeben." -#: ../../library/stdtypes.rst:4630 +#: ../../builtins/stdtypes.rst:4642 msgid "" "The :class:`~memoryview.itemsize` attribute will give you the number of " "bytes in a single element." @@ -8149,7 +8165,7 @@ msgstr "" "Das Attribut :class:`~memoryview.itemsize` gibt die Anzahl der Bytes in " "einem einzelnen Element an." -#: ../../library/stdtypes.rst:4633 +#: ../../builtins/stdtypes.rst:4645 msgid "" "A :class:`memoryview` supports slicing and indexing to expose its data. One-" "dimensional slicing will result in a subview::" @@ -8157,7 +8173,7 @@ msgstr "" "Eine :class:`memoryview` unterstützt Slicing und Indizierung zum " "Bereitstellen ihrer Daten. Eindimensionales Slicing führt zu einem Subview::" -#: ../../library/stdtypes.rst:4636 +#: ../../builtins/stdtypes.rst:4648 msgid "" ">>> v = memoryview(b'abcefg')\n" ">>> v[1]\n" @@ -8179,7 +8195,7 @@ msgstr "" ">>> bytes(v[1:4])\n" "b'bce'" -#: ../../library/stdtypes.rst:4646 +#: ../../builtins/stdtypes.rst:4658 msgid "" "If :class:`~memoryview.format` is one of the native format specifiers from " "the :mod:`struct` module, indexing with an integer or a tuple of integers is " @@ -8198,11 +8214,11 @@ msgstr "" "wobei *ndim* die Anzahl der Dimensionen ist. Nulldimensionale Memoryviews " "können mit dem leeren Tupel indiziert werden." -#: ../../library/stdtypes.rst:4655 +#: ../../builtins/stdtypes.rst:4667 msgid "Here is an example with a non-byte format::" msgstr "Hier ist ein Beispiel mit einem Nicht-Byte-Format::" -#: ../../library/stdtypes.rst:4657 +#: ../../builtins/stdtypes.rst:4669 msgid "" ">>> import array\n" ">>> a = array.array('l', [-11111111, 22222222, -33333333, 44444444])\n" @@ -8224,7 +8240,7 @@ msgstr "" ">>> m[::2].tolist()\n" "[-11111111, -33333333]" -#: ../../library/stdtypes.rst:4667 +#: ../../builtins/stdtypes.rst:4679 msgid "" "If the underlying object is writable, the memoryview supports one-" "dimensional slice assignment. Resizing is not allowed::" @@ -8233,7 +8249,7 @@ msgstr "" "Memoryview die eindimensionale Slice-Zuweisung. Größenänderungen sind nicht " "erlaubt::" -#: ../../library/stdtypes.rst:4670 +#: ../../builtins/stdtypes.rst:4682 msgid "" ">>> data = bytearray(b'abcefg')\n" ">>> v = memoryview(data)\n" @@ -8273,7 +8289,7 @@ msgstr "" ">>> data\n" "bytearray(b'z1spam')" -#: ../../library/stdtypes.rst:4688 +#: ../../builtins/stdtypes.rst:4700 msgid "" "One-dimensional memoryviews of :term:`hashable` (read-only) types with " "formats 'B', 'b' or 'c' are also hashable. The hash is defined as ``hash(m) " @@ -8283,7 +8299,7 @@ msgstr "" "(schreibgeschützten) Typen mit den Formaten 'B', 'b' oder 'c' sind ebenfalls " "hashbar. Der Hash ist definiert als ``hash(m) == hash(m.tobytes())``::" -#: ../../library/stdtypes.rst:4692 +#: ../../builtins/stdtypes.rst:4704 msgid "" ">>> v = memoryview(b'abcefg')\n" ">>> hash(v) == hash(b'abcefg')\n" @@ -8301,7 +8317,7 @@ msgstr "" ">>> hash(v[::-2]) == hash(b'abcefg'[::-2])\n" "True" -#: ../../library/stdtypes.rst:4700 +#: ../../builtins/stdtypes.rst:4712 msgid "" "One-dimensional memoryviews can now be sliced. One-dimensional memoryviews " "with formats 'B', 'b' or 'c' are now :term:`hashable`." @@ -8310,7 +8326,7 @@ msgstr "" "Memoryviews mit den Formaten 'B', 'b' oder 'c' sind nun :term:`hashbar " "`." -#: ../../library/stdtypes.rst:4704 +#: ../../builtins/stdtypes.rst:4716 msgid "" "memoryview is now registered automatically with :class:`collections.abc." "Sequence`" @@ -8318,19 +8334,19 @@ msgstr "" "memoryview wird nun automatisch bei :class:`collections.abc.Sequence` " "registriert" -#: ../../library/stdtypes.rst:4708 +#: ../../builtins/stdtypes.rst:4720 msgid "memoryviews can now be indexed with a tuple of integers." msgstr "Memoryviews können nun mit Tupeln aus Ganzzahlen indiziert werden." -#: ../../library/stdtypes.rst:4711 +#: ../../builtins/stdtypes.rst:4723 msgid "memoryview is now a :term:`generic type`." msgstr "memoryview ist nun ein :term:`generischer Typ `." -#: ../../library/stdtypes.rst:4714 +#: ../../builtins/stdtypes.rst:4726 msgid ":class:`memoryview` has several methods:" msgstr ":class:`memoryview` besitzt mehrere Methoden:" -#: ../../library/stdtypes.rst:4718 +#: ../../builtins/stdtypes.rst:4730 msgid "" "A memoryview and a :pep:`3118` exporter are equal if their shapes are " "equivalent and if all corresponding values are equal when the operands' " @@ -8341,7 +8357,7 @@ msgstr "" "jeweiligen Formatcodes der Operanden unter Verwendung der :mod:`struct`-" "Syntax interpretiert werden." -#: ../../library/stdtypes.rst:4722 +#: ../../builtins/stdtypes.rst:4734 msgid "" "For the subset of :mod:`struct` format strings currently supported by :meth:" "`tolist`, ``v`` and ``w`` are equal if ``v.tolist() == w.tolist()``::" @@ -8350,7 +8366,7 @@ msgstr "" "`tolist` unterstützt werden, sind ``v`` und ``w`` gleich, wenn ``v.tolist() " "== w.tolist()`` gilt::" -#: ../../library/stdtypes.rst:4725 +#: ../../builtins/stdtypes.rst:4737 msgid "" ">>> import array\n" ">>> a = array.array('I', [1, 2, 3, 4, 5])\n" @@ -8384,7 +8400,7 @@ msgstr "" ">>> z.tolist() == c.tolist()\n" "True" -#: ../../library/stdtypes.rst:4741 +#: ../../builtins/stdtypes.rst:4753 msgid "" "If either format string is not supported by the :mod:`struct` module, then " "the objects will always compare as unequal (even if the format strings and " @@ -8394,7 +8410,7 @@ msgstr "" "unterstützt wird, werden die Objekte immer als ungleich bewertet (selbst " "wenn die Format-Strings und Pufferinhalte identisch sind)::" -#: ../../library/stdtypes.rst:4745 +#: ../../builtins/stdtypes.rst:4757 msgid "" ">>> from ctypes import BigEndianStructure, c_long\n" ">>> class BEPoint(BigEndianStructure):\n" @@ -8420,7 +8436,7 @@ msgstr "" ">>> a == b\n" "False" -#: ../../library/stdtypes.rst:4757 +#: ../../builtins/stdtypes.rst:4769 msgid "" "Note that, as with floating-point numbers, ``v is w`` does *not* imply ``v " "== w`` for memoryview objects." @@ -8428,7 +8444,7 @@ msgstr "" "Beachte, dass wie bei Gleitkommazahlen für Memoryview-Objekte ``v is w`` " "*nicht* bedeutet, dass ``v == w`` gilt." -#: ../../library/stdtypes.rst:4760 +#: ../../builtins/stdtypes.rst:4772 msgid "" "Previous versions compared the raw memory disregarding the item format and " "the logical array structure." @@ -8436,7 +8452,7 @@ msgstr "" "Frühere Versionen verglichen den Rohspeicher ohne Berücksichtigung des " "Elementformats und der logischen Array-Struktur." -#: ../../library/stdtypes.rst:4766 +#: ../../builtins/stdtypes.rst:4778 msgid "" "Return the data in the buffer as a bytestring. This is equivalent to " "calling the :class:`bytes` constructor on the memoryview. ::" @@ -8444,7 +8460,7 @@ msgstr "" "Gibt die Daten im Puffer als Byte-String zurück. Dies entspricht dem Aufruf " "des :class:`bytes`-Konstruktors auf der Memoryview. ::" -#: ../../library/stdtypes.rst:4769 +#: ../../builtins/stdtypes.rst:4781 msgid "" ">>> m = memoryview(b\"abc\")\n" ">>> m.tobytes()\n" @@ -8458,7 +8474,7 @@ msgstr "" ">>> bytes(m)\n" "b'abc'" -#: ../../library/stdtypes.rst:4775 +#: ../../builtins/stdtypes.rst:4787 msgid "" "For non-contiguous arrays the result is equal to the flattened list " "representation with all elements converted to bytes. :meth:`tobytes` " @@ -8470,7 +8486,7 @@ msgstr "" "`tobytes` unterstützt alle Format-Strings, einschließlich derer, die nicht " "in der Syntax des Moduls :mod:`struct` vorliegen." -#: ../../library/stdtypes.rst:4780 +#: ../../builtins/stdtypes.rst:4792 msgid "" "*order* can be {'C', 'F', 'A'}. When *order* is 'C' or 'F', the data of the " "original array is converted to C or Fortran order. For contiguous views, 'A' " @@ -8485,7 +8501,7 @@ msgstr "" "erhalten. Für nicht-zusammenhängende Views werden die Daten zuerst nach C " "konvertiert. *order=None* entspricht *order='C'*." -#: ../../library/stdtypes.rst:4790 +#: ../../builtins/stdtypes.rst:4802 msgid "" "Return a string object containing two hexadecimal digits for each byte in " "the buffer. ::" @@ -8493,7 +8509,7 @@ msgstr "" "Gibt ein String-Objekt zurück, das zwei Hexadezimalziffern für jedes Byte im " "Puffer enthält. ::" -#: ../../library/stdtypes.rst:4793 +#: ../../builtins/stdtypes.rst:4805 msgid "" ">>> m = memoryview(b\"abc\")\n" ">>> m.hex()\n" @@ -8503,7 +8519,7 @@ msgstr "" ">>> m.hex()\n" "'616263'" -#: ../../library/stdtypes.rst:4799 +#: ../../builtins/stdtypes.rst:4811 msgid "" "Similar to :meth:`bytes.hex`, :meth:`memoryview.hex` now supports optional " "*sep* and *bytes_per_sep* parameters to insert separators between bytes in " @@ -8513,11 +8529,11 @@ msgstr "" "die optionalen Parameter *sep* und *bytes_per_sep*, um Trennzeichen zwischen " "Bytes in der Hex-Ausgabe einzufügen." -#: ../../library/stdtypes.rst:4806 +#: ../../builtins/stdtypes.rst:4818 msgid "Return the data in the buffer as a list of elements. ::" msgstr "Gibt die Daten im Puffer als eine Liste von Elementen zurück. ::" -#: ../../library/stdtypes.rst:4808 +#: ../../builtins/stdtypes.rst:4820 msgid "" ">>> memoryview(b'abc').tolist()\n" "[97, 98, 99]\n" @@ -8535,7 +8551,7 @@ msgstr "" ">>> m.tolist()\n" "[1.1, 2.2, 3.3]" -#: ../../library/stdtypes.rst:4816 +#: ../../builtins/stdtypes.rst:4828 msgid "" ":meth:`tolist` now supports all single character native formats in :mod:" "`struct` module syntax as well as multi-dimensional representations." @@ -8543,7 +8559,7 @@ msgstr "" ":meth:`tolist` unterstützt nun alle nativen Einzelzeichen-Formate in der " "Syntax des Moduls :mod:`struct` sowie mehrdimensionale Darstellungen." -#: ../../library/stdtypes.rst:4823 +#: ../../builtins/stdtypes.rst:4835 msgid "" "Return a readonly version of the memoryview object. The original memoryview " "object is unchanged. ::" @@ -8551,7 +8567,7 @@ msgstr "" "Gibt eine schreibgeschützte Version des Memoryview-Objekts zurück. Das " "ursprüngliche Memoryview-Objekt bleibt unverändert. ::" -#: ../../library/stdtypes.rst:4826 +#: ../../builtins/stdtypes.rst:4838 msgid "" ">>> m = memoryview(bytearray(b'abc'))\n" ">>> mm = m.toreadonly()\n" @@ -8577,7 +8593,7 @@ msgstr "" ">>> mm.tolist()\n" "[43, 98, 99]" -#: ../../library/stdtypes.rst:4842 +#: ../../builtins/stdtypes.rst:4854 msgid "" "Release the underlying buffer exposed by the memoryview object. Many " "objects take special actions when a view is held on them (for example, a :" @@ -8592,7 +8608,7 @@ msgstr "" "praktisch, um diese Einschränkungen so schnell wie möglich aufzuheben (und " "verbleibende Ressourcen freizugeben)." -#: ../../library/stdtypes.rst:4848 +#: ../../builtins/stdtypes.rst:4860 msgid "" "After this method has been called, any further operation on the view raises " "a :class:`ValueError` (except :meth:`release` itself which can be called " @@ -8602,7 +8618,7 @@ msgstr "" "View einen :class:`ValueError` aus (außer :meth:`release` selbst, das " "mehrmals aufgerufen werden kann)::" -#: ../../library/stdtypes.rst:4852 +#: ../../builtins/stdtypes.rst:4864 msgid "" ">>> m = memoryview(b'abc')\n" ">>> m.release()\n" @@ -8618,7 +8634,7 @@ msgstr "" " File \"\", line 1, in \n" "ValueError: operation forbidden on released memoryview object" -#: ../../library/stdtypes.rst:4859 +#: ../../builtins/stdtypes.rst:4871 msgid "" "The context management protocol can be used for a similar effect, using the " "``with`` statement::" @@ -8626,7 +8642,7 @@ msgstr "" "Das Kontextmanagement-Protokoll kann für einen ähnlichen Effekt unter " "Verwendung der ``with``-Anweisung genutzt werden::" -#: ../../library/stdtypes.rst:4862 +#: ../../builtins/stdtypes.rst:4874 msgid "" ">>> with memoryview(b'abc') as m:\n" "... m[0]\n" @@ -8646,7 +8662,7 @@ msgstr "" " File \"\", line 1, in \n" "ValueError: operation forbidden on released memoryview object" -#: ../../library/stdtypes.rst:4876 +#: ../../builtins/stdtypes.rst:4888 msgid "" "Cast a memoryview to a new format or shape. *shape* defaults to " "``[byte_length//new_itemsize]``, which means that the result view will be " @@ -8661,7 +8677,7 @@ msgstr "" "Typumwandlungen (Casts) sind 1D -> C-:term:`zusammenhängend ` " "und C-zusammenhängend -> 1D." -#: ../../library/stdtypes.rst:4882 +#: ../../builtins/stdtypes.rst:4894 msgid "" "The destination format is restricted to a single element native format in :" "mod:`struct` syntax. One of the formats must be a byte format ('B', 'b' or " @@ -8674,11 +8690,11 @@ msgstr "" "übereinstimmen. Beachte, dass alle Byte-Längen vom Betriebssystem abhängen " "können." -#: ../../library/stdtypes.rst:4888 +#: ../../builtins/stdtypes.rst:4900 msgid "Cast 1D/long to 1D/unsigned bytes::" msgstr "Umwandlung von 1D/Long in 1D/Unsigned Bytes::" -#: ../../library/stdtypes.rst:4890 +#: ../../builtins/stdtypes.rst:4902 msgid "" ">>> import array\n" ">>> a = array.array('l', [1,2,3])\n" @@ -8722,11 +8738,11 @@ msgstr "" ">>> y.nbytes\n" "24" -#: ../../library/stdtypes.rst:4911 +#: ../../builtins/stdtypes.rst:4923 msgid "Cast 1D/unsigned bytes to 1D/char::" msgstr "Umwandlung von 1D/Unsigned Bytes in 1D/Char::" -#: ../../library/stdtypes.rst:4913 +#: ../../builtins/stdtypes.rst:4925 msgid "" ">>> b = bytearray(b'zyz')\n" ">>> x = memoryview(b)\n" @@ -8750,11 +8766,11 @@ msgstr "" ">>> b\n" "bytearray(b'ayz')" -#: ../../library/stdtypes.rst:4924 +#: ../../builtins/stdtypes.rst:4936 msgid "Cast 1D/bytes to 3D/ints to 1D/signed char::" msgstr "Umwandlung von 1D/Bytes in 3D/Ints in 1D/Signed Char::" -#: ../../library/stdtypes.rst:4926 +#: ../../builtins/stdtypes.rst:4938 msgid "" ">>> import struct\n" ">>> buf = struct.pack(\"i\"*12, *list(range(12)))\n" @@ -8804,11 +8820,11 @@ msgstr "" ">>> z.nbytes\n" "48" -#: ../../library/stdtypes.rst:4950 +#: ../../builtins/stdtypes.rst:4962 msgid "Cast 1D/unsigned long to 2D/unsigned long::" msgstr "Umwandlung von 1D/Unsigned Long in 2D/Unsigned Long::" -#: ../../library/stdtypes.rst:4952 +#: ../../builtins/stdtypes.rst:4964 msgid "" ">>> buf = struct.pack(\"L\"*6, *list(range(6)))\n" ">>> x = memoryview(buf)\n" @@ -8830,17 +8846,17 @@ msgstr "" ">>> y.tolist()\n" "[[0, 1, 2], [3, 4, 5]]" -#: ../../library/stdtypes.rst:4964 +#: ../../builtins/stdtypes.rst:4976 msgid "The source format is no longer restricted when casting to a byte view." msgstr "" "Das Quellformat ist bei der Umwandlung in einen Byte-View nicht mehr " "eingeschränkt." -#: ../../library/stdtypes.rst:4969 +#: ../../builtins/stdtypes.rst:4981 msgid "Count the number of occurrences of *value*." msgstr "Zählt die Anzahl der Vorkommen von *value*." -#: ../../library/stdtypes.rst:4975 +#: ../../builtins/stdtypes.rst:4987 msgid "" "Return the index of the first occurrence of *value* (at or after index " "*start* and before index *stop*)." @@ -8848,20 +8864,20 @@ msgstr "" "Gibt den Index des ersten Vorkommens von *value* zurück (an oder nach Index " "*start* und vor Index *stop*)." -#: ../../library/stdtypes.rst:4978 +#: ../../builtins/stdtypes.rst:4990 msgid "Raises a :exc:`ValueError` if *value* cannot be found." msgstr "" "Löst einen :exc:`ValueError` aus, wenn *value* nicht gefunden werden kann." -#: ../../library/stdtypes.rst:4982 +#: ../../builtins/stdtypes.rst:4994 msgid "There are also several readonly attributes available:" msgstr "Es stehen außerdem mehrere schreibgeschützte Attribute zur Verfügung:" -#: ../../library/stdtypes.rst:4986 +#: ../../builtins/stdtypes.rst:4998 msgid "The underlying object of the memoryview::" msgstr "Das zugrunde liegende Objekt der Memoryview::" -#: ../../library/stdtypes.rst:4988 +#: ../../builtins/stdtypes.rst:5000 msgid "" ">>> b = bytearray(b'xyz')\n" ">>> m = memoryview(b)\n" @@ -8873,7 +8889,7 @@ msgstr "" ">>> m.obj is b\n" "True" -#: ../../library/stdtypes.rst:4997 +#: ../../builtins/stdtypes.rst:5009 msgid "" "``nbytes == product(shape) * itemsize == len(m.tobytes())``. This is the " "amount of space in bytes that the array would use in a contiguous " @@ -8883,7 +8899,7 @@ msgstr "" "Speicherplatz in Bytes, den das Array in einer zusammenhängenden Darstellung " "belegen würde. Er ist nicht zwingend gleich ``len(m)``::" -#: ../../library/stdtypes.rst:5001 +#: ../../builtins/stdtypes.rst:5013 msgid "" ">>> import array\n" ">>> a = array.array('i', [1,2,3,4,5])\n" @@ -8915,11 +8931,11 @@ msgstr "" ">>> len(y.tobytes())\n" "12" -#: ../../library/stdtypes.rst:5016 +#: ../../builtins/stdtypes.rst:5028 msgid "Multi-dimensional arrays::" msgstr "Mehrdimensionale Arrays::" -#: ../../library/stdtypes.rst:5018 +#: ../../builtins/stdtypes.rst:5030 msgid "" ">>> import struct\n" ">>> buf = struct.pack(\"d\"*12, *[1.5*x for x in range(12)])\n" @@ -8943,11 +8959,11 @@ msgstr "" ">>> y.nbytes\n" "96" -#: ../../library/stdtypes.rst:5033 +#: ../../builtins/stdtypes.rst:5045 msgid "A bool indicating whether the memory is read only." msgstr "Ein boolescher Wert, der angibt, ob der Speicher schreibgeschützt ist." -#: ../../library/stdtypes.rst:5037 +#: ../../builtins/stdtypes.rst:5049 msgid "" "A string containing the format (in :mod:`struct` module style) for each " "element in the view. A memoryview can be created from exporters with " @@ -8959,7 +8975,7 @@ msgstr "" "Format-Strings erzeugt werden, einige Methoden (z. B. :meth:`tolist`) sind " "jedoch auf native Einzel-Element-Formate beschränkt." -#: ../../library/stdtypes.rst:5042 +#: ../../builtins/stdtypes.rst:5054 msgid "" "format ``'B'`` is now handled according to the struct module syntax. This " "means that ``memoryview(b'abc')[0] == b'abc'[0] == 97``." @@ -8967,11 +8983,11 @@ msgstr "" "Das Format ``'B'`` wird nun gemäß der Syntax des Moduls struct behandelt. " "Das bedeutet, dass ``memoryview(b'abc')[0] == b'abc'[0] == 97`` gilt." -#: ../../library/stdtypes.rst:5048 +#: ../../builtins/stdtypes.rst:5060 msgid "The size in bytes of each element of the memoryview::" msgstr "Die Größe jedes Elements der Memoryview in Bytes::" -#: ../../library/stdtypes.rst:5050 +#: ../../builtins/stdtypes.rst:5062 msgid "" ">>> import array, struct\n" ">>> m = memoryview(array.array('H', [32000, 32001, 32002]))\n" @@ -8991,7 +9007,7 @@ msgstr "" ">>> struct.calcsize('H') == m.itemsize\n" "True" -#: ../../library/stdtypes.rst:5061 +#: ../../builtins/stdtypes.rst:5073 msgid "" "An integer indicating how many dimensions of a multi-dimensional array the " "memory represents." @@ -8999,7 +9015,7 @@ msgstr "" "Eine Ganzzahl, die angibt, wie viele Dimensionen eines mehrdimensionalen " "Arrays der Speicher darstellt." -#: ../../library/stdtypes.rst:5066 +#: ../../builtins/stdtypes.rst:5078 msgid "" "A tuple of integers the length of :attr:`ndim` giving the shape of the " "memory as an N-dimensional array." @@ -9007,11 +9023,11 @@ msgstr "" "Ein Tupel aus Ganzzahlen mit der Länge von :attr:`ndim`, das das Shape des " "Speichers als N-dimensionales Array angibt." -#: ../../library/stdtypes.rst:5069 ../../library/stdtypes.rst:5077 +#: ../../builtins/stdtypes.rst:5081 ../../builtins/stdtypes.rst:5089 msgid "An empty tuple instead of ``None`` when ndim = 0." msgstr "Ein leeres Tupel anstelle von ``None``, wenn ndim = 0 ist." -#: ../../library/stdtypes.rst:5074 +#: ../../builtins/stdtypes.rst:5086 msgid "" "A tuple of integers the length of :attr:`ndim` giving the size in bytes to " "access each element for each dimension of the array." @@ -9019,31 +9035,31 @@ msgstr "" "Ein Tupel aus Ganzzahlen mit der Länge von :attr:`ndim`, das die Größe in " "Bytes für den Zugriff auf jedes Element für jede Dimension des Arrays angibt." -#: ../../library/stdtypes.rst:5082 +#: ../../builtins/stdtypes.rst:5094 msgid "Used internally for PIL-style arrays. The value is informational only." msgstr "" "Wird intern für Arrays im PIL-Stil verwendet. Der Wert dient nur zur " "Information." -#: ../../library/stdtypes.rst:5086 +#: ../../builtins/stdtypes.rst:5098 msgid "A bool indicating whether the memory is C-:term:`contiguous`." msgstr "" "Ein boolescher Wert, der angibt, ob der Speicher C-:term:`zusammenhängend " "` ist." -#: ../../library/stdtypes.rst:5092 +#: ../../builtins/stdtypes.rst:5104 msgid "A bool indicating whether the memory is Fortran :term:`contiguous`." msgstr "" "Ein boolescher Wert, der angibt, ob der Speicher Fortran-:term:" "`zusammenhängend ` ist." -#: ../../library/stdtypes.rst:5098 +#: ../../builtins/stdtypes.rst:5110 msgid "A bool indicating whether the memory is :term:`contiguous`." msgstr "" "Ein boolescher Wert, der angibt, ob der Speicher :term:`zusammenhängend " "` ist." -#: ../../library/stdtypes.rst:5102 +#: ../../builtins/stdtypes.rst:5114 msgid "" "For information on the thread safety of :class:`memoryview` objects in the :" "term:`free-threaded build`, see :ref:`thread-safety-memoryview`." @@ -9052,18 +9068,20 @@ msgstr "" "term:`Build mit freien Threads ` findest du unter :ref:" "`thread-safety-memoryview`." -#: ../../library/stdtypes.rst:5109 +#: ../../builtins/stdtypes.rst:5121 msgid "Set Types --- :class:`set`, :class:`frozenset`" msgstr "Mengen-Typen – :class:`set`, :class:`frozenset`" -#: ../../library/stdtypes.rst:5113 +#: ../../builtins/stdtypes.rst:5125 +#, fuzzy msgid "" "A :dfn:`set` object is an unordered collection of distinct :term:`hashable` " "objects. Common uses include membership testing, removing duplicates from a " "sequence, and computing mathematical operations such as intersection, union, " "difference, and symmetric difference. (For other containers see the built-" "in :class:`dict`, :class:`list`, and :class:`tuple` classes, and the :mod:" -"`collections` module.)" +"`collections` module.) See :ref:`time-complexity` for the costs of the " +"various set operations." msgstr "" "Ein :dfn:`set`-Objekt (Menge) ist eine ungeordnete Sammlung eindeutiger :" "term:`hashbarer ` Objekte. Typische Verwendungszwecke sind " @@ -9073,7 +9091,7 @@ msgstr "" "eingebauten Klassen :class:`dict`, :class:`list` und :class:`tuple` sowie " "das Modul :mod:`collections`.)" -#: ../../library/stdtypes.rst:5120 +#: ../../builtins/stdtypes.rst:5133 msgid "" "Like other collections, sets support ``x in set``, ``len(set)``, and ``for x " "in set``. Being an unordered collection, sets do not record element " @@ -9086,7 +9104,7 @@ msgstr "" "unterstützen Mengen weder Indizierung, Slicing noch anderes sequenzartiges " "Verhalten." -#: ../../library/stdtypes.rst:5125 +#: ../../builtins/stdtypes.rst:5138 msgid "" "There are currently two built-in set types, :class:`set` and :class:" "`frozenset`. The :class:`set` type is mutable --- the contents can be " @@ -9107,7 +9125,7 @@ msgstr "" "als Dictionary-Schlüssel oder als Element einer anderen Menge verwendet " "werden." -#: ../../library/stdtypes.rst:5134 +#: ../../builtins/stdtypes.rst:5147 msgid "" "Non-empty sets (not frozensets) can be created by placing a comma-separated " "list of elements within braces, for example: ``{'jack', 'sjoerd'}``, in " @@ -9117,11 +9135,11 @@ msgstr "" "`set` auch durch eine kommagetrennte Liste von Elementen in geschweiften " "Klammern erstellt werden, zum Beispiel: ``{'jack', 'sjoerd'}``." -#: ../../library/stdtypes.rst:5138 +#: ../../builtins/stdtypes.rst:5151 msgid "The constructors for both classes work the same:" msgstr "Die Konstruktoren für beide Klassen funktionieren gleich:" -#: ../../library/stdtypes.rst:5143 +#: ../../builtins/stdtypes.rst:5156 msgid "" "Return a new set or frozenset object whose elements are taken from " "*iterable*. The elements of a set must be :term:`hashable`. To represent " @@ -9134,25 +9152,25 @@ msgstr "" "Mengen :class:`frozenset`-Objekte sein. Wenn *iterable* nicht angegeben ist, " "wird eine neue leere Menge zurückgegeben." -#: ../../library/stdtypes.rst:5149 +#: ../../builtins/stdtypes.rst:5162 msgid "Sets can be created by several means:" msgstr "Mengen können auf verschiedene Arten erstellt werden:" -#: ../../library/stdtypes.rst:5151 +#: ../../builtins/stdtypes.rst:5164 msgid "" "Use a comma-separated list of elements within braces: ``{'jack', 'sjoerd'}``" msgstr "" "Verwendung einer kommagetrennten Liste von Elementen in geschweiften " "Klammern: ``{'jack', 'sjoerd'}``" -#: ../../library/stdtypes.rst:5152 +#: ../../builtins/stdtypes.rst:5165 msgid "" "Use a set comprehension: ``{c for c in 'abracadabra' if c not in 'abc'}``" msgstr "" "Verwendung einer Set-Comprehension: ``{c for c in 'abracadabra' if c not in " "'abc'}``" -#: ../../library/stdtypes.rst:5153 +#: ../../builtins/stdtypes.rst:5166 msgid "" "Use the type constructor: ``set()``, ``set('foobar')``, ``set(['a', 'b', " "'foo'])``" @@ -9160,7 +9178,7 @@ msgstr "" "Verwendung des Typ-Konstruktors: ``set()``, ``set('foobar')``, ``set(['a', " "'b', 'foo'])``" -#: ../../library/stdtypes.rst:5155 +#: ../../builtins/stdtypes.rst:5168 msgid "" "Instances of :class:`set` and :class:`frozenset` provide the following " "operations:" @@ -9168,20 +9186,20 @@ msgstr "" "Instanzen von :class:`set` und :class:`frozenset` bieten die folgenden " "Operationen:" -#: ../../library/stdtypes.rst:5160 +#: ../../builtins/stdtypes.rst:5173 msgid "Return the number of elements in set *s* (cardinality of *s*)." msgstr "" "Gibt die Anzahl der Elemente in der Menge *s* zurück (Kardinalität von *s*)." -#: ../../library/stdtypes.rst:5164 +#: ../../builtins/stdtypes.rst:5177 msgid "Test *x* for membership in *s*." msgstr "Prüft *x* auf Mitgliedschaft in *s*." -#: ../../library/stdtypes.rst:5168 +#: ../../builtins/stdtypes.rst:5181 msgid "Test *x* for non-membership in *s*." msgstr "Prüft *x* auf Nicht-Mitgliedschaft in *s*." -#: ../../library/stdtypes.rst:5173 +#: ../../builtins/stdtypes.rst:5186 msgid "" "Return ``True`` if the set has no elements in common with *other*. Sets are " "disjoint if and only if their intersection is the empty set." @@ -9190,11 +9208,11 @@ msgstr "" "hat. Mengen sind genau dann disjunkt, wenn ihre Schnittmenge die leere Menge " "ist." -#: ../../library/stdtypes.rst:5180 +#: ../../builtins/stdtypes.rst:5193 msgid "Test whether every element in the set is in *other*." msgstr "Prüft, ob jedes Element der Menge in *other* enthalten ist." -#: ../../library/stdtypes.rst:5184 +#: ../../builtins/stdtypes.rst:5197 msgid "" "Test whether the set is a proper subset of *other*, that is, ``set <= other " "and set != other``." @@ -9202,11 +9220,11 @@ msgstr "" "Prüft, ob die Menge eine echte Teilmenge von *other* ist, das heißt ``set <= " "other and set != other``." -#: ../../library/stdtypes.rst:5191 +#: ../../builtins/stdtypes.rst:5204 msgid "Test whether every element in *other* is in the set." msgstr "Prüft, ob jedes Element in *other* in der Menge enthalten ist." -#: ../../library/stdtypes.rst:5195 +#: ../../builtins/stdtypes.rst:5208 msgid "" "Test whether the set is a proper superset of *other*, that is, ``set >= " "other and set != other``." @@ -9214,35 +9232,35 @@ msgstr "" "Prüft, ob die Menge eine echte Obermenge von *other* ist, das heißt ``set >= " "other and set != other``." -#: ../../library/stdtypes.rst:5202 +#: ../../builtins/stdtypes.rst:5215 msgid "Return a new set with elements from the set and all others." msgstr "" "Gibt eine neue Menge mit Elementen aus der Menge und allen anderen zurück." -#: ../../library/stdtypes.rst:5208 +#: ../../builtins/stdtypes.rst:5221 msgid "Return a new set with elements common to the set and all others." msgstr "" "Gibt eine neue Menge mit Elementen zurück, die der Menge und allen anderen " "gemeinsam sind." -#: ../../library/stdtypes.rst:5214 +#: ../../builtins/stdtypes.rst:5227 msgid "Return a new set with elements in the set that are not in the others." msgstr "" "Gibt eine neue Menge mit Elementen der Menge zurück, die nicht in den " "anderen enthalten sind." -#: ../../library/stdtypes.rst:5220 +#: ../../builtins/stdtypes.rst:5233 msgid "" "Return a new set with elements in either the set or *other* but not both." msgstr "" "Gibt eine neue Menge mit Elementen zurück, die entweder in der Menge oder in " "*other*, aber nicht in beiden enthalten sind." -#: ../../library/stdtypes.rst:5225 +#: ../../builtins/stdtypes.rst:5238 msgid "Return a shallow copy of the set." msgstr "Gibt eine flache Kopie (Shallow Copy) der Menge zurück." -#: ../../library/stdtypes.rst:5228 +#: ../../builtins/stdtypes.rst:5241 msgid "" "Note, the non-operator versions of :meth:`~frozenset.union`, :meth:" "`~frozenset.intersection`, :meth:`~frozenset.difference`, :meth:`~frozenset." @@ -9261,7 +9279,7 @@ msgstr "" "``set('abc') & 'cbs'`` zugunsten des lesbareren ``set('abc')." "intersection('cbs')`` aus." -#: ../../library/stdtypes.rst:5235 +#: ../../builtins/stdtypes.rst:5248 msgid "" "Both :class:`set` and :class:`frozenset` support set to set comparisons. Two " "sets are equal if and only if every element of each set is contained in the " @@ -9279,7 +9297,7 @@ msgstr "" "dann, wenn die erste Menge eine echte Obermenge der zweiten Menge ist (eine " "Obermenge ist, aber nicht gleich ist)." -#: ../../library/stdtypes.rst:5242 +#: ../../builtins/stdtypes.rst:5255 msgid "" "Instances of :class:`set` are compared to instances of :class:`frozenset` " "based on their members. For example, ``set('abc') == frozenset('abc')`` " @@ -9290,7 +9308,7 @@ msgstr "" "== frozenset('abc')`` ``True`` zurück, ebenso wie ``set('abc') in " "set([frozenset('abc')])``." -#: ../../library/stdtypes.rst:5246 +#: ../../builtins/stdtypes.rst:5259 msgid "" "The subset and equality comparisons do not generalize to a total ordering " "function. For example, any two nonempty disjoint sets are not equal and are " @@ -9303,7 +9321,7 @@ msgstr "" "*alle* der folgenden Vergleiche ``False`` zurückgeben: ``ab``." -#: ../../library/stdtypes.rst:5251 +#: ../../builtins/stdtypes.rst:5264 msgid "" "Since sets only define partial ordering (subset relationships), the output " "of the :meth:`list.sort` method is undefined for lists of sets." @@ -9311,13 +9329,13 @@ msgstr "" "Da Mengen nur eine Halbordnung (Teilmengenbeziehungen) definieren, ist die " "Ausgabe der Methode :meth:`list.sort` für Listen von Mengen undefiniert." -#: ../../library/stdtypes.rst:5254 +#: ../../builtins/stdtypes.rst:5267 msgid "Set elements, like dictionary keys, must be :term:`hashable`." msgstr "" "Mengenelemente müssen, wie Dictionary-Schlüssel, :term:`hashbar ` " "sein." -#: ../../library/stdtypes.rst:5256 +#: ../../builtins/stdtypes.rst:5269 msgid "" "Binary operations that mix :class:`set` instances with :class:`frozenset` " "return the type of the first operand. For example: ``frozenset('ab') | " @@ -9327,7 +9345,7 @@ msgstr "" "mischen, geben den Typ des ersten Operanden zurück. Zum Beispiel gibt " "``frozenset('ab') | set('bc')`` eine Instanz von :class:`frozenset` zurück." -#: ../../library/stdtypes.rst:5260 +#: ../../builtins/stdtypes.rst:5273 msgid "" "The following table lists operations available for :class:`set` that do not " "apply to immutable instances of :class:`frozenset`:" @@ -9336,33 +9354,33 @@ msgstr "" "sind, jedoch nicht für unveränderliche Instanzen von :class:`frozenset` " "gelten:" -#: ../../library/stdtypes.rst:5266 +#: ../../builtins/stdtypes.rst:5279 msgid "Update the set, adding elements from all others." msgstr "Aktualisiert die Menge und fügt Elemente aus allen anderen hinzu." -#: ../../library/stdtypes.rst:5271 +#: ../../builtins/stdtypes.rst:5284 msgid "Update the set, keeping only elements found in it and all others." msgstr "" "Aktualisiert die Menge und behält nur Elemente bei, die sowohl in ihr als " "auch in allen anderen vorkommen." -#: ../../library/stdtypes.rst:5276 +#: ../../builtins/stdtypes.rst:5289 msgid "Update the set, removing elements found in others." msgstr "" "Aktualisiert die Menge und entfernt Elemente, die in den anderen vorkommen." -#: ../../library/stdtypes.rst:5281 +#: ../../builtins/stdtypes.rst:5294 msgid "" "Update the set, keeping only elements found in either set, but not in both." msgstr "" "Aktualisiert die Menge und behält nur Elemente bei, die in einer der beiden " "Mengen vorkommen, jedoch nicht in beiden." -#: ../../library/stdtypes.rst:5285 +#: ../../builtins/stdtypes.rst:5298 msgid "Add element *elem* to the set." msgstr "Fügt das Element *elem* zur Menge hinzu." -#: ../../library/stdtypes.rst:5289 +#: ../../builtins/stdtypes.rst:5302 msgid "" "Remove element *elem* from the set. Raises :exc:`KeyError` if *elem* is not " "contained in the set." @@ -9370,11 +9388,11 @@ msgstr "" "Entfernt das Element *elem* aus der Menge. Löst einen :exc:`KeyError` aus, " "wenn *elem* nicht in der Menge enthalten ist." -#: ../../library/stdtypes.rst:5294 +#: ../../builtins/stdtypes.rst:5307 msgid "Remove element *elem* from the set if it is present." msgstr "Entfernt das Element *elem* aus der Menge, falls es vorhanden ist." -#: ../../library/stdtypes.rst:5298 +#: ../../builtins/stdtypes.rst:5311 msgid "" "Remove and return an arbitrary element from the set. Raises :exc:`KeyError` " "if the set is empty." @@ -9382,11 +9400,11 @@ msgstr "" "Entfernt ein beliebiges Element aus der Menge und gibt es zurück. Löst " "einen :exc:`KeyError` aus, wenn die Menge leer ist." -#: ../../library/stdtypes.rst:5303 +#: ../../builtins/stdtypes.rst:5316 msgid "Remove all elements from the set." msgstr "Entfernt alle Elemente aus der Menge." -#: ../../library/stdtypes.rst:5306 +#: ../../builtins/stdtypes.rst:5319 msgid "" "Note, the non-operator versions of the :meth:`~set.update`, :meth:`~set." "intersection_update`, :meth:`~set.difference_update`, and :meth:`~set." @@ -9397,7 +9415,7 @@ msgstr "" "und :meth:`~set.symmetric_difference_update` jedes Iterable als Argument " "akzeptieren." -#: ../../library/stdtypes.rst:5311 +#: ../../builtins/stdtypes.rst:5324 msgid "" "Note, the *elem* argument to the :meth:`~object.__contains__`, :meth:`~set." "remove`, and :meth:`~set.discard` methods may be a set. To support " @@ -9409,7 +9427,7 @@ msgstr "" "kann. Um die Suche nach einem äquivalenten Frozenset zu unterstützen, wird " "aus *elem* vorübergehend ein solches erstellt." -#: ../../library/stdtypes.rst:5316 +#: ../../builtins/stdtypes.rst:5329 msgid "" "Sets and frozensets are :ref:`generic ` over the type of their " "elements." @@ -9417,7 +9435,7 @@ msgstr "" "Sets und Frozensets sind über einen Typparameter :ref:`generisch " "`, der den Typ ihrer Elemente angibt." -#: ../../library/stdtypes.rst:5320 +#: ../../builtins/stdtypes.rst:5333 msgid "" "For detailed information on thread-safety guarantees for :class:`set` " "objects, see :ref:`thread-safety-set`." @@ -9425,16 +9443,19 @@ msgstr "" "Detaillierte Informationen zu den Thread-Sicherheitsgarantien für Objekte " "vom Typ :class:`set` findest du unter :ref:`thread-safety-set`." -#: ../../library/stdtypes.rst:5327 +#: ../../builtins/stdtypes.rst:5340 msgid "Mapping types --- :class:`!dict`, :class:`!frozendict`" msgstr "Mapping-Typen – :class:`!dict`, :class:`!frozendict`" -#: ../../library/stdtypes.rst:5337 +#: ../../builtins/stdtypes.rst:5350 +#, fuzzy msgid "" "A :term:`mapping` object maps :term:`hashable` values to arbitrary objects. " "There are currently two standard mapping types, the :dfn:`dictionary` and :" "class:`frozendict`. (For other containers see the built-in :class:`list`, :" -"class:`set`, and :class:`tuple` classes, and the :mod:`collections` module.)" +"class:`set`, and :class:`tuple` classes, and the :mod:`collections` module.) " +"See :ref:`time-complexity` for the costs of the various dictionary " +"operations." msgstr "" "Ein :term:`Mapping `-Objekt bildet :term:`hashbare ` " "Werte auf beliebige Objekte ab. Derzeit gibt es zwei Standard-Mapping-Typen, " @@ -9442,7 +9463,7 @@ msgstr "" "die eingebauten Klassen :class:`list`, :class:`set` und :class:`tuple` sowie " "das Modul :mod:`collections`.)" -#: ../../library/stdtypes.rst:5344 +#: ../../builtins/stdtypes.rst:5359 msgid "" "A dictionary's keys are *almost* arbitrary values. Values that are not :" "term:`hashable`, that is, values containing lists, dictionaries or other " @@ -9458,7 +9479,7 @@ msgstr "" "können austauschbar verwendet werden, um denselben Dictionary-Eintrag zu " "indizieren." -#: ../../library/stdtypes.rst:5355 +#: ../../builtins/stdtypes.rst:5370 msgid "" "Return a new dictionary initialized from an optional positional argument and " "a possibly empty set of keyword arguments." @@ -9467,11 +9488,11 @@ msgstr "" "Positionsargument und einer möglicherweise leeren Menge von Schlüsselwort-" "Argumenten." -#: ../../library/stdtypes.rst:5358 +#: ../../builtins/stdtypes.rst:5373 msgid "Dictionaries can be created by several means:" msgstr "Dictionaries können auf verschiedene Arten erstellt werden:" -#: ../../library/stdtypes.rst:5360 +#: ../../builtins/stdtypes.rst:5375 msgid "" "Use a comma-separated list of ``key: value`` pairs within braces: ``{'jack': " "4098, 'sjoerd': 4127}`` or ``{4098: 'jack', 4127: 'sjoerd'}``" @@ -9480,13 +9501,13 @@ msgstr "" "geschweiften Klammern: ``{'jack': 4098, 'sjoerd': 4127}`` oder ``{4098: " "'jack', 4127: 'sjoerd'}``" -#: ../../library/stdtypes.rst:5362 +#: ../../builtins/stdtypes.rst:5377 msgid "Use a dict comprehension: ``{}``, ``{x: x ** 2 for x in range(10)}``" msgstr "" "Verwendung einer Dict-Comprehension: ``{}``, ``{x: x ** 2 for x in range(10)}" "``" -#: ../../library/stdtypes.rst:5363 +#: ../../builtins/stdtypes.rst:5378 msgid "" "Use the type constructor: ``dict()``, ``dict([('foo', 100), ('bar', " "200)])``, ``dict(foo=100, bar=200)``" @@ -9494,7 +9515,7 @@ msgstr "" "Verwendung des Typ-Konstruktors: ``dict()``, ``dict([('foo', 100), ('bar', " "200)])``, ``dict(foo=100, bar=200)``" -#: ../../library/stdtypes.rst:5366 +#: ../../builtins/stdtypes.rst:5381 msgid "" "If no positional argument is given, an empty dictionary is created. If a " "positional argument is given and it defines a ``keys()`` method, a " @@ -9517,7 +9538,7 @@ msgstr "" "entsprechenden Wert. Wenn ein Schlüssel mehrfach vorkommt, wird der letzte " "Wert für diesen Schlüssel zum entsprechenden Wert im neuen Dictionary." -#: ../../library/stdtypes.rst:5376 +#: ../../builtins/stdtypes.rst:5391 msgid "" "If keyword arguments are given, the keyword arguments and their values are " "added to the dictionary created from the positional argument. If a key " @@ -9529,7 +9550,7 @@ msgstr "" "hinzuzufügender Schlüssel bereits vorhanden ist, ersetzt der Wert aus dem " "Schlüsselwort-Argument den Wert aus dem Positionsargument." -#: ../../library/stdtypes.rst:5381 +#: ../../builtins/stdtypes.rst:5396 msgid "" "Dictionaries compare equal if and only if they have the same ``(key, " "value)`` pairs (regardless of ordering). Order comparisons ('<', '<=', '>=', " @@ -9544,7 +9565,7 @@ msgstr "" "Dictionary zurück, das gleich ``{\"one\": 1, \"two\": 2, \"three\": 3}`` " "ist::" -#: ../../library/stdtypes.rst:5387 +#: ../../builtins/stdtypes.rst:5402 msgid "" ">>> a = dict(one=1, two=2, three=3)\n" ">>> b = {'one': 1, 'two': 2, 'three': 3}\n" @@ -9564,7 +9585,7 @@ msgstr "" ">>> a == b == c == d == e == f\n" "True" -#: ../../library/stdtypes.rst:5396 +#: ../../builtins/stdtypes.rst:5411 msgid "" "Providing keyword arguments as in the first example only works for keys that " "are valid Python identifiers. Otherwise, any valid keys can be used." @@ -9573,7 +9594,7 @@ msgstr "" "funktioniert nur für Schlüssel, die gültige Python-Bezeichner sind. " "Andernfalls können alle gültigen Schlüssel verwendet werden." -#: ../../library/stdtypes.rst:5399 +#: ../../builtins/stdtypes.rst:5414 msgid "" "Dictionaries preserve insertion order. Note that updating a key does not " "affect the order. Keys added after deletion are inserted at the end. ::" @@ -9582,7 +9603,7 @@ msgstr "" "Aktualisieren eines Schlüssels die Reihenfolge nicht beeinflusst. Schlüssel, " "die nach dem Löschen hinzugefügt werden, werden am Ende eingefügt. ::" -#: ../../library/stdtypes.rst:5402 +#: ../../builtins/stdtypes.rst:5417 msgid "" ">>> d = {\"one\": 1, \"two\": 2, \"three\": 3, \"four\": 4}\n" ">>> d\n" @@ -9614,7 +9635,7 @@ msgstr "" ">>> d\n" "{'one': 42, 'three': 3, 'four': 4, 'two': None}" -#: ../../library/stdtypes.rst:5417 +#: ../../builtins/stdtypes.rst:5432 msgid "" "Dictionary order is guaranteed to be insertion order. This behavior was an " "implementation detail of CPython from 3.6." @@ -9622,7 +9643,7 @@ msgstr "" "Die Dictionary-Reihenfolge ist garantiert die Einfügereihenfolge. Dieses " "Verhalten war ab 3.6 ein Implementierungsdetail von CPython." -#: ../../library/stdtypes.rst:5421 +#: ../../builtins/stdtypes.rst:5436 msgid "" "Dictionaries are :ref:`generic ` over two types, signifying " "(respectively) the types of the dictionary's keys and values." @@ -9630,7 +9651,7 @@ msgstr "" "Dictionaries sind über zwei Typparameter :ref:`generisch `, was " "(jeweils) die Typen der Schlüssel und Werte des Dictionarys angeben." -#: ../../library/stdtypes.rst:5424 +#: ../../builtins/stdtypes.rst:5439 msgid "" "These are the operations that dictionaries support (and therefore, custom " "mapping types should support too):" @@ -9638,15 +9659,15 @@ msgstr "" "Dies sind die Operationen, die Dictionaries unterstützen (und die daher auch " "benutzerdefinierte Mapping-Typen unterstützen sollten):" -#: ../../library/stdtypes.rst:5429 +#: ../../builtins/stdtypes.rst:5444 msgid "Return a list of all the keys used in the dictionary *d*." msgstr "Gibt eine Liste aller im Dictionary *d* verwendeten Schlüssel zurück." -#: ../../library/stdtypes.rst:5433 +#: ../../builtins/stdtypes.rst:5448 msgid "Return the number of items in the dictionary *d*." msgstr "Gibt die Anzahl der Elemente im Dictionary *d* zurück." -#: ../../library/stdtypes.rst:5437 +#: ../../builtins/stdtypes.rst:5452 msgid "" "Return the item of *d* with key *key*. Raises a :exc:`KeyError` if *key* is " "not in the map." @@ -9654,7 +9675,7 @@ msgstr "" "Gibt das Element von *d* mit dem Schlüssel *key* zurück. Löst einen :exc:" "`KeyError` aus, wenn *key* nicht in der Map vorhanden ist." -#: ../../library/stdtypes.rst:5442 +#: ../../builtins/stdtypes.rst:5457 msgid "" "If a subclass of dict defines a method :meth:`~object.__missing__` and *key* " "is not present, the ``d[key]`` operation calls that method with the key " @@ -9673,7 +9694,7 @@ msgstr "" "ist, wird ein :exc:`KeyError` ausgelöst. :meth:`~object.__missing__` muss " "eine Methode sein; es kann keine Instanzvariable sein::" -#: ../../library/stdtypes.rst:5450 +#: ../../builtins/stdtypes.rst:5465 msgid "" ">>> class Counter(dict):\n" "... def __missing__(self, key):\n" @@ -9697,7 +9718,7 @@ msgstr "" ">>> c['red']\n" "1" -#: ../../library/stdtypes.rst:5461 +#: ../../builtins/stdtypes.rst:5476 msgid "" "The example above shows part of the implementation of :class:`collections." "Counter`. A different :meth:`!__missing__` method is used by :class:" @@ -9707,11 +9728,11 @@ msgstr "" "`collections.Counter`. Eine andere :meth:`!__missing__`-Methode wird von :" "class:`collections.defaultdict` verwendet." -#: ../../library/stdtypes.rst:5468 +#: ../../builtins/stdtypes.rst:5483 msgid "Set ``d[key]`` to *value*." msgstr "Setzt ``d[key]`` auf *value*." -#: ../../library/stdtypes.rst:5472 +#: ../../builtins/stdtypes.rst:5487 msgid "" "Remove ``d[key]`` from *d*. Raises a :exc:`KeyError` if *key* is not in the " "map." @@ -9719,17 +9740,17 @@ msgstr "" "Entfernt ``d[key]`` aus *d*. Löst einen :exc:`KeyError` aus, wenn *key* " "nicht in der Map vorhanden ist." -#: ../../library/stdtypes.rst:5477 +#: ../../builtins/stdtypes.rst:5492 msgid "Return ``True`` if *d* has a key *key*, else ``False``." msgstr "" "Gibt ``True`` zurück, wenn *d* einen Schlüssel *key* besitzt, andernfalls " "``False``." -#: ../../library/stdtypes.rst:5481 +#: ../../builtins/stdtypes.rst:5496 msgid "Equivalent to ``not key in d``." msgstr "Äquivalent zu ``not key in d``." -#: ../../library/stdtypes.rst:5485 +#: ../../builtins/stdtypes.rst:5500 msgid "" "Return an iterator over the keys of the dictionary. This is a shortcut for " "``iter(d.keys())``." @@ -9737,22 +9758,22 @@ msgstr "" "Gibt einen Iterator über die Schlüssel des Dictionaries zurück. Dies ist " "eine Abkürzung für ``iter(d.keys())``." -#: ../../library/stdtypes.rst:5490 +#: ../../builtins/stdtypes.rst:5505 msgid "Remove all items from the dictionary." msgstr "Entfernt alle Elemente aus dem Dictionary." -#: ../../library/stdtypes.rst:5494 +#: ../../builtins/stdtypes.rst:5509 msgid "Return a shallow copy of the dictionary." msgstr "Gibt eine flache Kopie des Dictionaries zurück." -#: ../../library/stdtypes.rst:5498 +#: ../../builtins/stdtypes.rst:5513 msgid "" "Create a new dictionary with keys from *iterable* and values set to *value*." msgstr "" "Erstellt ein neues Dictionary mit Schlüsseln aus *iterable* und auf *value* " "gesetzten Werten." -#: ../../library/stdtypes.rst:5500 +#: ../../builtins/stdtypes.rst:5515 msgid "" ":meth:`fromkeys` is a class method that returns a new dictionary. *value* " "defaults to ``None``. All of the values refer to just a single instance, so " @@ -9766,7 +9787,7 @@ msgstr "" "ein veränderliches Objekt wie eine leere Liste ist. Um verschiedene Werte zu " "erhalten, verwende stattdessen eine :ref:`Dict-Comprehension `." -#: ../../library/stdtypes.rst:5508 +#: ../../builtins/stdtypes.rst:5523 msgid "" "Return the value for *key* if *key* is in the dictionary, else *default*. If " "*default* is not given, it defaults to ``None``, so that this method never " @@ -9777,7 +9798,7 @@ msgstr "" "Standardwert ``None``, sodass diese Methode niemals einen :exc:`KeyError` " "auslöst." -#: ../../library/stdtypes.rst:5514 +#: ../../builtins/stdtypes.rst:5529 msgid "" "Return a new view of the dictionary's items (``(key, value)`` pairs). See " "the :ref:`documentation of view objects `." @@ -9785,7 +9806,7 @@ msgstr "" "Gibt einen neuen View der Elemente des Dictionaries (``(key, value)``-Paare) " "zurück. Siehe die :ref:`Dokumentation zu View-Objekten `." -#: ../../library/stdtypes.rst:5519 +#: ../../builtins/stdtypes.rst:5534 msgid "" "Return a new view of the dictionary's keys. See the :ref:`documentation of " "view objects `." @@ -9793,7 +9814,7 @@ msgstr "" "Gibt einen neuen View der Schlüssel des Dictionaries zurück. Siehe die :ref:" "`Dokumentation zu View-Objekten `." -#: ../../library/stdtypes.rst:5525 +#: ../../builtins/stdtypes.rst:5540 msgid "" "If *key* is in the dictionary, remove it and return its value, else return " "*default*. If *default* is not given and *key* is not in the dictionary, a :" @@ -9804,7 +9825,7 @@ msgstr "" "und *key* nicht im Dictionary vorhanden ist, wird ein :exc:`KeyError` " "ausgelöst." -#: ../../library/stdtypes.rst:5531 +#: ../../builtins/stdtypes.rst:5546 msgid "" "Remove and return a ``(key, value)`` pair from the dictionary. Pairs are " "returned in :abbr:`LIFO (last-in, first-out)` order." @@ -9812,7 +9833,7 @@ msgstr "" "Entfernt ein ``(key, value)``-Paar aus dem Dictionary und gibt es zurück. " "Paare werden in :abbr:`LIFO (last-in, first-out)`-Reihenfolge zurückgegeben." -#: ../../library/stdtypes.rst:5534 +#: ../../builtins/stdtypes.rst:5549 msgid "" ":meth:`popitem` is useful to destructively iterate over a dictionary, as " "often used in set algorithms. If the dictionary is empty, calling :meth:" @@ -9823,7 +9844,7 @@ msgstr "" "Dictionary leer ist, löst der Aufruf von :meth:`popitem` einen :exc:" "`KeyError` aus." -#: ../../library/stdtypes.rst:5538 +#: ../../builtins/stdtypes.rst:5553 msgid "" "LIFO order is now guaranteed. In prior versions, :meth:`popitem` would " "return an arbitrary key/value pair." @@ -9831,7 +9852,7 @@ msgstr "" "Die LIFO-Reihenfolge ist nun garantiert. In früheren Versionen gab :meth:" "`popitem` ein beliebiges Schlüssel/Wert-Paar zurück." -#: ../../library/stdtypes.rst:5544 +#: ../../builtins/stdtypes.rst:5559 msgid "" "Return a reverse iterator over the keys of the dictionary. This is a " "shortcut for ``reversed(d.keys())``." @@ -9839,7 +9860,7 @@ msgstr "" "Gibt einen umgekehrten Iterator über die Schlüssel des Dictionaries zurück. " "Dies ist eine Abkürzung für ``reversed(d.keys())``." -#: ../../library/stdtypes.rst:5551 +#: ../../builtins/stdtypes.rst:5566 msgid "" "If *key* is in the dictionary, return its value. If not, insert *key* with " "a value of *default* and return *default*. *default* defaults to ``None``." @@ -9848,7 +9869,7 @@ msgstr "" "füge *key* mit einem Wert von *default* ein und gib *default* zurück. " "*default* ist standardmäßig ``None``." -#: ../../library/stdtypes.rst:5559 +#: ../../builtins/stdtypes.rst:5574 msgid "" "Update the dictionary with the key/value pairs from *mapping* or *iterable* " "and *kwargs*, overwriting existing keys. Return ``None``." @@ -9857,7 +9878,7 @@ msgstr "" "*iterable* und *kwargs*, wobei bestehende Schlüssel überschrieben werden. " "Gibt ``None`` zurück." -#: ../../library/stdtypes.rst:5562 +#: ../../builtins/stdtypes.rst:5577 msgid "" ":meth:`update` accepts either another object with a ``keys()`` method (in " "which case :meth:`~object.__getitem__` is called with every key returned " @@ -9872,7 +9893,7 @@ msgstr "" "Schlüsselwort-Argumente angegeben sind, wird das Dictionary mit diesen " "Schlüssel/Wert-Paaren aktualisiert: ``d.update(red=1, blue=2)``." -#: ../../library/stdtypes.rst:5570 +#: ../../builtins/stdtypes.rst:5585 msgid "" "Return a new view of the dictionary's values. See the :ref:`documentation " "of view objects `." @@ -9880,7 +9901,7 @@ msgstr "" "Gibt einen neuen View der Werte des Dictionaries zurück. Siehe die :ref:" "`Dokumentation zu View-Objekten `." -#: ../../library/stdtypes.rst:5573 +#: ../../builtins/stdtypes.rst:5588 msgid "" "An equality comparison between one ``dict.values()`` view and another will " "always return ``False``. This also applies when comparing ``dict.values()`` " @@ -9890,7 +9911,7 @@ msgstr "" "anderen gibt immer ``False`` zurück. Dies gilt auch für den Vergleich von " "``dict.values()`` mit sich selbst::" -#: ../../library/stdtypes.rst:5577 +#: ../../builtins/stdtypes.rst:5592 msgid "" ">>> d = {'a': 1}\n" ">>> d.values() == d.values()\n" @@ -9900,7 +9921,7 @@ msgstr "" ">>> d.values() == d.values()\n" "False" -#: ../../library/stdtypes.rst:5583 +#: ../../builtins/stdtypes.rst:5598 msgid "" "Create a new dictionary with the merged keys and values of *d* and *other*, " "which must both be dictionaries. The values of *other* take priority when " @@ -9911,7 +9932,7 @@ msgstr "" "von *other* haben Vorrang, wenn *d* und *other* gemeinsame Schlüssel " "besitzen." -#: ../../library/stdtypes.rst:5591 +#: ../../builtins/stdtypes.rst:5606 msgid "" "Update the dictionary *d* with keys and values from *other*, which may be " "either a :term:`mapping` or an :term:`iterable` of key/value pairs. The " @@ -9922,11 +9943,11 @@ msgstr "" "` von Schlüssel/Wert-Paaren sein kann. Die Werte von *other* haben " "Vorrang, wenn *d* und *other* gemeinsame Schlüssel besitzen." -#: ../../library/stdtypes.rst:5597 +#: ../../builtins/stdtypes.rst:5612 msgid "Dictionaries and dictionary views are reversible. ::" msgstr "Dictionaries und Dictionary-Views sind umkehrbar (reversible). ::" -#: ../../library/stdtypes.rst:5599 +#: ../../builtins/stdtypes.rst:5614 msgid "" ">>> d = {\"one\": 1, \"two\": 2, \"three\": 3, \"four\": 4}\n" ">>> d\n" @@ -9948,11 +9969,11 @@ msgstr "" ">>> list(reversed(d.items()))\n" "[('four', 4), ('three', 3), ('two', 2), ('one', 1)]" -#: ../../library/stdtypes.rst:5609 +#: ../../builtins/stdtypes.rst:5624 msgid "Dictionaries are now reversible." msgstr "Dictionaries sind nun umkehrbar." -#: ../../library/stdtypes.rst:5614 +#: ../../builtins/stdtypes.rst:5629 msgid "" ":class:`frozendict` and :class:`types.MappingProxyType` can be used to " "create a read-only view of a :class:`dict`." @@ -9960,7 +9981,7 @@ msgstr "" "Mit :class:`frozendict` und :class:`types.MappingProxyType` kann ein " "schreibgeschützter View eines :class:`dict` erstellt werden." -#: ../../library/stdtypes.rst:5619 +#: ../../builtins/stdtypes.rst:5634 msgid "" "For detailed information on thread-safety guarantees for :class:`dict` " "objects, see :ref:`thread-safety-dict`." @@ -9968,11 +9989,11 @@ msgstr "" "Detaillierte Informationen zu den Thread-Sicherheitsgarantien für Objekte " "vom Typ :class:`dict` findest du unter :ref:`thread-safety-dict`." -#: ../../library/stdtypes.rst:5626 +#: ../../builtins/stdtypes.rst:5641 msgid "Dictionary view objects" msgstr "Dictionary-View-Objekte" -#: ../../library/stdtypes.rst:5628 +#: ../../builtins/stdtypes.rst:5643 msgid "" "The objects returned by :meth:`dict.keys`, :meth:`dict.values` and :meth:" "`dict.items` are *view objects*. They provide a dynamic view on the " @@ -9984,7 +10005,7 @@ msgstr "" "View auf die Einträge des Dictionaries, was bedeutet, dass der View " "Änderungen am Dictionary widerspiegelt." -#: ../../library/stdtypes.rst:5633 +#: ../../builtins/stdtypes.rst:5648 msgid "" "Dictionary views can be iterated over to yield their respective data, and " "support membership tests:" @@ -9992,11 +10013,11 @@ msgstr "" "Über Dictionary-Views kann iteriert werden, um ihre jeweiligen Daten " "abzurufen, und sie unterstützen Mitgliedschaftstests:" -#: ../../library/stdtypes.rst:5638 +#: ../../builtins/stdtypes.rst:5653 msgid "Return the number of entries in the dictionary." msgstr "Gibt die Anzahl der Einträge im Dictionary zurück." -#: ../../library/stdtypes.rst:5642 +#: ../../builtins/stdtypes.rst:5657 msgid "" "Return an iterator over the keys, values or items (represented as tuples of " "``(key, value)``) in the dictionary." @@ -10004,7 +10025,7 @@ msgstr "" "Gibt einen Iterator über die Schlüssel, Werte oder Elemente (dargestellt als " "Tupel von ``(key, value)``) im Dictionary zurück." -#: ../../library/stdtypes.rst:5645 +#: ../../builtins/stdtypes.rst:5660 msgid "" "Keys and values are iterated over in insertion order. This allows the " "creation of ``(value, key)`` pairs using :func:`zip`: ``pairs = zip(d." @@ -10016,7 +10037,7 @@ msgstr "" "``pairs = zip(d.values(), d.keys())``. Eine andere Möglichkeit, dieselbe " "Liste zu erstellen, ist ``pairs = [(v, k) for (k, v) in d.items()]``." -#: ../../library/stdtypes.rst:5650 +#: ../../builtins/stdtypes.rst:5665 msgid "" "Iterating views while adding or deleting entries in the dictionary may raise " "a :exc:`RuntimeError` or fail to iterate over all entries." @@ -10025,11 +10046,11 @@ msgstr "" "gelöscht werden, kann einen :exc:`RuntimeError` auslösen oder dazu führen, " "dass nicht alle Einträge durchlaufen werden." -#: ../../library/stdtypes.rst:5653 +#: ../../builtins/stdtypes.rst:5668 msgid "Dictionary order is guaranteed to be insertion order." msgstr "Die Dictionary-Reihenfolge ist garantiert die Einfügereihenfolge." -#: ../../library/stdtypes.rst:5658 +#: ../../builtins/stdtypes.rst:5673 msgid "" "Return ``True`` if *x* is in the underlying dictionary's keys, values or " "items (in the latter case, *x* should be a ``(key, value)`` tuple)." @@ -10038,7 +10059,7 @@ msgstr "" "zugrunde liegenden Dictionaries enthalten ist (im letzteren Fall sollte *x* " "ein ``(key, value)``-Tupel sein)." -#: ../../library/stdtypes.rst:5663 +#: ../../builtins/stdtypes.rst:5678 msgid "" "Return a reverse iterator over the keys, values or items of the dictionary. " "The view will be iterated in reverse order of the insertion." @@ -10047,11 +10068,11 @@ msgstr "" "Dictionaries zurück. Der View wird in umgekehrter Reihenfolge der Einfügung " "durchlaufen." -#: ../../library/stdtypes.rst:5666 +#: ../../builtins/stdtypes.rst:5681 msgid "Dictionary views are now reversible." msgstr "Dictionary-Views sind nun umkehrbar." -#: ../../library/stdtypes.rst:5671 +#: ../../builtins/stdtypes.rst:5686 msgid "" "Return a :class:`types.MappingProxyType` that wraps the original dictionary " "to which the view refers." @@ -10059,7 +10080,7 @@ msgstr "" "Gibt einen :class:`types.MappingProxyType` zurück, der das ursprüngliche " "Dictionary umhüllt, auf das sich der View bezieht." -#: ../../library/stdtypes.rst:5676 +#: ../../builtins/stdtypes.rst:5691 msgid "" "Keys views are set-like since their entries are unique and :term:`hashable`. " "Items views also have set-like operations since the (key, value) pairs are " @@ -10084,11 +10105,11 @@ msgstr "" "akzeptieren mengenartige Views jedes Iterable als weiteren Operanden, im " "Gegensatz zu Mengen, die nur Mengen als Eingabe akzeptieren." -#: ../../library/stdtypes.rst:5688 +#: ../../builtins/stdtypes.rst:5703 msgid "An example of dictionary view usage::" msgstr "Ein Beispiel für die Verwendung von Dictionary-Views::" -#: ../../library/stdtypes.rst:5690 +#: ../../builtins/stdtypes.rst:5705 msgid "" ">>> dishes = {'eggs': 2, 'sausage': 1, 'bacon': 1, 'spam': 500}\n" ">>> keys = dishes.keys()\n" @@ -10166,11 +10187,11 @@ msgstr "" ">>> values.mapping['spam']\n" "500" -#: ../../library/stdtypes.rst:5730 +#: ../../builtins/stdtypes.rst:5745 msgid "Frozen dictionaries" msgstr "Eingefrorene Dictionaries" -#: ../../library/stdtypes.rst:5736 +#: ../../builtins/stdtypes.rst:5751 msgid "" "Return a new frozen dictionary initialized from an optional positional " "argument and a possibly empty set of keyword arguments." @@ -10179,7 +10200,7 @@ msgstr "" "optionalen Positionsargument und einer möglicherweise leeren Menge von " "Schlüsselwort-Argumenten." -#: ../../library/stdtypes.rst:5739 +#: ../../builtins/stdtypes.rst:5754 msgid "" "A :class:`!frozendict` has a similar API to the :class:`dict` API, with the " "following differences:" @@ -10187,39 +10208,39 @@ msgstr "" "Ein :class:`!frozendict` hat eine ähnliche API wie :class:`dict`, mit den " "folgenden Unterschieden:" -#: ../../library/stdtypes.rst:5742 +#: ../../builtins/stdtypes.rst:5757 msgid ":class:`!dict` has more methods than :class:`!frozendict`:" msgstr ":class:`!dict` hat mehr Methoden als :class:`!frozendict`:" -#: ../../library/stdtypes.rst:5744 +#: ../../builtins/stdtypes.rst:5759 msgid ":meth:`!__delitem__`" msgstr ":meth:`!__delitem__`" -#: ../../library/stdtypes.rst:5745 +#: ../../builtins/stdtypes.rst:5760 msgid ":meth:`!__setitem__`" msgstr ":meth:`!__setitem__`" -#: ../../library/stdtypes.rst:5746 +#: ../../builtins/stdtypes.rst:5761 msgid ":meth:`~dict.clear`" msgstr ":meth:`~dict.clear`" -#: ../../library/stdtypes.rst:5747 +#: ../../builtins/stdtypes.rst:5762 msgid ":meth:`~dict.pop`" msgstr ":meth:`~dict.pop`" -#: ../../library/stdtypes.rst:5748 +#: ../../builtins/stdtypes.rst:5763 msgid ":meth:`~dict.popitem`" msgstr ":meth:`~dict.popitem`" -#: ../../library/stdtypes.rst:5749 +#: ../../builtins/stdtypes.rst:5764 msgid ":meth:`~dict.setdefault`" msgstr ":meth:`~dict.setdefault`" -#: ../../library/stdtypes.rst:5750 +#: ../../builtins/stdtypes.rst:5765 msgid ":meth:`~dict.update`" msgstr ":meth:`~dict.update`" -#: ../../library/stdtypes.rst:5752 +#: ../../builtins/stdtypes.rst:5767 msgid "" "A :class:`!frozendict` can be hashed with ``hash(frozendict)`` if all keys " "and values can be hashed." @@ -10227,7 +10248,7 @@ msgstr "" "Ein :class:`!frozendict` kann mit ``hash(frozendict)`` gehasht werden, wenn " "alle Schlüssel und Werte hashbar sind." -#: ../../library/stdtypes.rst:5755 +#: ../../builtins/stdtypes.rst:5770 msgid "" "``frozendict |= other`` does not modify the :class:`!frozendict` in-place " "but creates a new frozen dictionary." @@ -10235,7 +10256,7 @@ msgstr "" "``frozendict |= other`` verändert das :class:`!frozendict` nicht direkt an " "Ort und Stelle, sondern erstellt ein neues unveränderliches Dictionary." -#: ../../library/stdtypes.rst:5758 +#: ../../builtins/stdtypes.rst:5773 msgid "" ":class:`!frozendict` is not a :class:`!dict` subclass but inherits directly " "from ``object``." @@ -10243,7 +10264,7 @@ msgstr "" ":class:`!frozendict` ist keine Unterklasse von :class:`!dict`, sondern erbt " "direkt von ``object``." -#: ../../library/stdtypes.rst:5761 +#: ../../builtins/stdtypes.rst:5776 msgid "" "Like dictionaries, frozendicts are :ref:`generic ` over two types, " "signifying (respectively) the types of the frozendict's keys and values." @@ -10252,7 +10273,7 @@ msgstr "" "`generisch `, die (jeweils) die Typen der Schlüssel und Werte des " "Frozendicts angeben." -#: ../../library/stdtypes.rst:5766 +#: ../../builtins/stdtypes.rst:5781 msgid "" "Similar to :meth:`dict.fromkeys`, but call again the type constructor with " "an initialized :class:`frozendict` if the type is a :class:`frozendict` " @@ -10263,11 +10284,11 @@ msgstr "" "Unterklasse von :class:`frozendict` ist oder falls der Konstruktor ein :" "class:`frozendict` zurückgegeben hat." -#: ../../library/stdtypes.rst:5777 +#: ../../builtins/stdtypes.rst:5792 msgid "Context Manager Types" msgstr "Kontext-Manager-Typen" -#: ../../library/stdtypes.rst:5784 +#: ../../builtins/stdtypes.rst:5799 msgid "" "Python's :keyword:`with` statement supports the concept of a runtime context " "defined by a context manager. This is implemented using a pair of methods " @@ -10281,7 +10302,7 @@ msgstr "" "Ausführung des Anweisungskörpers betreten und beim Beenden der Anweisung " "verlassen wird:" -#: ../../library/stdtypes.rst:5792 +#: ../../builtins/stdtypes.rst:5807 msgid "" "Enter the runtime context and return either this object or another object " "related to the runtime context. The value returned by this method is bound " @@ -10294,7 +10315,7 @@ msgstr "" "Klausel von :keyword:`with`-Anweisungen gebunden, die diesen Kontext-Manager " "verwenden." -#: ../../library/stdtypes.rst:5797 +#: ../../builtins/stdtypes.rst:5812 msgid "" "An example of a context manager that returns itself is a :term:`file " "object`. File objects return themselves from __enter__() to allow :func:" @@ -10305,7 +10326,7 @@ msgstr "" "__enter__() zurück, damit :func:`open` als Kontextausdruck in einer :keyword:" "`with`-Anweisung verwendet werden kann." -#: ../../library/stdtypes.rst:5801 +#: ../../builtins/stdtypes.rst:5816 msgid "" "An example of a context manager that returns a related object is the one " "returned by :func:`decimal.localcontext`. These managers set the active " @@ -10321,7 +10342,7 @@ msgstr "" "am aktuellen Dezimalkontext im Körper der :keyword:`with`-Anweisung, ohne " "Code außerhalb der :keyword:`!with`-Anweisung zu beeinflussen." -#: ../../library/stdtypes.rst:5811 +#: ../../builtins/stdtypes.rst:5826 msgid "" "Exit the runtime context and return a Boolean flag indicating if any " "exception that occurred should be suppressed. If an exception occurred while " @@ -10335,7 +10356,7 @@ msgstr "" "aufgetreten ist, enthalten die Argumente den Ausnahmetyp, den Wert und " "Traceback-Informationen. Andernfalls sind alle drei Argumente ``None``." -#: ../../library/stdtypes.rst:5816 +#: ../../builtins/stdtypes.rst:5831 msgid "" "Returning a true value from this method will cause the :keyword:`with` " "statement to suppress the exception and continue execution with the " @@ -10348,7 +10369,7 @@ msgstr "" "Andernfalls wird die Ausnahme nach Beendigung dieser Methode weiter " "propagiert." -#: ../../library/stdtypes.rst:5821 +#: ../../builtins/stdtypes.rst:5836 msgid "" "If this method raises an exception while handling an earlier exception from " "the :keyword:`with` block, the new exception is raised, and the original " @@ -10359,7 +10380,7 @@ msgstr "" "weitergegeben, und die ursprüngliche Ausnahme wird in ihrem Attribut :attr:" "`~BaseException.__context__` gespeichert." -#: ../../library/stdtypes.rst:5825 +#: ../../builtins/stdtypes.rst:5840 msgid "" "The exception passed in should never be reraised explicitly - instead, this " "method should return a false value to indicate that the method completed " @@ -10374,7 +10395,7 @@ msgstr "" "Kontextmanagement-Code, leicht zu erkennen, ob eine :meth:`~object.__exit__`-" "Methode tatsächlich fehlgeschlagen ist oder nicht." -#: ../../library/stdtypes.rst:5831 +#: ../../builtins/stdtypes.rst:5846 msgid "" "Python defines several context managers to support easy thread " "synchronisation, prompt closure of files or other objects, and simpler " @@ -10389,7 +10410,7 @@ msgstr "" "Kontextmanagement-Protokolls hinaus nicht besonders behandelt. Siehe das " "Modul :mod:`contextlib` für einige Beispiele." -#: ../../library/stdtypes.rst:5837 +#: ../../builtins/stdtypes.rst:5852 msgid "" "Python's :term:`generator`\\s and the :class:`contextlib.contextmanager` " "decorator provide a convenient way to implement these protocols. If a " @@ -10406,7 +10427,7 @@ msgstr "" "meth:`~contextmanager.__exit__` implementiert, anstelle des Iterators, der " "von einer undekorierten Generatorfunktion erzeugt wird." -#: ../../library/stdtypes.rst:5844 +#: ../../builtins/stdtypes.rst:5859 msgid "" "Note that there is no specific slot for any of these methods in the type " "structure for Python objects in the Python/C API. Extension types wanting to " @@ -10421,7 +10442,7 @@ msgstr "" "des Laufzeitkontexts ist der Overhead eines einzelnen Class-Dictionary-" "Lookups zu vernachlässigen." -#: ../../library/stdtypes.rst:5852 +#: ../../builtins/stdtypes.rst:5867 msgid "" "Type Annotation Types --- :ref:`Generic Alias `, :ref:" "`Union `" @@ -10429,7 +10450,7 @@ msgstr "" "Typ-Annotations-Typen – :ref:`Generic Alias `, :ref:" "`Union `" -#: ../../library/stdtypes.rst:5857 +#: ../../builtins/stdtypes.rst:5872 msgid "" "The core built-in types for :term:`type annotations ` are :ref:" "`Generic Alias ` and :ref:`Union `." @@ -10438,11 +10459,11 @@ msgstr "" "sind :ref:`Generic Alias ` und :ref:`Union `." -#: ../../library/stdtypes.rst:5864 +#: ../../builtins/stdtypes.rst:5879 msgid "Generic Alias Type" msgstr "Generic-Alias-Typ" -#: ../../library/stdtypes.rst:5870 +#: ../../builtins/stdtypes.rst:5885 msgid "" "``GenericAlias`` objects are generally created by :ref:`subscripting " "` a class. They are most often used with :ref:`container " @@ -10459,7 +10480,7 @@ msgstr "" "erstellt wird. ``GenericAlias``-Objekte sind in erster Linie für die " "Verwendung mit :term:`Typ-Annotationen ` vorgesehen." -#: ../../library/stdtypes.rst:5880 +#: ../../builtins/stdtypes.rst:5895 msgid "" "It is generally only possible to subscript a class if the class implements " "the special method :meth:`~object.__class_getitem__`." @@ -10467,7 +10488,7 @@ msgstr "" "Das Subskribieren einer Klasse ist im Allgemeinen nur möglich, wenn die " "Klasse die spezielle Methode :meth:`~object.__class_getitem__` implementiert." -#: ../../library/stdtypes.rst:5883 +#: ../../builtins/stdtypes.rst:5898 msgid "" "A ``GenericAlias`` object acts as a proxy for a :term:`generic type`, " "implementing *parameterized generics*." @@ -10475,7 +10496,7 @@ msgstr "" "Ein ``GenericAlias``-Objekt fungiert als Proxy für einen :term:`generischen " "Typ ` und implementiert *parametrisierte Generics*." -#: ../../library/stdtypes.rst:5886 +#: ../../builtins/stdtypes.rst:5901 msgid "" "For a container class, the argument(s) supplied to a :ref:`subscription " "` of the class may indicate the type(s) of the elements an " @@ -10489,7 +10510,7 @@ msgstr "" "``set[bytes]`` in Typ-Annotationen verwendet werden, um ein :class:`set` zu " "kennzeichnen, in dem alle Elemente vom Typ :class:`bytes` sind." -#: ../../library/stdtypes.rst:5892 +#: ../../builtins/stdtypes.rst:5907 msgid "" "For a class which defines :meth:`~object.__class_getitem__` but is not a " "container, the argument(s) supplied to a subscription of the class will " @@ -10504,7 +10525,7 @@ msgstr "" "den Datentyp :class:`str` als auch auf den Datentyp :class:`bytes` " "angewendet werden:" -#: ../../library/stdtypes.rst:5898 +#: ../../builtins/stdtypes.rst:5913 msgid "" "If ``x = re.search('foo', 'foo')``, ``x`` will be a :ref:`re.Match ` object where the return values of ``x.group(0)`` and ``x[0]`` will " @@ -10516,7 +10537,7 @@ msgstr "" "``x[0]`` beide vom Typ :class:`str` sind. Wir können diese Art von Objekt in " "Typ-Annotationen mit dem ``GenericAlias`` ``re.Match[str]`` darstellen." -#: ../../library/stdtypes.rst:5904 +#: ../../builtins/stdtypes.rst:5919 msgid "" "If ``y = re.search(b'bar', b'bar')``, (note the ``b`` for :class:`bytes`), " "``y`` will also be an instance of ``re.Match``, but the return values of ``y." @@ -10530,7 +10551,7 @@ msgstr "" "class:`bytes`. In Typ-Annotationen würden wir diese Variante von :ref:`re." "Match `-Objekten mit ``re.Match[bytes]`` darstellen." -#: ../../library/stdtypes.rst:5910 +#: ../../builtins/stdtypes.rst:5925 msgid "" "``GenericAlias`` objects are instances of the class :class:`types." "GenericAlias`, which can also be used to create ``GenericAlias`` objects " @@ -10544,7 +10565,7 @@ msgstr "" "` sind möglicherweise keine Instanzen von :class:`types." "GenericAlias`, bieten aber ähnliche Funktionalität." -#: ../../library/stdtypes.rst:5917 +#: ../../builtins/stdtypes.rst:5932 msgid "" "Creates a ``GenericAlias`` representing a type ``T`` parameterized by types " "*X*, *Y*, and more depending on the ``T`` used. For example, a function " @@ -10555,7 +10576,7 @@ msgstr "" "Beispielsweise eine Funktion, die eine :class:`list` mit :class:`float`-" "Elementen erwartet::" -#: ../../library/stdtypes.rst:5922 +#: ../../builtins/stdtypes.rst:5937 msgid "" "def average(values: list[float]) -> float:\n" " return sum(values) / len(values)" @@ -10563,7 +10584,7 @@ msgstr "" "def average(values: list[float]) -> float:\n" " return sum(values) / len(values)" -#: ../../library/stdtypes.rst:5925 +#: ../../builtins/stdtypes.rst:5940 msgid "" "Another example for :term:`mapping` objects, using a :class:`dict`, which is " "a generic type expecting two type parameters representing the key type and " @@ -10576,7 +10597,7 @@ msgstr "" "die Funktion ein ``dict`` mit Schlüsseln vom Typ :class:`str` und Werten vom " "Typ :class:`int`::" -#: ../../library/stdtypes.rst:5930 +#: ../../builtins/stdtypes.rst:5945 msgid "" "def send_post_request(url: str, body: dict[str, int]) -> None:\n" " ..." @@ -10584,7 +10605,7 @@ msgstr "" "def send_post_request(url: str, body: dict[str, int]) -> None:\n" " ..." -#: ../../library/stdtypes.rst:5933 +#: ../../builtins/stdtypes.rst:5948 msgid "" "The builtin functions :func:`isinstance` and :func:`issubclass` do not " "accept ``GenericAlias`` types for their second argument::" @@ -10592,7 +10613,7 @@ msgstr "" "Die eingebauten Funktionen :func:`isinstance` und :func:`issubclass` " "akzeptieren keine ``GenericAlias``-Typen als zweites Argument::" -#: ../../library/stdtypes.rst:5936 +#: ../../builtins/stdtypes.rst:5951 msgid "" ">>> isinstance([1, 2], list[str])\n" "Traceback (most recent call last):\n" @@ -10604,7 +10625,7 @@ msgstr "" " File \"\", line 1, in \n" "TypeError: isinstance() argument 2 cannot be a parameterized generic" -#: ../../library/stdtypes.rst:5941 +#: ../../builtins/stdtypes.rst:5956 msgid "" "The Python runtime does not enforce :term:`type annotations `. " "This extends to generic types and their type parameters. When creating a " @@ -10619,7 +10640,7 @@ msgstr "" "überprüft. Der folgende Code wird beispielsweise nicht empfohlen, läuft aber " "fehlerfrei durch::" -#: ../../library/stdtypes.rst:5947 +#: ../../builtins/stdtypes.rst:5962 msgid "" ">>> t = list[str]\n" ">>> t([1, 2, 3])\n" @@ -10629,7 +10650,7 @@ msgstr "" ">>> t([1, 2, 3])\n" "[1, 2, 3]" -#: ../../library/stdtypes.rst:5951 +#: ../../builtins/stdtypes.rst:5966 msgid "" "Furthermore, parameterized generics erase type parameters during object " "creation::" @@ -10637,7 +10658,7 @@ msgstr "" "Darüber hinaus löschen parametrisierte Generics Typparameter während der " "Objekterstellung (Type Erasure)::" -#: ../../library/stdtypes.rst:5954 +#: ../../builtins/stdtypes.rst:5969 msgid "" ">>> t = list[str]\n" ">>> type(t)\n" @@ -10655,7 +10676,7 @@ msgstr "" ">>> type(l)\n" "" -#: ../../library/stdtypes.rst:5963 +#: ../../builtins/stdtypes.rst:5978 msgid "" "Instances of ``GenericAlias`` are not classes at runtime, even though they " "behave like classes (they can be instantiated and subclassed)::" @@ -10664,7 +10685,7 @@ msgstr "" "sie sich wie Klassen verhalten (sie können instanziiert und abgeleitet " "werden)::" -#: ../../library/stdtypes.rst:5965 +#: ../../builtins/stdtypes.rst:5980 msgid "" ">>> import inspect\n" ">>> inspect.isclass(list[int])\n" @@ -10674,14 +10695,14 @@ msgstr "" ">>> inspect.isclass(list[int])\n" "False" -#: ../../library/stdtypes.rst:5969 +#: ../../builtins/stdtypes.rst:5984 msgid "" "This is true for :ref:`user-defined generics ` also." msgstr "" "Dies gilt auch für :ref:`benutzerdefinierte Generics `." -#: ../../library/stdtypes.rst:5971 +#: ../../builtins/stdtypes.rst:5986 msgid "" "Calling :func:`repr` or :func:`str` on a generic shows the parameterized " "type::" @@ -10689,7 +10710,7 @@ msgstr "" "Der Aufruf von :func:`repr` oder :func:`str` auf einem Generic zeigt den " "parametrisierten Typ::" -#: ../../library/stdtypes.rst:5973 +#: ../../builtins/stdtypes.rst:5988 msgid "" ">>> repr(list[int])\n" "'list[int]'\n" @@ -10703,7 +10724,7 @@ msgstr "" ">>> str(list[int])\n" "'list[int]'" -#: ../../library/stdtypes.rst:5979 +#: ../../builtins/stdtypes.rst:5994 msgid "" "The :meth:`~object.__getitem__` method of generic containers will raise an " "exception to disallow mistakes like ``dict[str][str]``::" @@ -10711,7 +10732,7 @@ msgstr "" "Die Methode :meth:`~object.__getitem__` generischer Container löst eine " "Ausnahme aus, um Fehler wie ``dict[str][str]`` zu verhindern::" -#: ../../library/stdtypes.rst:5982 +#: ../../builtins/stdtypes.rst:5997 msgid "" ">>> dict[str][str]\n" "Traceback (most recent call last):\n" @@ -10723,7 +10744,7 @@ msgstr "" " ...\n" "TypeError: dict[str] is not a generic class" -#: ../../library/stdtypes.rst:5987 +#: ../../builtins/stdtypes.rst:6002 msgid "" "However, such expressions are valid when :ref:`type variables ` " "are used. The index must have as many elements as there are type variable " @@ -10734,7 +10755,7 @@ msgstr "" "Typvariablen-Einträge in :attr:`~genericalias.__args__` des ``GenericAlias``-" "Objekts gibt. ::" -#: ../../library/stdtypes.rst:5991 +#: ../../builtins/stdtypes.rst:6006 msgid "" ">>> from typing import TypeVar\n" ">>> Y = TypeVar('Y')\n" @@ -10746,11 +10767,11 @@ msgstr "" ">>> dict[str, Y][int]\n" "dict[str, int]" -#: ../../library/stdtypes.rst:5998 +#: ../../builtins/stdtypes.rst:6013 msgid "Standard Generic Classes" msgstr "Standard-Generische Klassen" -#: ../../library/stdtypes.rst:6000 +#: ../../builtins/stdtypes.rst:6015 msgid "" "The following standard library classes support parameterized generics. This " "list is non-exhaustive." @@ -10758,250 +10779,250 @@ msgstr "" "Die folgenden Klassen der Standardbibliothek unterstützen parametrisierte " "Generics. Diese Liste ist nicht vollständig." -#: ../../library/stdtypes.rst:6003 +#: ../../builtins/stdtypes.rst:6018 msgid ":class:`tuple`" msgstr ":class:`tuple`" -#: ../../library/stdtypes.rst:6004 +#: ../../builtins/stdtypes.rst:6019 msgid ":class:`list`" msgstr ":class:`list`" -#: ../../library/stdtypes.rst:6005 +#: ../../builtins/stdtypes.rst:6020 msgid ":class:`dict`" msgstr ":class:`dict`" -#: ../../library/stdtypes.rst:6006 +#: ../../builtins/stdtypes.rst:6021 msgid ":class:`set`" msgstr ":class:`set`" -#: ../../library/stdtypes.rst:6007 +#: ../../builtins/stdtypes.rst:6022 msgid ":class:`frozendict`" msgstr ":class:`frozendict`" -#: ../../library/stdtypes.rst:6008 +#: ../../builtins/stdtypes.rst:6023 msgid ":class:`frozenset`" msgstr ":class:`frozenset`" -#: ../../library/stdtypes.rst:6009 +#: ../../builtins/stdtypes.rst:6024 msgid ":class:`type`" msgstr ":class:`type`" -#: ../../library/stdtypes.rst:6010 +#: ../../builtins/stdtypes.rst:6025 msgid ":class:`asyncio.Future`" msgstr ":class:`asyncio.Future`" -#: ../../library/stdtypes.rst:6011 +#: ../../builtins/stdtypes.rst:6026 msgid ":class:`asyncio.Task`" msgstr ":class:`asyncio.Task`" -#: ../../library/stdtypes.rst:6012 +#: ../../builtins/stdtypes.rst:6027 msgid ":class:`collections.deque`" msgstr ":class:`collections.deque`" -#: ../../library/stdtypes.rst:6013 +#: ../../builtins/stdtypes.rst:6028 msgid ":class:`collections.defaultdict`" msgstr ":class:`collections.defaultdict`" -#: ../../library/stdtypes.rst:6014 +#: ../../builtins/stdtypes.rst:6029 msgid ":class:`collections.OrderedDict`" msgstr ":class:`collections.OrderedDict`" -#: ../../library/stdtypes.rst:6015 +#: ../../builtins/stdtypes.rst:6030 msgid ":class:`collections.Counter`" msgstr ":class:`collections.Counter`" -#: ../../library/stdtypes.rst:6016 +#: ../../builtins/stdtypes.rst:6031 msgid ":class:`collections.ChainMap`" msgstr ":class:`collections.ChainMap`" -#: ../../library/stdtypes.rst:6017 +#: ../../builtins/stdtypes.rst:6032 msgid ":class:`collections.abc.Awaitable`" msgstr ":class:`collections.abc.Awaitable`" -#: ../../library/stdtypes.rst:6018 +#: ../../builtins/stdtypes.rst:6033 msgid ":class:`collections.abc.Coroutine`" msgstr ":class:`collections.abc.Coroutine`" -#: ../../library/stdtypes.rst:6019 +#: ../../builtins/stdtypes.rst:6034 msgid ":class:`collections.abc.AsyncIterable`" msgstr ":class:`collections.abc.AsyncIterable`" -#: ../../library/stdtypes.rst:6020 +#: ../../builtins/stdtypes.rst:6035 msgid ":class:`collections.abc.AsyncIterator`" msgstr ":class:`collections.abc.AsyncIterator`" -#: ../../library/stdtypes.rst:6021 +#: ../../builtins/stdtypes.rst:6036 msgid ":class:`collections.abc.AsyncGenerator`" msgstr ":class:`collections.abc.AsyncGenerator`" -#: ../../library/stdtypes.rst:6022 +#: ../../builtins/stdtypes.rst:6037 msgid ":class:`collections.abc.Iterable`" msgstr ":class:`collections.abc.Iterable`" -#: ../../library/stdtypes.rst:6023 +#: ../../builtins/stdtypes.rst:6038 msgid ":class:`collections.abc.Iterator`" msgstr ":class:`collections.abc.Iterator`" -#: ../../library/stdtypes.rst:6024 +#: ../../builtins/stdtypes.rst:6039 msgid ":class:`collections.abc.Generator`" msgstr ":class:`collections.abc.Generator`" -#: ../../library/stdtypes.rst:6025 +#: ../../builtins/stdtypes.rst:6040 msgid ":class:`collections.abc.Reversible`" msgstr ":class:`collections.abc.Reversible`" -#: ../../library/stdtypes.rst:6026 +#: ../../builtins/stdtypes.rst:6041 msgid ":class:`collections.abc.Container`" msgstr ":class:`collections.abc.Container`" -#: ../../library/stdtypes.rst:6027 +#: ../../builtins/stdtypes.rst:6042 msgid ":class:`collections.abc.Collection`" msgstr ":class:`collections.abc.Collection`" -#: ../../library/stdtypes.rst:6028 +#: ../../builtins/stdtypes.rst:6043 msgid ":class:`collections.abc.Callable`" msgstr ":class:`collections.abc.Callable`" -#: ../../library/stdtypes.rst:6029 +#: ../../builtins/stdtypes.rst:6044 msgid ":class:`collections.abc.Set`" msgstr ":class:`collections.abc.Set`" -#: ../../library/stdtypes.rst:6030 +#: ../../builtins/stdtypes.rst:6045 msgid ":class:`collections.abc.MutableSet`" msgstr ":class:`collections.abc.MutableSet`" -#: ../../library/stdtypes.rst:6031 +#: ../../builtins/stdtypes.rst:6046 msgid ":class:`collections.abc.Mapping`" msgstr ":class:`collections.abc.Mapping`" -#: ../../library/stdtypes.rst:6032 +#: ../../builtins/stdtypes.rst:6047 msgid ":class:`collections.abc.MutableMapping`" msgstr ":class:`collections.abc.MutableMapping`" -#: ../../library/stdtypes.rst:6033 +#: ../../builtins/stdtypes.rst:6048 msgid ":class:`collections.abc.Sequence`" msgstr ":class:`collections.abc.Sequence`" -#: ../../library/stdtypes.rst:6034 +#: ../../builtins/stdtypes.rst:6049 msgid ":class:`collections.abc.MutableSequence`" msgstr ":class:`collections.abc.MutableSequence`" -#: ../../library/stdtypes.rst:6035 +#: ../../builtins/stdtypes.rst:6050 msgid ":class:`collections.abc.ByteString`" msgstr ":class:`collections.abc.ByteString`" -#: ../../library/stdtypes.rst:6036 +#: ../../builtins/stdtypes.rst:6051 msgid ":class:`collections.abc.MappingView`" msgstr ":class:`collections.abc.MappingView`" -#: ../../library/stdtypes.rst:6037 +#: ../../builtins/stdtypes.rst:6052 msgid ":class:`collections.abc.KeysView`" msgstr ":class:`collections.abc.KeysView`" -#: ../../library/stdtypes.rst:6038 +#: ../../builtins/stdtypes.rst:6053 msgid ":class:`collections.abc.ItemsView`" msgstr ":class:`collections.abc.ItemsView`" -#: ../../library/stdtypes.rst:6039 +#: ../../builtins/stdtypes.rst:6054 msgid ":class:`collections.abc.ValuesView`" msgstr ":class:`collections.abc.ValuesView`" -#: ../../library/stdtypes.rst:6040 +#: ../../builtins/stdtypes.rst:6055 msgid ":class:`contextlib.AbstractContextManager`" msgstr ":class:`contextlib.AbstractContextManager`" -#: ../../library/stdtypes.rst:6041 +#: ../../builtins/stdtypes.rst:6056 msgid ":class:`contextlib.AbstractAsyncContextManager`" msgstr ":class:`contextlib.AbstractAsyncContextManager`" -#: ../../library/stdtypes.rst:6042 +#: ../../builtins/stdtypes.rst:6057 msgid ":class:`dataclasses.Field`" msgstr ":class:`dataclasses.Field`" -#: ../../library/stdtypes.rst:6043 +#: ../../builtins/stdtypes.rst:6058 msgid ":class:`functools.cached_property`" msgstr ":class:`functools.cached_property`" -#: ../../library/stdtypes.rst:6044 +#: ../../builtins/stdtypes.rst:6059 msgid ":class:`functools.partialmethod`" msgstr ":class:`functools.partialmethod`" -#: ../../library/stdtypes.rst:6045 +#: ../../builtins/stdtypes.rst:6060 msgid ":class:`os.PathLike`" msgstr ":class:`os.PathLike`" -#: ../../library/stdtypes.rst:6046 +#: ../../builtins/stdtypes.rst:6061 msgid ":class:`queue.LifoQueue`" msgstr ":class:`queue.LifoQueue`" -#: ../../library/stdtypes.rst:6047 +#: ../../builtins/stdtypes.rst:6062 msgid ":class:`queue.Queue`" msgstr ":class:`queue.Queue`" -#: ../../library/stdtypes.rst:6048 +#: ../../builtins/stdtypes.rst:6063 msgid ":class:`queue.PriorityQueue`" msgstr ":class:`queue.PriorityQueue`" -#: ../../library/stdtypes.rst:6049 +#: ../../builtins/stdtypes.rst:6064 msgid ":class:`queue.SimpleQueue`" msgstr ":class:`queue.SimpleQueue`" -#: ../../library/stdtypes.rst:6050 +#: ../../builtins/stdtypes.rst:6065 msgid ":ref:`re.Pattern `" msgstr ":ref:`re.Pattern `" -#: ../../library/stdtypes.rst:6051 +#: ../../builtins/stdtypes.rst:6066 msgid ":ref:`re.Match `" msgstr ":ref:`re.Match `" -#: ../../library/stdtypes.rst:6052 +#: ../../builtins/stdtypes.rst:6067 msgid ":class:`shelve.BsdDbShelf`" msgstr ":class:`shelve.BsdDbShelf`" -#: ../../library/stdtypes.rst:6053 +#: ../../builtins/stdtypes.rst:6068 msgid ":class:`shelve.DbfilenameShelf`" msgstr ":class:`shelve.DbfilenameShelf`" -#: ../../library/stdtypes.rst:6054 +#: ../../builtins/stdtypes.rst:6069 msgid ":class:`shelve.Shelf`" msgstr ":class:`shelve.Shelf`" -#: ../../library/stdtypes.rst:6055 +#: ../../builtins/stdtypes.rst:6070 msgid ":class:`types.MappingProxyType`" msgstr ":class:`types.MappingProxyType`" -#: ../../library/stdtypes.rst:6056 +#: ../../builtins/stdtypes.rst:6071 msgid ":class:`weakref.WeakKeyDictionary`" msgstr ":class:`weakref.WeakKeyDictionary`" -#: ../../library/stdtypes.rst:6057 +#: ../../builtins/stdtypes.rst:6072 msgid ":class:`weakref.WeakMethod`" msgstr ":class:`weakref.WeakMethod`" -#: ../../library/stdtypes.rst:6058 +#: ../../builtins/stdtypes.rst:6073 msgid ":class:`weakref.WeakSet`" msgstr ":class:`weakref.WeakSet`" -#: ../../library/stdtypes.rst:6059 +#: ../../builtins/stdtypes.rst:6074 msgid ":class:`weakref.WeakValueDictionary`" msgstr ":class:`weakref.WeakValueDictionary`" -#: ../../library/stdtypes.rst:6064 +#: ../../builtins/stdtypes.rst:6079 msgid "Special Attributes of ``GenericAlias`` objects" msgstr "Spezielle Attribute von ``GenericAlias``-Objekten" -#: ../../library/stdtypes.rst:6066 +#: ../../builtins/stdtypes.rst:6081 msgid "All parameterized generics implement special read-only attributes." msgstr "" "Alle parametrisierten Generics implementieren spezielle schreibgeschützte " "Attribute." -#: ../../library/stdtypes.rst:6070 +#: ../../builtins/stdtypes.rst:6085 msgid "This attribute points at the non-parameterized generic class::" msgstr "" "Dieses Attribut verweist auf die nicht-parametrisierte generische Klasse::" -#: ../../library/stdtypes.rst:6072 +#: ../../builtins/stdtypes.rst:6087 msgid "" ">>> list[int].__origin__\n" "" @@ -11009,7 +11030,7 @@ msgstr "" ">>> list[int].__origin__\n" "" -#: ../../library/stdtypes.rst:6078 +#: ../../builtins/stdtypes.rst:6093 msgid "" "This attribute is a :class:`tuple` (possibly of length 1) of generic types " "passed to the original :meth:`~object.__class_getitem__` of the generic " @@ -11019,7 +11040,7 @@ msgstr "" "generischen Typen, die an das ursprüngliche :meth:`~object." "__class_getitem__` der generischen Klasse übergeben wurden::" -#: ../../library/stdtypes.rst:6082 +#: ../../builtins/stdtypes.rst:6097 msgid "" ">>> dict[str, list[int]].__args__\n" "(, list[int])" @@ -11027,7 +11048,7 @@ msgstr "" ">>> dict[str, list[int]].__args__\n" "(, list[int])" -#: ../../library/stdtypes.rst:6088 +#: ../../builtins/stdtypes.rst:6103 msgid "" "This attribute is a lazily computed tuple (possibly empty) of unique type " "variables found in ``__args__``::" @@ -11035,7 +11056,7 @@ msgstr "" "Dieses Attribut ist ein verzögert ausgewertetes (möglicherweise leeres) " "Tupel von eindeutigen Typvariablen, die in ``__args__`` gefunden wurden::" -#: ../../library/stdtypes.rst:6091 +#: ../../builtins/stdtypes.rst:6106 msgid "" ">>> from typing import TypeVar\n" "\n" @@ -11049,7 +11070,7 @@ msgstr "" ">>> list[T].__parameters__\n" "(~T,)" -#: ../../library/stdtypes.rst:6099 +#: ../../builtins/stdtypes.rst:6114 msgid "" "A ``GenericAlias`` object with :class:`typing.ParamSpec` parameters may not " "have correct ``__parameters__`` after substitution because :class:`typing." @@ -11060,7 +11081,7 @@ msgstr "" "class:`typing.ParamSpec` in erster Linie für die statische Typprüfung " "gedacht ist." -#: ../../library/stdtypes.rst:6106 +#: ../../builtins/stdtypes.rst:6121 msgid "" "A boolean that is true if the alias has been unpacked using the ``*`` " "operator (see :data:`~typing.TypeVarTuple`)." @@ -11068,19 +11089,19 @@ msgstr "" "Ein boolescher Wert, der wahr ist, wenn das Alias mit dem Operator ``*`` " "entpackt wurde (siehe :data:`~typing.TypeVarTuple`)." -#: ../../library/stdtypes.rst:6114 +#: ../../builtins/stdtypes.rst:6129 msgid ":pep:`484` - Type Hints" msgstr ":pep:`484` - Type Hints" -#: ../../library/stdtypes.rst:6115 +#: ../../builtins/stdtypes.rst:6130 msgid "Introducing Python's framework for type annotations." msgstr "Einführung von Pythons Framework für Typ-Annotationen." -#: ../../library/stdtypes.rst:6117 +#: ../../builtins/stdtypes.rst:6132 msgid ":pep:`585` - Type Hinting Generics In Standard Collections" msgstr ":pep:`585` - Type Hinting Generics In Standard Collections" -#: ../../library/stdtypes.rst:6118 +#: ../../builtins/stdtypes.rst:6133 msgid "" "Introducing the ability to natively parameterize standard-library classes, " "provided they implement the special class method :meth:`~object." @@ -11090,7 +11111,7 @@ msgstr "" "Standardbibliotheksklassen, sofern sie die spezielle Klassenmethode :meth:" "`~object.__class_getitem__` implementieren." -#: ../../library/stdtypes.rst:6122 +#: ../../builtins/stdtypes.rst:6137 msgid "" ":ref:`Generics`, :ref:`user-defined generics ` and :" "class:`typing.Generic`" @@ -11098,7 +11119,7 @@ msgstr "" ":ref:`Generics`, :ref:`benutzerdefinierte Generics ` " "und :class:`typing.Generic`" -#: ../../library/stdtypes.rst:6123 +#: ../../builtins/stdtypes.rst:6138 msgid "" "Documentation on how to implement generic classes that can be parameterized " "at runtime and understood by static type-checkers." @@ -11106,11 +11127,11 @@ msgstr "" "Dokumentation zur Implementierung generischer Klassen, die zur Laufzeit " "parametrisiert und von statischen Typprüfern verstanden werden können." -#: ../../library/stdtypes.rst:6132 +#: ../../builtins/stdtypes.rst:6147 msgid "Union Type" msgstr "Union-Typ" -#: ../../library/stdtypes.rst:6138 +#: ../../builtins/stdtypes.rst:6153 msgid "" "A union object holds the value of the ``|`` (bitwise or) operation on " "multiple :ref:`type objects `. These types are intended " @@ -11124,7 +11145,7 @@ msgstr "" "Typ-Ausdruck ermöglicht eine sauberere Type-Hinting-Syntax im Vergleich zur " "Subskription von :class:`typing.Union`." -#: ../../library/stdtypes.rst:6145 +#: ../../builtins/stdtypes.rst:6160 msgid "" "Defines a union object which holds types *X*, *Y*, and so forth. ``X | Y`` " "means either X or Y. It is equivalent to ``typing.Union[X, Y]``. For " @@ -11136,7 +11157,7 @@ msgstr "" "Beispiel erwartet die folgende Funktion ein Argument vom Typ :class:`int` " "oder :class:`float`::" -#: ../../library/stdtypes.rst:6150 +#: ../../builtins/stdtypes.rst:6165 msgid "" "def square(number: int | float) -> int | float:\n" " return number ** 2" @@ -11144,7 +11165,7 @@ msgstr "" "def square(number: int | float) -> int | float:\n" " return number ** 2" -#: ../../library/stdtypes.rst:6155 +#: ../../builtins/stdtypes.rst:6170 msgid "" "The ``|`` operator cannot be used at runtime to define unions where one or " "more members is a forward reference. For example, ``int | \"Foo\"``, where " @@ -11159,42 +11180,42 @@ msgstr "" "ist. Für Unions, die Vorwärtsreferenzen enthalten, sollte der gesamte " "Ausdruck als String angegeben werden, z. B. ``\"int | Foo\"``." -#: ../../library/stdtypes.rst:6163 +#: ../../builtins/stdtypes.rst:6178 msgid "" "Union objects can be tested for equality with other union objects. Details:" msgstr "" "Union-Objekte können mit anderen Union-Objekten auf Gleichheit getestet " "werden. Details:" -#: ../../library/stdtypes.rst:6165 +#: ../../builtins/stdtypes.rst:6180 msgid "Unions of unions are flattened::" msgstr "Unions von Unions werden verflacht::" -#: ../../library/stdtypes.rst:6167 +#: ../../builtins/stdtypes.rst:6182 msgid "(int | str) | float == int | str | float" msgstr "(int | str) | float == int | str | float" -#: ../../library/stdtypes.rst:6169 +#: ../../builtins/stdtypes.rst:6184 msgid "Redundant types are removed::" msgstr "Redundante Typen werden entfernt::" -#: ../../library/stdtypes.rst:6171 +#: ../../builtins/stdtypes.rst:6186 msgid "int | str | int == int | str" msgstr "int | str | int == int | str" -#: ../../library/stdtypes.rst:6173 +#: ../../builtins/stdtypes.rst:6188 msgid "When comparing unions, the order is ignored::" msgstr "Beim Vergleich von Unions wird die Reihenfolge ignoriert::" -#: ../../library/stdtypes.rst:6175 +#: ../../builtins/stdtypes.rst:6190 msgid "int | str == str | int" msgstr "int | str == str | int" -#: ../../library/stdtypes.rst:6177 +#: ../../builtins/stdtypes.rst:6192 msgid "It creates instances of :class:`typing.Union`::" msgstr "Es erzeugt Instanzen von :class:`typing.Union`::" -#: ../../library/stdtypes.rst:6179 +#: ../../builtins/stdtypes.rst:6194 msgid "" "int | str == typing.Union[int, str]\n" "type(int | str) is typing.Union" @@ -11202,15 +11223,15 @@ msgstr "" "int | str == typing.Union[int, str]\n" "type(int | str) is typing.Union" -#: ../../library/stdtypes.rst:6182 +#: ../../builtins/stdtypes.rst:6197 msgid "Optional types can be spelled as a union with ``None``::" msgstr "Optionale Typen können als Union mit ``None`` geschrieben werden::" -#: ../../library/stdtypes.rst:6184 +#: ../../builtins/stdtypes.rst:6199 msgid "str | None == typing.Optional[str]" msgstr "str | None == typing.Optional[str]" -#: ../../library/stdtypes.rst:6189 +#: ../../builtins/stdtypes.rst:6204 msgid "" "Calls to :func:`isinstance` and :func:`issubclass` are also supported with a " "union object::" @@ -11218,7 +11239,7 @@ msgstr "" "Aufrufe von :func:`isinstance` und :func:`issubclass` werden ebenfalls mit " "einem Union-Objekt unterstützt::" -#: ../../library/stdtypes.rst:6192 +#: ../../builtins/stdtypes.rst:6207 msgid "" ">>> isinstance(\"\", int | str)\n" "True" @@ -11226,7 +11247,7 @@ msgstr "" ">>> isinstance(\"\", int | str)\n" "True" -#: ../../library/stdtypes.rst:6195 +#: ../../builtins/stdtypes.rst:6210 msgid "" "However, :ref:`parameterized generics ` in union objects " "cannot be checked::" @@ -11234,7 +11255,7 @@ msgstr "" ":ref:`Parametrisierte Generics ` in Union-Objekten " "können jedoch nicht geprüft werden::" -#: ../../library/stdtypes.rst:6198 +#: ../../builtins/stdtypes.rst:6213 msgid "" ">>> isinstance(1, int | list[int]) # short-circuit evaluation\n" "True\n" @@ -11250,7 +11271,7 @@ msgstr "" " ...\n" "TypeError: isinstance() argument 2 cannot be a parameterized generic" -#: ../../library/stdtypes.rst:6205 +#: ../../builtins/stdtypes.rst:6220 msgid "" "The user-exposed type for the union object can be accessed from :class:" "`typing.Union` and used for :func:`isinstance` checks::" @@ -11258,7 +11279,7 @@ msgstr "" "Der für Benutzer sichtbare Typ für das Union-Objekt kann über :class:`typing." "Union` aufgerufen und für :func:`isinstance`-Prüfungen verwendet werden::" -#: ../../library/stdtypes.rst:6208 +#: ../../builtins/stdtypes.rst:6223 msgid "" ">>> import typing\n" ">>> isinstance(int | str, typing.Union)\n" @@ -11276,7 +11297,7 @@ msgstr "" " File \"\", line 1, in \n" "TypeError: cannot create 'typing.Union' instances" -#: ../../library/stdtypes.rst:6217 +#: ../../builtins/stdtypes.rst:6232 msgid "" "The :meth:`!__or__` method for type objects was added to support the syntax " "``X | Y``. If a metaclass implements :meth:`!__or__`, the Union may " @@ -11286,7 +11307,7 @@ msgstr "" "``X | Y`` zu unterstützen. Wenn eine Metaklasse :meth:`!__or__` " "implementiert, kann die Union diese überschreiben:" -#: ../../library/stdtypes.rst:6221 +#: ../../builtins/stdtypes.rst:6236 msgid "" ">>> class M(type):\n" "... def __or__(self, other):\n" @@ -11312,12 +11333,12 @@ msgstr "" ">>> int | C\n" "int | C" -#: ../../library/stdtypes.rst:6237 +#: ../../builtins/stdtypes.rst:6252 msgid ":pep:`604` -- PEP proposing the ``X | Y`` syntax and the Union type." msgstr "" ":pep:`604` -- PEP zum Vorschlag der Syntax ``X | Y`` und des Union-Typs." -#: ../../library/stdtypes.rst:6243 +#: ../../builtins/stdtypes.rst:6258 msgid "" "Union objects are now instances of :class:`typing.Union`. Previously, they " "were instances of :class:`types.UnionType`, which remains an alias for :" @@ -11327,11 +11348,11 @@ msgstr "" "Instanzen von :class:`types.UnionType`, welches ein Alias für :class:`typing." "Union` bleibt." -#: ../../library/stdtypes.rst:6250 +#: ../../builtins/stdtypes.rst:6265 msgid "Other Built-in Types" msgstr "Andere eingebaute Typen" -#: ../../library/stdtypes.rst:6252 +#: ../../builtins/stdtypes.rst:6267 msgid "" "The interpreter supports several other kinds of objects. Most of these " "support only one or two operations." @@ -11339,11 +11360,11 @@ msgstr "" "Der Interpreter unterstützt mehrere andere Arten von Objekten. Die meisten " "von ihnen unterstützen nur eine oder zwei Operationen." -#: ../../library/stdtypes.rst:6259 +#: ../../builtins/stdtypes.rst:6274 msgid "Modules" msgstr "Module" -#: ../../library/stdtypes.rst:6261 +#: ../../builtins/stdtypes.rst:6276 msgid "" "The only special operation on a module is attribute access: ``m.name``, " "where *m* is a module and *name* accesses a name defined in *m*'s symbol " @@ -11361,7 +11382,7 @@ msgstr "" "nicht, dass ein Modulobjekt namens *foo* existiert, sondern dass irgendwo " "eine (externe) *Definition* für ein Modul namens *foo* vorhanden ist.)" -#: ../../library/stdtypes.rst:6268 +#: ../../builtins/stdtypes.rst:6283 msgid "" "A special attribute of every module is :attr:`~object.__dict__`. This is the " "dictionary containing the module's symbol table. Modifying this dictionary " @@ -11379,7 +11400,7 @@ msgstr "" "definiert, aber nicht ``m.__dict__ = {}``). Die direkte Modifikation von :" "attr:`~object.__dict__` wird nicht empfohlen." -#: ../../library/stdtypes.rst:6276 +#: ../../builtins/stdtypes.rst:6291 msgid "" "Modules built into the interpreter are written like this: ````. If loaded from a file, they are written as ````. Wenn sie aus einer Datei geladen werden, werden sie als " "```` geschrieben." -#: ../../library/stdtypes.rst:6284 +#: ../../builtins/stdtypes.rst:6299 msgid "Classes and Class Instances" msgstr "Klassen und Klasseninstanzen" -#: ../../library/stdtypes.rst:6286 +#: ../../builtins/stdtypes.rst:6301 msgid "See :ref:`objects` and :ref:`class` for these." msgstr "Siehe :ref:`objects` und :ref:`class` für diese." -#: ../../library/stdtypes.rst:6292 +#: ../../builtins/stdtypes.rst:6307 msgid "Functions" msgstr "Funktionen" -#: ../../library/stdtypes.rst:6294 +#: ../../builtins/stdtypes.rst:6309 msgid "" "Function objects are created by function definitions. The only operation on " "a function object is to call it: ``func(argument-list)``." @@ -11410,7 +11431,7 @@ msgstr "" "Operation auf einem Funktionsobjekt ist dessen Aufruf: ``func(argument-" "list)``." -#: ../../library/stdtypes.rst:6297 +#: ../../builtins/stdtypes.rst:6312 msgid "" "There are really two flavors of function objects: built-in functions and " "user-defined functions. Both support the same operation (to call the " @@ -11422,15 +11443,15 @@ msgstr "" "Operation (den Funktionsaufruf), die Implementierung ist jedoch " "unterschiedlich, daher die verschiedenen Objekttypen." -#: ../../library/stdtypes.rst:6301 +#: ../../builtins/stdtypes.rst:6316 msgid "See :ref:`function` for more information." msgstr "Siehe :ref:`function` für weitere Informationen." -#: ../../library/stdtypes.rst:6307 +#: ../../builtins/stdtypes.rst:6322 msgid "Methods" msgstr "Methoden" -#: ../../library/stdtypes.rst:6311 +#: ../../builtins/stdtypes.rst:6326 msgid "" "Methods are functions that are called using the attribute notation. There " "are two flavors: :ref:`built-in methods ` (such as :meth:" @@ -11443,7 +11464,7 @@ msgstr "" "methods>`. Eingebaute Methoden werden bei den Typen beschrieben, die sie " "unterstützen." -#: ../../library/stdtypes.rst:6317 +#: ../../builtins/stdtypes.rst:6332 msgid "" "If you access a method (a function defined in a class namespace) through an " "instance, you get a special object: a :dfn:`bound method` (also called :ref:" @@ -11466,7 +11487,7 @@ msgstr "" "``m(arg-1, arg-2, ..., arg-n)`` ist vollkommen äquivalent zum Aufruf von ``m." "__func__(m.__self__, arg-1, arg-2, ..., arg-n)``." -#: ../../library/stdtypes.rst:6328 +#: ../../builtins/stdtypes.rst:6343 msgid "" "Like :ref:`function objects `, bound method objects " "support getting arbitrary attributes. However, since method attributes are " @@ -11485,7 +11506,7 @@ msgstr "" "wird. Um ein Methodenattribut zu setzen, muss es explizit auf dem zugrunde " "liegenden Funktionsobjekt gesetzt werden:" -#: ../../library/stdtypes.rst:6336 +#: ../../builtins/stdtypes.rst:6351 msgid "" ">>> class C:\n" "... def method(self):\n" @@ -11513,15 +11534,15 @@ msgstr "" ">>> c.method.whoami\n" "'my name is method'" -#: ../../library/stdtypes.rst:6351 +#: ../../builtins/stdtypes.rst:6366 msgid "See :ref:`instance-methods` for more information." msgstr "Siehe :ref:`instance-methods` für weitere Informationen." -#: ../../library/stdtypes.rst:6359 +#: ../../builtins/stdtypes.rst:6374 msgid "Code Objects" msgstr "Code-Objekte" -#: ../../library/stdtypes.rst:6365 +#: ../../builtins/stdtypes.rst:6380 msgid "" "Code objects are used by the implementation to represent \"pseudo-compiled\" " "executable Python code such as a function body. They differ from function " @@ -11538,7 +11559,7 @@ msgstr "" "zurückgegeben und können über ihr Attribut :attr:`~function.__code__` aus " "Funktionsobjekten extrahiert werden. Siehe auch das Modul :mod:`code`." -#: ../../library/stdtypes.rst:6372 +#: ../../builtins/stdtypes.rst:6387 msgid "" "Accessing :attr:`~function.__code__` raises an :ref:`auditing event " "` ``object.__getattr__`` with arguments ``obj`` and " @@ -11548,7 +11569,7 @@ msgstr "" "` ``object.__getattr__`` mit den Argumenten ``obj`` und " "``\"__code__\"`` aus." -#: ../../library/stdtypes.rst:6379 +#: ../../builtins/stdtypes.rst:6394 msgid "" "A code object can be executed or evaluated by passing it (instead of a " "source string) to the :func:`exec` or :func:`eval` built-in functions." @@ -11557,15 +11578,15 @@ msgstr "" "eines Quell-Strings) an die eingebauten Funktionen :func:`exec` oder :func:" "`eval` übergeben wird." -#: ../../library/stdtypes.rst:6382 +#: ../../builtins/stdtypes.rst:6397 msgid "See :ref:`types` for more information." msgstr "Siehe :ref:`types` für weitere Informationen." -#: ../../library/stdtypes.rst:6388 +#: ../../builtins/stdtypes.rst:6403 msgid "Type Objects" msgstr "Typ-Objekte" -#: ../../library/stdtypes.rst:6394 +#: ../../builtins/stdtypes.rst:6409 msgid "" "Type objects represent the various object types. An object's type is " "accessed by the built-in function :func:`type`. There are no special " @@ -11577,15 +11598,15 @@ msgstr "" "keine speziellen Operationen auf Typen. Das Standardmodul :mod:`types` " "definiert Namen für alle standardmäßigen eingebauten Typen." -#: ../../library/stdtypes.rst:6399 +#: ../../builtins/stdtypes.rst:6414 msgid "Types are written like this: ````." msgstr "Typen werden so geschrieben: ````." -#: ../../library/stdtypes.rst:6405 +#: ../../builtins/stdtypes.rst:6420 msgid "The Null Object" msgstr "Das Null-Objekt" -#: ../../library/stdtypes.rst:6407 +#: ../../builtins/stdtypes.rst:6422 msgid "" "This object is returned by functions that don't explicitly return a value. " "It supports no special operations. There is exactly one null object, named " @@ -11596,15 +11617,15 @@ msgstr "" "ein Null-Objekt namens ``None`` (ein eingebauter Name). ``type(None)()`` " "erzeugt dasselbe Singleton." -#: ../../library/stdtypes.rst:6411 +#: ../../builtins/stdtypes.rst:6426 msgid "It is written as ``None``." msgstr "Es wird als ``None`` geschrieben." -#: ../../library/stdtypes.rst:6418 +#: ../../builtins/stdtypes.rst:6433 msgid "The Ellipsis Object" msgstr "Das Ellipsis-Objekt" -#: ../../library/stdtypes.rst:6420 +#: ../../builtins/stdtypes.rst:6435 msgid "" "This object is commonly used to indicate that something is omitted. It " "supports no special operations. There is exactly one ellipsis object, " @@ -11616,11 +11637,11 @@ msgstr "" "genau ein Ellipsis-Objekt namens :const:`Ellipsis` (ein eingebauter Name). " "``type(Ellipsis)()`` erzeugt das Singleton :const:`Ellipsis`." -#: ../../library/stdtypes.rst:6425 +#: ../../builtins/stdtypes.rst:6440 msgid "It is written as ``Ellipsis`` or ``...``." msgstr "Es wird als ``Ellipsis`` oder ``...`` geschrieben." -#: ../../library/stdtypes.rst:6427 +#: ../../builtins/stdtypes.rst:6442 msgid "" "In typical use, ``...`` as the ``Ellipsis`` object appears in a few " "different places, for instance:" @@ -11628,7 +11649,7 @@ msgstr "" "In typischer Verwendung erscheint ``...`` als das ``Ellipsis``-Objekt an " "einigen verschiedenen Stellen, zum Beispiel:" -#: ../../library/stdtypes.rst:6430 +#: ../../builtins/stdtypes.rst:6445 msgid "" "In type annotations, such as :ref:`callable arguments ` or :ref:`tuple elements `." @@ -11636,13 +11657,13 @@ msgstr "" "In Typ-Annotationen, wie z. B. :ref:`Callable-Argumente ` oder :ref:`Tupel-Elemente `." -#: ../../library/stdtypes.rst:6433 +#: ../../builtins/stdtypes.rst:6448 msgid "" "As the body of a function instead of a :ref:`pass statement `." msgstr "" "Als Körper einer Funktion anstelle einer :ref:`pass-Anweisung `." -#: ../../library/stdtypes.rst:6435 +#: ../../builtins/stdtypes.rst:6450 msgid "" "In third-party libraries, such as `Numpy's slicing and striding `_." @@ -11651,7 +11672,7 @@ msgstr "" "`_." -#: ../../library/stdtypes.rst:6438 +#: ../../builtins/stdtypes.rst:6453 msgid "" "Python also uses three dots in ways that are not ``Ellipsis`` objects, for " "instance:" @@ -11659,7 +11680,7 @@ msgstr "" "Python verwendet drei Punkte auch auf Weisen, die keine ``Ellipsis``-Objekte " "sind, zum Beispiel:" -#: ../../library/stdtypes.rst:6440 +#: ../../builtins/stdtypes.rst:6455 msgid "" "Doctest's :const:`ELLIPSIS `, as a pattern for missing " "content." @@ -11667,7 +11688,7 @@ msgstr "" "Doctests :const:`ELLIPSIS `, als Muster für fehlenden " "Inhalt." -#: ../../library/stdtypes.rst:6442 +#: ../../builtins/stdtypes.rst:6457 msgid "" "The default Python prompt of the :term:`interactive` shell when partial " "input is incomplete." @@ -11675,7 +11696,7 @@ msgstr "" "Der Standard-Python-Prompt der :term:`interaktiven ` Shell, " "wenn eine unvollständige Eingabe vorliegt." -#: ../../library/stdtypes.rst:6444 +#: ../../builtins/stdtypes.rst:6459 msgid "" "Lastly, the Python documentation often uses three dots in conventional " "English usage to mean omitted content, even in code examples that also use " @@ -11685,11 +11706,11 @@ msgstr "" "herkömmlichen Sprachgebrauchs, um ausgelassenen Inhalt zu kennzeichnen, " "selbst in Codebeispielen, die sie auch als ``Ellipsis`` verwenden." -#: ../../library/stdtypes.rst:6452 +#: ../../builtins/stdtypes.rst:6467 msgid "The NotImplemented Object" msgstr "Das NotImplemented-Objekt" -#: ../../library/stdtypes.rst:6454 +#: ../../builtins/stdtypes.rst:6469 msgid "" "This object is returned from comparisons and binary operations when they are " "asked to operate on types they don't support. See :ref:`comparisons` for " @@ -11702,15 +11723,15 @@ msgstr "" "`NotImplemented`-Objekt. :code:`type(NotImplemented)()` erzeugt die " "Singleton-Instanz." -#: ../../library/stdtypes.rst:6459 +#: ../../builtins/stdtypes.rst:6474 msgid "It is written as :code:`NotImplemented`." msgstr "Es wird als :code:`NotImplemented` geschrieben." -#: ../../library/stdtypes.rst:6465 +#: ../../builtins/stdtypes.rst:6480 msgid "Internal Objects" msgstr "Interne Objekte" -#: ../../library/stdtypes.rst:6467 +#: ../../builtins/stdtypes.rst:6482 msgid "" "See :ref:`types` for this information. It describes :ref:`stack frame " "objects `, :ref:`traceback objects `, and " @@ -11720,11 +11741,11 @@ msgstr "" "Objekte `, :ref:`Traceback-Objekte ` und " "Slice-Objekte beschrieben." -#: ../../library/stdtypes.rst:6475 +#: ../../builtins/stdtypes.rst:6490 msgid "Special Attributes" msgstr "Spezielle Attribute" -#: ../../library/stdtypes.rst:6477 +#: ../../builtins/stdtypes.rst:6492 msgid "" "The implementation adds a few special read-only attributes to several object " "types, where they are relevant. Some of these are not reported by the :func:" @@ -11734,14 +11755,14 @@ msgstr "" "schreibgeschützte Attribute hinzu, wo sie relevant sind. Einige davon werden " "von der eingebauten Funktion :func:`dir` nicht gemeldet." -#: ../../library/stdtypes.rst:6484 +#: ../../builtins/stdtypes.rst:6499 msgid "" "The name of the class, function, method, descriptor, or generator instance." msgstr "" "Der Name der Klasse, Funktion, Methode, des Deskriptors oder der " "Generatorinstanz." -#: ../../library/stdtypes.rst:6490 +#: ../../builtins/stdtypes.rst:6505 msgid "" "The :term:`qualified name` of the class, function, method, descriptor, or " "generator instance." @@ -11749,18 +11770,18 @@ msgstr "" "Der :term:`voll qualifizierte Name ` der Klasse, Funktion, " "Methode, des Deskriptors oder der Generatorinstanz." -#: ../../library/stdtypes.rst:6498 +#: ../../builtins/stdtypes.rst:6513 msgid "The name of the module in which a class or function was defined." msgstr "Der Name des Moduls, in dem eine Klasse oder Funktion definiert wurde." -#: ../../library/stdtypes.rst:6503 +#: ../../builtins/stdtypes.rst:6518 msgid "" "The documentation string of a class or function, or ``None`` if undefined." msgstr "" "Der Dokumentations-String (Docstring) einer Klasse oder Funktion oder " "``None``, falls nicht definiert." -#: ../../library/stdtypes.rst:6508 +#: ../../builtins/stdtypes.rst:6523 msgid "" "The :ref:`type parameters ` of generic classes, functions, and :" "ref:`type aliases `. For classes and functions that are not " @@ -11770,11 +11791,11 @@ msgstr "" "ref:`Typaliase `. Für Klassen und Funktionen, die nicht " "generisch sind, ist dies ein leeres Tupel." -#: ../../library/stdtypes.rst:6518 +#: ../../builtins/stdtypes.rst:6533 msgid "Integer string conversion length limitation" msgstr "Längenbeschränkung bei der Ganzzahl-String-Konvertierung" -#: ../../library/stdtypes.rst:6520 +#: ../../builtins/stdtypes.rst:6535 msgid "" "CPython has a global limit for converting between :class:`int` and :class:" "`str` to mitigate denial of service attacks. This limit *only* applies to " @@ -11787,7 +11808,7 @@ msgstr "" "Zweierpotenz sind. Hexadezimale, oktale und binäre Konvertierungen sind " "unbegrenzt. Das Limit kann konfiguriert werden." -#: ../../library/stdtypes.rst:6525 +#: ../../builtins/stdtypes.rst:6540 msgid "" "The :class:`int` type in CPython is an arbitrary length number stored in " "binary form (commonly known as a \"bignum\"). There exists no algorithm that " @@ -11805,14 +11826,14 @@ msgstr "" "eines großen Werts wie ``int('1' * 500_000)`` kann auf einer schnellen CPU " "über eine Sekunde dauern." -#: ../../library/stdtypes.rst:6532 +#: ../../builtins/stdtypes.rst:6547 msgid "" "Limiting conversion size offers a practical way to avoid :cve:`2020-10735`." msgstr "" "Die Begrenzung der Konvertierungsgröße bietet eine praktische Möglichkeit, :" "cve:`2020-10735` zu vermeiden." -#: ../../library/stdtypes.rst:6534 +#: ../../builtins/stdtypes.rst:6549 msgid "" "The limit is applied to the number of digit characters in the input or " "output string when a non-linear conversion algorithm would be involved. " @@ -11822,14 +11843,14 @@ msgstr "" "String angewendet, wenn ein nicht-linearer Konvertierungsalgorithmus " "beteiligt wäre. Unterstriche und das Vorzeichen zählen nicht zum Limit." -#: ../../library/stdtypes.rst:6538 +#: ../../builtins/stdtypes.rst:6553 msgid "" "When an operation would exceed the limit, a :exc:`ValueError` is raised:" msgstr "" "Wenn eine Operation das Limit überschreiten würde, wird ein :exc:" "`ValueError` ausgelöst:" -#: ../../library/stdtypes.rst:6540 +#: ../../builtins/stdtypes.rst:6555 msgid "" ">>> import sys\n" ">>> sys.set_int_max_str_digits(4300) # Illustrative, this is the default.\n" @@ -11873,7 +11894,7 @@ msgstr "" "7144\n" ">>> assert int(hex(i_squared), base=16) == i*i # Hexadecimal is unlimited." -#: ../../library/stdtypes.rst:6560 +#: ../../builtins/stdtypes.rst:6575 msgid "" "The default limit is 4300 digits as provided in :data:`sys.int_info." "default_max_str_digits `. The lowest limit that can be " @@ -11885,11 +11906,11 @@ msgstr "" "konfiguriert werden kann, beträgt 640 Ziffern, wie in :data:`sys.int_info." "str_digits_check_threshold ` angegeben." -#: ../../library/stdtypes.rst:6565 +#: ../../builtins/stdtypes.rst:6580 msgid "Verification:" msgstr "Verifizierung:" -#: ../../library/stdtypes.rst:6567 +#: ../../builtins/stdtypes.rst:6582 msgid "" ">>> import sys\n" ">>> assert sys.int_info.default_max_str_digits == 4300, sys.int_info\n" @@ -11907,11 +11928,11 @@ msgstr "" "... '571186405732').to_bytes(53, 'big')\n" "..." -#: ../../library/stdtypes.rst:6580 +#: ../../builtins/stdtypes.rst:6595 msgid "Affected APIs" msgstr "Betroffene APIs" -#: ../../library/stdtypes.rst:6582 +#: ../../builtins/stdtypes.rst:6597 msgid "" "The limitation only applies to potentially slow conversions between :class:" "`int` and :class:`str` or :class:`bytes`:" @@ -11919,23 +11940,23 @@ msgstr "" "Die Einschränkung gilt nur für potenziell langsame Konvertierungen zwischen :" "class:`int` und :class:`str` oder :class:`bytes`:" -#: ../../library/stdtypes.rst:6585 +#: ../../builtins/stdtypes.rst:6600 msgid "``int(string)`` with default base 10." msgstr "``int(string)`` mit der Standardbasis 10." -#: ../../library/stdtypes.rst:6586 +#: ../../builtins/stdtypes.rst:6601 msgid "``int(string, base)`` for all bases that are not a power of 2." msgstr "``int(string, base)`` für alle Basen, die keine Zweierpotenz sind." -#: ../../library/stdtypes.rst:6587 +#: ../../builtins/stdtypes.rst:6602 msgid "``str(integer)``." msgstr "``str(integer)``." -#: ../../library/stdtypes.rst:6588 +#: ../../builtins/stdtypes.rst:6603 msgid "``repr(integer)``." msgstr "``repr(integer)``." -#: ../../library/stdtypes.rst:6589 +#: ../../builtins/stdtypes.rst:6604 msgid "" "any other string conversion to base 10, for example ``f\"{integer}\"``, " "``\"{}\".format(integer)``, or ``b\"%d\" % integer``." @@ -11943,41 +11964,41 @@ msgstr "" "jede andere String-Konvertierung zur Basis 10, zum Beispiel " "``f\"{integer}\"``, ``\"{}\".format(integer)`` oder ``b\"%d\" % integer``." -#: ../../library/stdtypes.rst:6592 +#: ../../builtins/stdtypes.rst:6607 msgid "The limitations do not apply to functions with a linear algorithm:" msgstr "" "Die Einschränkungen gelten nicht für Funktionen mit einem linearen " "Algorithmus:" -#: ../../library/stdtypes.rst:6594 +#: ../../builtins/stdtypes.rst:6609 msgid "``int(string, base)`` with base 2, 4, 8, 16, or 32." msgstr "``int(string, base)`` mit Basis 2, 4, 8, 16 oder 32." -#: ../../library/stdtypes.rst:6595 +#: ../../builtins/stdtypes.rst:6610 msgid ":func:`int.from_bytes` and :func:`int.to_bytes`." msgstr ":func:`int.from_bytes` und :func:`int.to_bytes`." -#: ../../library/stdtypes.rst:6596 +#: ../../builtins/stdtypes.rst:6611 msgid ":func:`hex`, :func:`oct`, :func:`bin`." msgstr ":func:`hex`, :func:`oct`, :func:`bin`." -#: ../../library/stdtypes.rst:6597 +#: ../../builtins/stdtypes.rst:6612 msgid ":ref:`formatspec` for hex, octal, and binary numbers." msgstr ":ref:`formatspec` für Hexadezimal-, Oktal- und Binärzahlen." -#: ../../library/stdtypes.rst:6598 +#: ../../builtins/stdtypes.rst:6613 msgid ":class:`str` to :class:`float`." msgstr ":class:`str` zu :class:`float`." -#: ../../library/stdtypes.rst:6599 +#: ../../builtins/stdtypes.rst:6614 msgid ":class:`str` to :class:`decimal.Decimal`." msgstr ":class:`str` zu :class:`decimal.Decimal`." -#: ../../library/stdtypes.rst:6602 +#: ../../builtins/stdtypes.rst:6617 msgid "Configuring the limit" msgstr "Konfigurieren des Limits" -#: ../../library/stdtypes.rst:6604 +#: ../../builtins/stdtypes.rst:6619 msgid "" "Before Python starts up you can use an environment variable or an " "interpreter command line flag to configure the limit:" @@ -11985,7 +12006,7 @@ msgstr "" "Vor dem Start von Python kann eine Umgebungsvariable oder ein Kommandozeilen-" "Flag des Interpreters verwendet werden, um das Limit zu konfigurieren:" -#: ../../library/stdtypes.rst:6607 +#: ../../builtins/stdtypes.rst:6622 msgid "" ":envvar:`PYTHONINTMAXSTRDIGITS`, e.g. ``PYTHONINTMAXSTRDIGITS=640 python3`` " "to set the limit to 640 or ``PYTHONINTMAXSTRDIGITS=0 python3`` to disable " @@ -11995,7 +12016,7 @@ msgstr "" "python3``, um das Limit auf 640 zu setzen, oder ``PYTHONINTMAXSTRDIGITS=0 " "python3``, um die Beschränkung zu deaktivieren." -#: ../../library/stdtypes.rst:6610 +#: ../../builtins/stdtypes.rst:6625 msgid "" ":option:`-X int_max_str_digits <-X>`, e.g. ``python3 -X " "int_max_str_digits=640``" @@ -12003,7 +12024,7 @@ msgstr "" ":option:`-X int_max_str_digits <-X>`, z. B. ``python3 -X " "int_max_str_digits=640``" -#: ../../library/stdtypes.rst:6612 +#: ../../builtins/stdtypes.rst:6627 msgid "" ":data:`sys.flags.int_max_str_digits` contains the value of :envvar:" "`PYTHONINTMAXSTRDIGITS` or :option:`-X int_max_str_digits <-X>`. If both the " @@ -12018,7 +12039,7 @@ msgstr "" "gesetzt waren, weshalb bei der Initialisierung ein Wert von :data:`sys." "int_info.default_max_str_digits` verwendet wurde." -#: ../../library/stdtypes.rst:6618 +#: ../../builtins/stdtypes.rst:6633 msgid "" "From code, you can inspect the current limit and set a new one using these :" "mod:`sys` APIs:" @@ -12026,7 +12047,7 @@ msgstr "" "Aus dem Code heraus kann das aktuelle Limit eingesehen und über diese :mod:" "`sys`-APIs ein neues festgelegt werden:" -#: ../../library/stdtypes.rst:6621 +#: ../../builtins/stdtypes.rst:6636 msgid "" ":func:`sys.get_int_max_str_digits` and :func:`sys.set_int_max_str_digits` " "are a getter and setter for the interpreter-wide limit. Subinterpreters have " @@ -12036,7 +12057,7 @@ msgstr "" "sind Getter und Setter für das interpreterweite Limit. Sub-Interpreter haben " "ihr eigenes Limit." -#: ../../library/stdtypes.rst:6625 +#: ../../builtins/stdtypes.rst:6640 msgid "" "Information about the default and minimum can be found in :data:`sys." "int_info`:" @@ -12044,7 +12065,7 @@ msgstr "" "Informationen über den Standardwert und das Minimum finden sich in :data:" "`sys.int_info`:" -#: ../../library/stdtypes.rst:6627 +#: ../../builtins/stdtypes.rst:6642 msgid "" ":data:`sys.int_info.default_max_str_digits ` is the compiled-" "in default limit." @@ -12052,7 +12073,7 @@ msgstr "" ":data:`sys.int_info.default_max_str_digits ` ist das " "einkompilierte Standardlimit." -#: ../../library/stdtypes.rst:6629 +#: ../../builtins/stdtypes.rst:6644 msgid "" ":data:`sys.int_info.str_digits_check_threshold ` is the lowest " "accepted value for the limit (other than 0 which disables it)." @@ -12060,7 +12081,7 @@ msgstr "" ":data:`sys.int_info.str_digits_check_threshold ` ist der " "niedrigste akzeptierte Wert für das Limit (außer 0, was es deaktiviert)." -#: ../../library/stdtypes.rst:6636 +#: ../../builtins/stdtypes.rst:6651 msgid "" "Setting a low limit *can* lead to problems. While rare, code exists that " "contains integer constants in decimal in their source that exceed the " @@ -12082,7 +12103,7 @@ msgstr "" "besteht darin, sie in die hexadezimale ``0x``-Form umzuwandeln, da diese " "kein Limit besitzt." -#: ../../library/stdtypes.rst:6645 +#: ../../builtins/stdtypes.rst:6660 msgid "" "Test your application thoroughly if you use a low limit. Ensure your tests " "run with the limit set early via the environment or flag so that it applies " @@ -12095,11 +12116,11 @@ msgstr "" "Installationsschritt greift, der Python aufrufen könnte, um ``.py``-Quellen " "in ``.pyc``-Dateien vorzukompilieren." -#: ../../library/stdtypes.rst:6651 +#: ../../builtins/stdtypes.rst:6666 msgid "Recommended configuration" msgstr "Empfohlene Konfiguration" -#: ../../library/stdtypes.rst:6653 +#: ../../builtins/stdtypes.rst:6668 msgid "" "The default :data:`sys.int_info.default_max_str_digits` is expected to be " "reasonable for most applications. If your application requires a different " @@ -12112,11 +12133,11 @@ msgstr "" "versionsunabhängigem Code, da diese APIs in Versionen vor 3.12 in " "Sicherheits-Patch-Releases hinzugefügt wurden." -#: ../../library/stdtypes.rst:6658 +#: ../../builtins/stdtypes.rst:6673 msgid "Example::" msgstr "Beispiel::" -#: ../../library/stdtypes.rst:6660 +#: ../../builtins/stdtypes.rst:6675 msgid "" ">>> import sys\n" ">>> if hasattr(sys, \"set_int_max_str_digits\"):\n" @@ -12138,15 +12159,15 @@ msgstr "" "... elif current_limit < lower_bound:\n" "... sys.set_int_max_str_digits(lower_bound)" -#: ../../library/stdtypes.rst:6670 +#: ../../builtins/stdtypes.rst:6685 msgid "If you need to disable it entirely, set it to ``0``." msgstr "Wenn es vollständig deaktiviert werden soll, setze es auf ``0``." -#: ../../library/stdtypes.rst:6674 +#: ../../builtins/stdtypes.rst:6689 msgid "Footnotes" msgstr "Fußnoten" -#: ../../library/stdtypes.rst:6675 +#: ../../builtins/stdtypes.rst:6690 msgid "" "Additional information on these special methods may be found in the Python " "Reference Manual (:ref:`customization`)." @@ -12154,7 +12175,7 @@ msgstr "" "Zusätzliche Informationen zu diesen speziellen Methoden finden sich im " "Python-Referenzhandbuch (:ref:`customization`)." -#: ../../library/stdtypes.rst:6678 +#: ../../builtins/stdtypes.rst:6693 msgid "" "As a consequence, the list ``[1, 2]`` is considered equal to ``[1.0, 2.0]``, " "and similarly for tuples." @@ -12162,13 +12183,13 @@ msgstr "" "Folglich gilt die Liste ``[1, 2]`` als gleich zu ``[1.0, 2.0]``, und " "Entsprechendes gilt für Tupel." -#: ../../library/stdtypes.rst:6681 +#: ../../builtins/stdtypes.rst:6696 msgid "They must have since the parser can't tell the type of the operands." msgstr "" "Sie müssen dieselbe Priorität haben, da der Parser den Typ der Operanden " "nicht unterscheiden kann." -#: ../../library/stdtypes.rst:6683 +#: ../../builtins/stdtypes.rst:6698 msgid "" "Cased characters are those with general category property being one of " "\"Lu\" (Letter, uppercase), \"Ll\" (Letter, lowercase), or \"Lt\" (Letter, " @@ -12178,7 +12199,7 @@ msgstr "" "Eigenschaft \"Lu\" (Letter, uppercase), \"Ll\" (Letter, lowercase) oder " "\"Lt\" (Letter, titlecase) ist." -#: ../../library/stdtypes.rst:6686 +#: ../../builtins/stdtypes.rst:6701 msgid "" "To format only a tuple you should therefore provide a singleton tuple whose " "only element is the tuple to be formatted." @@ -12186,766 +12207,766 @@ msgstr "" "Um ausschließlich ein Tupel zu formatieren, sollte man daher ein Singleton-" "Tupel bereitstellen, dessen einziges Element das zu formatierende Tupel ist." -#: ../../library/stdtypes.rst:13 +#: ../../builtins/stdtypes.rst:13 msgid "built-in" msgstr "eingebaut" -#: ../../library/stdtypes.rst:13 ../../library/stdtypes.rst:332 -#: ../../library/stdtypes.rst:409 ../../library/stdtypes.rst:1002 -#: ../../library/stdtypes.rst:1192 ../../library/stdtypes.rst:1214 -#: ../../library/stdtypes.rst:1229 ../../library/stdtypes.rst:5329 -#: ../../library/stdtypes.rst:6390 +#: ../../builtins/stdtypes.rst:13 ../../builtins/stdtypes.rst:332 +#: ../../builtins/stdtypes.rst:409 ../../builtins/stdtypes.rst:1005 +#: ../../builtins/stdtypes.rst:1197 ../../builtins/stdtypes.rst:1219 +#: ../../builtins/stdtypes.rst:1234 ../../builtins/stdtypes.rst:5342 +#: ../../builtins/stdtypes.rst:6405 msgid "types" msgstr "types" -#: ../../library/stdtypes.rst:34 ../../library/stdtypes.rst:1229 -#: ../../library/stdtypes.rst:5329 +#: ../../builtins/stdtypes.rst:34 ../../builtins/stdtypes.rst:1234 +#: ../../builtins/stdtypes.rst:5342 msgid "statement" msgstr "Anweisung" -#: ../../library/stdtypes.rst:34 +#: ../../builtins/stdtypes.rst:34 msgid "if" msgstr "if" -#: ../../library/stdtypes.rst:34 +#: ../../builtins/stdtypes.rst:34 msgid "while" msgstr "while" -#: ../../library/stdtypes.rst:34 +#: ../../builtins/stdtypes.rst:34 msgid "truth" msgstr "Wahrheit" -#: ../../library/stdtypes.rst:34 +#: ../../builtins/stdtypes.rst:34 msgid "value" msgstr "Wert" -#: ../../library/stdtypes.rst:34 ../../library/stdtypes.rst:83 -#: ../../library/stdtypes.rst:210 ../../library/stdtypes.rst:869 +#: ../../builtins/stdtypes.rst:34 ../../builtins/stdtypes.rst:83 +#: ../../builtins/stdtypes.rst:210 ../../builtins/stdtypes.rst:869 msgid "Boolean" msgstr "Boolesch" -#: ../../library/stdtypes.rst:34 ../../library/stdtypes.rst:83 -#: ../../library/stdtypes.rst:409 +#: ../../builtins/stdtypes.rst:34 ../../builtins/stdtypes.rst:83 +#: ../../builtins/stdtypes.rst:409 msgid "operations" msgstr "Operationen" -#: ../../library/stdtypes.rst:34 +#: ../../builtins/stdtypes.rst:34 msgid "false" msgstr "Falsch" -#: ../../library/stdtypes.rst:44 +#: ../../builtins/stdtypes.rst:44 msgid "true" msgstr "Wahr" -#: ../../library/stdtypes.rst:54 +#: ../../builtins/stdtypes.rst:54 msgid "None (Built-in object)" msgstr "None (Eingebautes Objekt)" -#: ../../library/stdtypes.rst:54 +#: ../../builtins/stdtypes.rst:54 msgid "False (Built-in object)" msgstr "False (Eingebautes Objekt)" -#: ../../library/stdtypes.rst:66 ../../library/stdtypes.rst:100 -#: ../../library/stdtypes.rst:125 ../../library/stdtypes.rst:197 -#: ../../library/stdtypes.rst:251 ../../library/stdtypes.rst:409 -#: ../../library/stdtypes.rst:1002 +#: ../../builtins/stdtypes.rst:66 ../../builtins/stdtypes.rst:100 +#: ../../builtins/stdtypes.rst:125 ../../builtins/stdtypes.rst:197 +#: ../../builtins/stdtypes.rst:251 ../../builtins/stdtypes.rst:409 +#: ../../builtins/stdtypes.rst:1005 msgid "operator" msgstr "Operator" -#: ../../library/stdtypes.rst:66 ../../library/stdtypes.rst:100 +#: ../../builtins/stdtypes.rst:66 ../../builtins/stdtypes.rst:100 msgid "or" msgstr "or" -#: ../../library/stdtypes.rst:66 ../../library/stdtypes.rst:100 +#: ../../builtins/stdtypes.rst:66 ../../builtins/stdtypes.rst:100 msgid "and" msgstr "and" -#: ../../library/stdtypes.rst:66 ../../library/stdtypes.rst:869 +#: ../../builtins/stdtypes.rst:66 ../../builtins/stdtypes.rst:869 msgid "False" msgstr "False" -#: ../../library/stdtypes.rst:66 ../../library/stdtypes.rst:869 +#: ../../builtins/stdtypes.rst:66 ../../builtins/stdtypes.rst:869 msgid "True" msgstr "True" -#: ../../library/stdtypes.rst:100 +#: ../../builtins/stdtypes.rst:100 msgid "not" msgstr "not" -#: ../../library/stdtypes.rst:125 +#: ../../builtins/stdtypes.rst:125 msgid "chaining" msgstr "Verkettung" -#: ../../library/stdtypes.rst:125 +#: ../../builtins/stdtypes.rst:125 msgid "comparisons" msgstr "Vergleiche" -#: ../../library/stdtypes.rst:125 +#: ../../builtins/stdtypes.rst:125 msgid "comparison" msgstr "Vergleich" -#: ../../library/stdtypes.rst:125 +#: ../../builtins/stdtypes.rst:125 msgid "==" msgstr "==" -#: ../../library/stdtypes.rst:125 +#: ../../builtins/stdtypes.rst:125 msgid "< (less)" msgstr "< (kleiner)" -#: ../../library/stdtypes.rst:125 +#: ../../builtins/stdtypes.rst:125 msgid "<=" msgstr "<=" -#: ../../library/stdtypes.rst:125 +#: ../../builtins/stdtypes.rst:125 msgid "> (greater)" msgstr "> (größer)" -#: ../../library/stdtypes.rst:125 +#: ../../builtins/stdtypes.rst:125 msgid ">=" msgstr ">=" -#: ../../library/stdtypes.rst:125 +#: ../../builtins/stdtypes.rst:125 msgid "!=" msgstr "!=" -#: ../../library/stdtypes.rst:125 +#: ../../builtins/stdtypes.rst:125 msgid "is" msgstr "is" -#: ../../library/stdtypes.rst:125 +#: ../../builtins/stdtypes.rst:125 msgid "is not" msgstr "is not" -#: ../../library/stdtypes.rst:165 ../../library/stdtypes.rst:210 -#: ../../library/stdtypes.rst:986 ../../library/stdtypes.rst:1192 -#: ../../library/stdtypes.rst:1214 ../../library/stdtypes.rst:1379 -#: ../../library/stdtypes.rst:1465 ../../library/stdtypes.rst:1513 -#: ../../library/stdtypes.rst:1634 ../../library/stdtypes.rst:1768 -#: ../../library/stdtypes.rst:3304 ../../library/stdtypes.rst:3323 -#: ../../library/stdtypes.rst:3436 ../../library/stdtypes.rst:5111 -#: ../../library/stdtypes.rst:5329 ../../library/stdtypes.rst:5866 -#: ../../library/stdtypes.rst:6134 ../../library/stdtypes.rst:6309 -#: ../../library/stdtypes.rst:6354 +#: ../../builtins/stdtypes.rst:165 ../../builtins/stdtypes.rst:210 +#: ../../builtins/stdtypes.rst:986 ../../builtins/stdtypes.rst:1197 +#: ../../builtins/stdtypes.rst:1219 ../../builtins/stdtypes.rst:1384 +#: ../../builtins/stdtypes.rst:1470 ../../builtins/stdtypes.rst:1518 +#: ../../builtins/stdtypes.rst:1639 ../../builtins/stdtypes.rst:1773 +#: ../../builtins/stdtypes.rst:3311 ../../builtins/stdtypes.rst:3330 +#: ../../builtins/stdtypes.rst:3443 ../../builtins/stdtypes.rst:5123 +#: ../../builtins/stdtypes.rst:5342 ../../builtins/stdtypes.rst:5881 +#: ../../builtins/stdtypes.rst:6149 ../../builtins/stdtypes.rst:6324 +#: ../../builtins/stdtypes.rst:6369 msgid "object" msgstr "Objekt" -#: ../../library/stdtypes.rst:165 ../../library/stdtypes.rst:210 -#: ../../library/stdtypes.rst:231 ../../library/stdtypes.rst:332 -#: ../../library/stdtypes.rst:351 +#: ../../builtins/stdtypes.rst:165 ../../builtins/stdtypes.rst:210 +#: ../../builtins/stdtypes.rst:231 ../../builtins/stdtypes.rst:332 +#: ../../builtins/stdtypes.rst:351 msgid "numeric" msgstr "numerisch" -#: ../../library/stdtypes.rst:165 +#: ../../builtins/stdtypes.rst:165 msgid "objects" msgstr "Objekte" -#: ../../library/stdtypes.rst:165 +#: ../../builtins/stdtypes.rst:165 msgid "comparing" msgstr "Vergleichen" -#: ../../library/stdtypes.rst:175 +#: ../../builtins/stdtypes.rst:175 msgid "__eq__() (instance method)" msgstr "__eq__() (Instanzmethode)" -#: ../../library/stdtypes.rst:175 +#: ../../builtins/stdtypes.rst:175 msgid "__ne__() (instance method)" msgstr "__ne__() (Instanzmethode)" -#: ../../library/stdtypes.rst:175 +#: ../../builtins/stdtypes.rst:175 msgid "__lt__() (instance method)" msgstr "__lt__() (Instanzmethode)" -#: ../../library/stdtypes.rst:175 +#: ../../builtins/stdtypes.rst:175 msgid "__le__() (instance method)" msgstr "__le__() (Instanzmethode)" -#: ../../library/stdtypes.rst:175 +#: ../../builtins/stdtypes.rst:175 msgid "__gt__() (instance method)" msgstr "__gt__() (Instanzmethode)" -#: ../../library/stdtypes.rst:175 +#: ../../builtins/stdtypes.rst:175 msgid "__ge__() (instance method)" msgstr "__ge__() (Instanzmethode)" -#: ../../library/stdtypes.rst:197 ../../library/stdtypes.rst:1002 +#: ../../builtins/stdtypes.rst:197 ../../builtins/stdtypes.rst:1005 msgid "in" msgstr "in" -#: ../../library/stdtypes.rst:197 ../../library/stdtypes.rst:1002 +#: ../../builtins/stdtypes.rst:197 ../../builtins/stdtypes.rst:1005 msgid "not in" msgstr "not in" -#: ../../library/stdtypes.rst:210 ../../library/stdtypes.rst:231 -#: ../../library/stdtypes.rst:409 +#: ../../builtins/stdtypes.rst:210 ../../builtins/stdtypes.rst:231 +#: ../../builtins/stdtypes.rst:409 msgid "integer" msgstr "Ganzzahl" -#: ../../library/stdtypes.rst:210 ../../library/stdtypes.rst:231 +#: ../../builtins/stdtypes.rst:210 ../../builtins/stdtypes.rst:231 msgid "floating-point" msgstr "Gleitkomma" -#: ../../library/stdtypes.rst:210 ../../library/stdtypes.rst:231 +#: ../../builtins/stdtypes.rst:210 ../../builtins/stdtypes.rst:231 msgid "complex number" msgstr "komplexe Zahl" -#: ../../library/stdtypes.rst:210 +#: ../../builtins/stdtypes.rst:210 msgid "C" msgstr "C" -#: ../../library/stdtypes.rst:210 +#: ../../builtins/stdtypes.rst:210 msgid "language" msgstr "Sprache" -#: ../../library/stdtypes.rst:231 +#: ../../builtins/stdtypes.rst:231 msgid "literals" msgstr "Literale" -#: ../../library/stdtypes.rst:231 +#: ../../builtins/stdtypes.rst:231 msgid "hexadecimal" msgstr "hexadezimal" -#: ../../library/stdtypes.rst:231 +#: ../../builtins/stdtypes.rst:231 msgid "octal" msgstr "oktal" -#: ../../library/stdtypes.rst:231 +#: ../../builtins/stdtypes.rst:231 msgid "binary" msgstr "binär" -#: ../../library/stdtypes.rst:251 +#: ../../builtins/stdtypes.rst:251 msgid "arithmetic" msgstr "Arithmetik" -#: ../../library/stdtypes.rst:251 ../../library/stdtypes.rst:1002 -#: ../../library/stdtypes.rst:1192 ../../library/stdtypes.rst:5329 -#: ../../library/stdtypes.rst:6361 ../../library/stdtypes.rst:6375 -#: ../../library/stdtypes.rst:6390 +#: ../../builtins/stdtypes.rst:251 ../../builtins/stdtypes.rst:1005 +#: ../../builtins/stdtypes.rst:1197 ../../builtins/stdtypes.rst:5342 +#: ../../builtins/stdtypes.rst:6376 ../../builtins/stdtypes.rst:6390 +#: ../../builtins/stdtypes.rst:6405 msgid "built-in function" msgstr "eingebaute Funktion" -#: ../../library/stdtypes.rst:251 +#: ../../builtins/stdtypes.rst:251 msgid "int" msgstr "int" -#: ../../library/stdtypes.rst:251 +#: ../../builtins/stdtypes.rst:251 msgid "float" msgstr "float" -#: ../../library/stdtypes.rst:251 +#: ../../builtins/stdtypes.rst:251 msgid "complex" msgstr "complex" -#: ../../library/stdtypes.rst:251 ../../library/stdtypes.rst:3176 -#: ../../library/stdtypes.rst:4473 +#: ../../builtins/stdtypes.rst:251 ../../builtins/stdtypes.rst:3183 +#: ../../builtins/stdtypes.rst:4485 msgid "+ (plus)" msgstr "+ (Plus)" -#: ../../library/stdtypes.rst:251 +#: ../../builtins/stdtypes.rst:251 msgid "unary operator" msgstr "unärer Operator" -#: ../../library/stdtypes.rst:251 +#: ../../builtins/stdtypes.rst:251 msgid "binary operator" msgstr "binärer Operator" -#: ../../library/stdtypes.rst:251 ../../library/stdtypes.rst:3176 -#: ../../library/stdtypes.rst:4473 +#: ../../builtins/stdtypes.rst:251 ../../builtins/stdtypes.rst:3183 +#: ../../builtins/stdtypes.rst:4485 msgid "- (minus)" msgstr "- (Minus)" -#: ../../library/stdtypes.rst:251 ../../library/stdtypes.rst:3133 -#: ../../library/stdtypes.rst:4430 +#: ../../builtins/stdtypes.rst:251 ../../builtins/stdtypes.rst:3140 +#: ../../builtins/stdtypes.rst:4442 msgid "* (asterisk)" msgstr "* (Sternchen)" -#: ../../library/stdtypes.rst:251 +#: ../../builtins/stdtypes.rst:251 msgid "/ (slash)" msgstr "/ (Schrägstrich)" -#: ../../library/stdtypes.rst:251 +#: ../../builtins/stdtypes.rst:251 msgid "//" msgstr "//" -#: ../../library/stdtypes.rst:251 ../../library/stdtypes.rst:3096 -#: ../../library/stdtypes.rst:4398 +#: ../../builtins/stdtypes.rst:251 ../../builtins/stdtypes.rst:3103 +#: ../../builtins/stdtypes.rst:4410 msgid "% (percent)" msgstr "% (Prozent)" -#: ../../library/stdtypes.rst:251 +#: ../../builtins/stdtypes.rst:251 msgid "**" msgstr "**" -#: ../../library/stdtypes.rst:332 ../../library/stdtypes.rst:409 -#: ../../library/stdtypes.rst:1002 ../../library/stdtypes.rst:1229 -#: ../../library/stdtypes.rst:5329 +#: ../../builtins/stdtypes.rst:332 ../../builtins/stdtypes.rst:409 +#: ../../builtins/stdtypes.rst:1005 ../../builtins/stdtypes.rst:1234 +#: ../../builtins/stdtypes.rst:5342 msgid "operations on" msgstr "Operationen auf" -#: ../../library/stdtypes.rst:332 +#: ../../builtins/stdtypes.rst:332 msgid "conjugate() (complex number method)" msgstr "conjugate() (Methode für komplexe Zahlen)" -#: ../../library/stdtypes.rst:351 ../../library/stdtypes.rst:1836 -#: ../../library/stdtypes.rst:3304 ../../library/stdtypes.rst:6390 +#: ../../builtins/stdtypes.rst:351 ../../builtins/stdtypes.rst:1841 +#: ../../builtins/stdtypes.rst:3311 ../../builtins/stdtypes.rst:6405 msgid "module" msgstr "Modul" -#: ../../library/stdtypes.rst:351 +#: ../../builtins/stdtypes.rst:351 msgid "math" msgstr "math" -#: ../../library/stdtypes.rst:351 +#: ../../builtins/stdtypes.rst:351 msgid "floor() (in module math)" msgstr "floor() (im Modul math)" -#: ../../library/stdtypes.rst:351 +#: ../../builtins/stdtypes.rst:351 msgid "ceil() (in module math)" msgstr "ceil() (im Modul math)" -#: ../../library/stdtypes.rst:351 +#: ../../builtins/stdtypes.rst:351 msgid "trunc() (in module math)" msgstr "trunc() (im Modul math)" -#: ../../library/stdtypes.rst:351 +#: ../../builtins/stdtypes.rst:351 msgid "conversions" msgstr "Konvertierungen" -#: ../../library/stdtypes.rst:409 +#: ../../builtins/stdtypes.rst:409 msgid "bitwise" msgstr "bitweise" -#: ../../library/stdtypes.rst:409 +#: ../../builtins/stdtypes.rst:409 msgid "shifting" msgstr "Shiften" -#: ../../library/stdtypes.rst:409 +#: ../../builtins/stdtypes.rst:409 msgid "masking" msgstr "Maskieren" -#: ../../library/stdtypes.rst:409 +#: ../../builtins/stdtypes.rst:409 msgid "| (vertical bar)" msgstr "| (vertikaler Strich)" -#: ../../library/stdtypes.rst:409 +#: ../../builtins/stdtypes.rst:409 msgid "^ (caret)" msgstr "^ (Caret)" -#: ../../library/stdtypes.rst:409 +#: ../../builtins/stdtypes.rst:409 msgid "& (ampersand)" msgstr "& (Kaufmanns-Und)" -#: ../../library/stdtypes.rst:409 +#: ../../builtins/stdtypes.rst:409 msgid "<<" msgstr "<<" -#: ../../library/stdtypes.rst:409 +#: ../../builtins/stdtypes.rst:409 msgid ">>" msgstr ">>" -#: ../../library/stdtypes.rst:409 +#: ../../builtins/stdtypes.rst:409 msgid "~ (tilde)" msgstr "~ (Tilde)" -#: ../../library/stdtypes.rst:869 +#: ../../builtins/stdtypes.rst:869 msgid "values" msgstr "Werte" -#: ../../library/stdtypes.rst:899 +#: ../../builtins/stdtypes.rst:899 msgid "iterator protocol" msgstr "Iterator-Protokoll" -#: ../../library/stdtypes.rst:899 ../../library/stdtypes.rst:5779 +#: ../../builtins/stdtypes.rst:899 ../../builtins/stdtypes.rst:5794 msgid "protocol" msgstr "Protokoll" -#: ../../library/stdtypes.rst:899 +#: ../../builtins/stdtypes.rst:899 msgid "iterator" msgstr "Iterator" -#: ../../library/stdtypes.rst:899 ../../library/stdtypes.rst:986 -#: ../../library/stdtypes.rst:1002 ../../library/stdtypes.rst:1192 -#: ../../library/stdtypes.rst:1214 ../../library/stdtypes.rst:1229 +#: ../../builtins/stdtypes.rst:899 ../../builtins/stdtypes.rst:986 +#: ../../builtins/stdtypes.rst:1005 ../../builtins/stdtypes.rst:1197 +#: ../../builtins/stdtypes.rst:1219 ../../builtins/stdtypes.rst:1234 msgid "sequence" msgstr "Sequenz" -#: ../../library/stdtypes.rst:899 +#: ../../builtins/stdtypes.rst:899 msgid "iteration" msgstr "Iteration" -#: ../../library/stdtypes.rst:899 +#: ../../builtins/stdtypes.rst:899 msgid "container" msgstr "Container" -#: ../../library/stdtypes.rst:899 +#: ../../builtins/stdtypes.rst:899 msgid "iteration over" msgstr "Iteration über" -#: ../../library/stdtypes.rst:1002 ../../library/stdtypes.rst:5329 +#: ../../builtins/stdtypes.rst:1005 ../../builtins/stdtypes.rst:5342 msgid "len" msgstr "len" -#: ../../library/stdtypes.rst:1002 +#: ../../builtins/stdtypes.rst:1005 msgid "min" msgstr "min" -#: ../../library/stdtypes.rst:1002 +#: ../../builtins/stdtypes.rst:1005 msgid "max" msgstr "max" -#: ../../library/stdtypes.rst:1002 +#: ../../builtins/stdtypes.rst:1005 msgid "concatenation" msgstr "Verkettung" -#: ../../library/stdtypes.rst:1002 +#: ../../builtins/stdtypes.rst:1005 msgid "operation" msgstr "Operation" -#: ../../library/stdtypes.rst:1002 +#: ../../builtins/stdtypes.rst:1005 msgid "repetition" msgstr "Wiederholung" -#: ../../library/stdtypes.rst:1002 ../../library/stdtypes.rst:1229 +#: ../../builtins/stdtypes.rst:1005 ../../builtins/stdtypes.rst:1234 msgid "subscript" msgstr "Subskript" -#: ../../library/stdtypes.rst:1002 ../../library/stdtypes.rst:1229 +#: ../../builtins/stdtypes.rst:1005 ../../builtins/stdtypes.rst:1234 msgid "slice" msgstr "Slice" -#: ../../library/stdtypes.rst:1049 +#: ../../builtins/stdtypes.rst:1052 msgid "loop" msgstr "Schleife" -#: ../../library/stdtypes.rst:1049 +#: ../../builtins/stdtypes.rst:1052 msgid "over mutable sequence" msgstr "über veränderliche Sequenz" -#: ../../library/stdtypes.rst:1049 +#: ../../builtins/stdtypes.rst:1052 msgid "mutable sequence" msgstr "veränderliche Sequenz" -#: ../../library/stdtypes.rst:1049 +#: ../../builtins/stdtypes.rst:1052 msgid "loop over" msgstr "Schleife über" -#: ../../library/stdtypes.rst:1192 +#: ../../builtins/stdtypes.rst:1197 msgid "immutable" msgstr "unveränderlich" -#: ../../library/stdtypes.rst:1192 ../../library/stdtypes.rst:1465 +#: ../../builtins/stdtypes.rst:1197 ../../builtins/stdtypes.rst:1470 msgid "tuple" msgstr "tuple" -#: ../../library/stdtypes.rst:1192 +#: ../../builtins/stdtypes.rst:1197 msgid "hash" msgstr "hash" -#: ../../library/stdtypes.rst:1214 +#: ../../builtins/stdtypes.rst:1219 msgid "mutable" msgstr "veränderlich" -#: ../../library/stdtypes.rst:1214 ../../library/stdtypes.rst:1229 -#: ../../library/stdtypes.rst:1379 +#: ../../builtins/stdtypes.rst:1219 ../../builtins/stdtypes.rst:1234 +#: ../../builtins/stdtypes.rst:1384 msgid "list" msgstr "list" -#: ../../library/stdtypes.rst:1214 ../../library/stdtypes.rst:3304 -#: ../../library/stdtypes.rst:3436 ../../library/stdtypes.rst:3575 -#: ../../library/stdtypes.rst:4398 +#: ../../builtins/stdtypes.rst:1219 ../../builtins/stdtypes.rst:3311 +#: ../../builtins/stdtypes.rst:3443 ../../builtins/stdtypes.rst:3582 +#: ../../builtins/stdtypes.rst:4410 msgid "bytearray" msgstr "bytearray" -#: ../../library/stdtypes.rst:1229 ../../library/stdtypes.rst:5329 -#: ../../library/stdtypes.rst:6134 ../../library/stdtypes.rst:6390 +#: ../../builtins/stdtypes.rst:1234 ../../builtins/stdtypes.rst:5342 +#: ../../builtins/stdtypes.rst:6149 ../../builtins/stdtypes.rst:6405 msgid "type" msgstr "Typ" -#: ../../library/stdtypes.rst:1229 +#: ../../builtins/stdtypes.rst:1234 msgid "assignment" msgstr "Zuweisung" -#: ../../library/stdtypes.rst:1229 ../../library/stdtypes.rst:5329 +#: ../../builtins/stdtypes.rst:1234 ../../builtins/stdtypes.rst:5342 msgid "del" msgstr "del" -#: ../../library/stdtypes.rst:1513 +#: ../../builtins/stdtypes.rst:1518 msgid "range" msgstr "range" -#: ../../library/stdtypes.rst:1634 ../../library/stdtypes.rst:1781 -#: ../../library/stdtypes.rst:1828 ../../library/stdtypes.rst:2924 -#: ../../library/stdtypes.rst:3096 +#: ../../builtins/stdtypes.rst:1639 ../../builtins/stdtypes.rst:1786 +#: ../../builtins/stdtypes.rst:1833 ../../builtins/stdtypes.rst:2931 +#: ../../builtins/stdtypes.rst:3103 msgid "string" msgstr "String" -#: ../../library/stdtypes.rst:1634 +#: ../../builtins/stdtypes.rst:1639 msgid "text sequence type" msgstr "Textsequenztyp" -#: ../../library/stdtypes.rst:1634 ../../library/stdtypes.rst:1781 -#: ../../library/stdtypes.rst:1801 +#: ../../builtins/stdtypes.rst:1639 ../../builtins/stdtypes.rst:1786 +#: ../../builtins/stdtypes.rst:1806 msgid "str (built-in class)" msgstr "str (eingebaute Klasse)" -#: ../../library/stdtypes.rst:1634 +#: ../../builtins/stdtypes.rst:1639 msgid "(see also string)" msgstr "(siehe auch string)" -#: ../../library/stdtypes.rst:1768 +#: ../../builtins/stdtypes.rst:1773 msgid "io.StringIO" msgstr "io.StringIO" -#: ../../library/stdtypes.rst:1801 ../../library/stdtypes.rst:3296 +#: ../../builtins/stdtypes.rst:1806 ../../builtins/stdtypes.rst:3303 msgid "buffer protocol" msgstr "Pufferprotokoll" -#: ../../library/stdtypes.rst:1801 ../../library/stdtypes.rst:3304 -#: ../../library/stdtypes.rst:3323 ../../library/stdtypes.rst:3575 -#: ../../library/stdtypes.rst:4398 +#: ../../builtins/stdtypes.rst:1806 ../../builtins/stdtypes.rst:3311 +#: ../../builtins/stdtypes.rst:3330 ../../builtins/stdtypes.rst:3582 +#: ../../builtins/stdtypes.rst:4410 msgid "bytes" msgstr "bytes" -#: ../../library/stdtypes.rst:1828 ../../library/stdtypes.rst:3575 +#: ../../builtins/stdtypes.rst:1833 ../../builtins/stdtypes.rst:3582 msgid "methods" msgstr "Methoden" -#: ../../library/stdtypes.rst:1836 +#: ../../builtins/stdtypes.rst:1841 msgid "re" msgstr "re" -#: ../../library/stdtypes.rst:2686 ../../library/stdtypes.rst:4252 +#: ../../builtins/stdtypes.rst:2693 ../../builtins/stdtypes.rst:4264 msgid "universal newlines" msgstr "universelle Zeilenenden" -#: ../../library/stdtypes.rst:2686 +#: ../../builtins/stdtypes.rst:2693 msgid "str.splitlines method" msgstr "str.splitlines-Methode" -#: ../../library/stdtypes.rst:2924 +#: ../../builtins/stdtypes.rst:2931 msgid "! formatted string literal" msgstr "! formatiertes String-Literal" -#: ../../library/stdtypes.rst:2924 +#: ../../builtins/stdtypes.rst:2931 msgid "formatted string literals" msgstr "formatierte String-Literale" -#: ../../library/stdtypes.rst:2924 +#: ../../builtins/stdtypes.rst:2931 msgid "! f-string" msgstr "! f-String" -#: ../../library/stdtypes.rst:2924 +#: ../../builtins/stdtypes.rst:2931 msgid "f-strings" msgstr "f-Strings" -#: ../../library/stdtypes.rst:2924 +#: ../../builtins/stdtypes.rst:2931 msgid "fstring" msgstr "fstring" -#: ../../library/stdtypes.rst:2924 +#: ../../builtins/stdtypes.rst:2931 msgid "interpolated string literal" msgstr "interpoliertes String-Literal" -#: ../../library/stdtypes.rst:2924 +#: ../../builtins/stdtypes.rst:2931 msgid "formatted literal" msgstr "formatiertes Literal" -#: ../../library/stdtypes.rst:2924 +#: ../../builtins/stdtypes.rst:2931 msgid "interpolated literal" msgstr "interpoliertes Literal" -#: ../../library/stdtypes.rst:2924 +#: ../../builtins/stdtypes.rst:2931 msgid "{} (curly brackets)" msgstr "{} (geschweifte Klammern)" -#: ../../library/stdtypes.rst:2924 +#: ../../builtins/stdtypes.rst:2931 msgid "in formatted string literal" msgstr "in formatiertem String-Literal" -#: ../../library/stdtypes.rst:2924 +#: ../../builtins/stdtypes.rst:2931 msgid "! (exclamation mark)" msgstr "! (Ausrufezeichen)" -#: ../../library/stdtypes.rst:2924 +#: ../../builtins/stdtypes.rst:2931 msgid ": (colon)" msgstr ": (Doppelpunkt)" -#: ../../library/stdtypes.rst:2924 +#: ../../builtins/stdtypes.rst:2931 msgid "= (equals)" msgstr "= (Gleichheitszeichen)" -#: ../../library/stdtypes.rst:2924 +#: ../../builtins/stdtypes.rst:2931 msgid "for help in debugging using string literals" msgstr "als Hilfe beim Debuggen mittels String-Literalen" -#: ../../library/stdtypes.rst:3096 +#: ../../builtins/stdtypes.rst:3103 msgid "formatting, string (%)" msgstr "Formatierung, String (%)" -#: ../../library/stdtypes.rst:3096 +#: ../../builtins/stdtypes.rst:3103 msgid "interpolation, string (%)" msgstr "Interpolation, String (%)" -#: ../../library/stdtypes.rst:3096 +#: ../../builtins/stdtypes.rst:3103 msgid "formatting, printf" msgstr "Formatierung, printf" -#: ../../library/stdtypes.rst:3096 +#: ../../builtins/stdtypes.rst:3103 msgid "interpolation, printf" msgstr "Interpolation, printf" -#: ../../library/stdtypes.rst:3096 ../../library/stdtypes.rst:4398 +#: ../../builtins/stdtypes.rst:3103 ../../builtins/stdtypes.rst:4410 msgid "printf-style formatting" msgstr "Formatierung im printf-Stil" -#: ../../library/stdtypes.rst:3096 ../../library/stdtypes.rst:4398 +#: ../../builtins/stdtypes.rst:3103 ../../builtins/stdtypes.rst:4410 msgid "sprintf-style formatting" msgstr "Formatierung im sprintf-Stil" -#: ../../library/stdtypes.rst:3133 ../../library/stdtypes.rst:4430 +#: ../../builtins/stdtypes.rst:3140 ../../builtins/stdtypes.rst:4442 msgid "() (parentheses)" msgstr "() (runde Klammern)" -#: ../../library/stdtypes.rst:3133 ../../library/stdtypes.rst:3176 -#: ../../library/stdtypes.rst:4430 ../../library/stdtypes.rst:4473 +#: ../../builtins/stdtypes.rst:3140 ../../builtins/stdtypes.rst:3183 +#: ../../builtins/stdtypes.rst:4442 ../../builtins/stdtypes.rst:4485 msgid "in printf-style formatting" msgstr "in Formatierung im printf-Stil" -#: ../../library/stdtypes.rst:3133 ../../library/stdtypes.rst:4430 +#: ../../builtins/stdtypes.rst:3140 ../../builtins/stdtypes.rst:4442 msgid ". (dot)" msgstr ". (Punkt)" -#: ../../library/stdtypes.rst:3176 ../../library/stdtypes.rst:4473 +#: ../../builtins/stdtypes.rst:3183 ../../builtins/stdtypes.rst:4485 msgid "# (hash)" msgstr "# (Raute)" -#: ../../library/stdtypes.rst:3176 ../../library/stdtypes.rst:4473 +#: ../../builtins/stdtypes.rst:3183 ../../builtins/stdtypes.rst:4485 msgid "space" msgstr "Leerzeichen" -#: ../../library/stdtypes.rst:3296 +#: ../../builtins/stdtypes.rst:3303 msgid "binary sequence types" msgstr "binäre Sequenztypen" -#: ../../library/stdtypes.rst:3304 +#: ../../builtins/stdtypes.rst:3311 msgid "memoryview" msgstr "memoryview" -#: ../../library/stdtypes.rst:3304 +#: ../../builtins/stdtypes.rst:3311 msgid "array" msgstr "Array" -#: ../../library/stdtypes.rst:4252 +#: ../../builtins/stdtypes.rst:4264 msgid "bytes.splitlines method" msgstr "bytes.splitlines-Methode" -#: ../../library/stdtypes.rst:4252 +#: ../../builtins/stdtypes.rst:4264 msgid "bytearray.splitlines method" msgstr "bytearray.splitlines-Methode" -#: ../../library/stdtypes.rst:4398 +#: ../../builtins/stdtypes.rst:4410 msgid "formatting" msgstr "Formatierung" -#: ../../library/stdtypes.rst:4398 +#: ../../builtins/stdtypes.rst:4410 msgid "bytes (%)" msgstr "bytes (%)" -#: ../../library/stdtypes.rst:4398 +#: ../../builtins/stdtypes.rst:4410 msgid "bytearray (%)" msgstr "bytearray (%)" -#: ../../library/stdtypes.rst:4398 +#: ../../builtins/stdtypes.rst:4410 msgid "interpolation" msgstr "Interpolation" -#: ../../library/stdtypes.rst:5111 +#: ../../builtins/stdtypes.rst:5123 msgid "set" msgstr "set" -#: ../../library/stdtypes.rst:5329 +#: ../../builtins/stdtypes.rst:5342 msgid "mapping" msgstr "Mapping" -#: ../../library/stdtypes.rst:5329 +#: ../../builtins/stdtypes.rst:5342 msgid "dictionary" msgstr "Dictionary" -#: ../../library/stdtypes.rst:5440 +#: ../../builtins/stdtypes.rst:5455 msgid "__missing__()" msgstr "__missing__()" -#: ../../library/stdtypes.rst:5779 +#: ../../builtins/stdtypes.rst:5794 msgid "context manager" msgstr "Kontext-Manager" -#: ../../library/stdtypes.rst:5779 +#: ../../builtins/stdtypes.rst:5794 msgid "context management protocol" msgstr "Kontextmanagement-Protokoll" -#: ../../library/stdtypes.rst:5779 +#: ../../builtins/stdtypes.rst:5794 msgid "context management" msgstr "Kontextmanagement" -#: ../../library/stdtypes.rst:5854 +#: ../../builtins/stdtypes.rst:5869 msgid "annotation" msgstr "Annotation" -#: ../../library/stdtypes.rst:5854 +#: ../../builtins/stdtypes.rst:5869 msgid "type annotation; type hint" msgstr "Typ-Annotation; Type-Hint" -#: ../../library/stdtypes.rst:5866 +#: ../../builtins/stdtypes.rst:5881 msgid "GenericAlias" msgstr "GenericAlias" -#: ../../library/stdtypes.rst:5866 +#: ../../builtins/stdtypes.rst:5881 msgid "Generic" msgstr "Generic" -#: ../../library/stdtypes.rst:5866 +#: ../../builtins/stdtypes.rst:5881 msgid "Alias" msgstr "Alias" -#: ../../library/stdtypes.rst:6134 +#: ../../builtins/stdtypes.rst:6149 msgid "Union" msgstr "Union" -#: ../../library/stdtypes.rst:6134 +#: ../../builtins/stdtypes.rst:6149 msgid "union" msgstr "Union" -#: ../../library/stdtypes.rst:6309 +#: ../../builtins/stdtypes.rst:6324 msgid "method" msgstr "Methode" -#: ../../library/stdtypes.rst:6354 +#: ../../builtins/stdtypes.rst:6369 msgid "code" msgstr "Code" -#: ../../library/stdtypes.rst:6354 +#: ../../builtins/stdtypes.rst:6369 msgid "code object" msgstr "Code-Objekt" -#: ../../library/stdtypes.rst:6361 +#: ../../builtins/stdtypes.rst:6376 msgid "compile" msgstr "compile" -#: ../../library/stdtypes.rst:6361 +#: ../../builtins/stdtypes.rst:6376 msgid "__code__ (function object attribute)" msgstr "__code__ (Funktionsobjekt-Attribut)" -#: ../../library/stdtypes.rst:6375 +#: ../../builtins/stdtypes.rst:6390 msgid "exec" msgstr "exec" -#: ../../library/stdtypes.rst:6375 +#: ../../builtins/stdtypes.rst:6390 msgid "eval" msgstr "eval" -#: ../../library/stdtypes.rst:6414 +#: ../../builtins/stdtypes.rst:6429 msgid "..." msgstr "..." -#: ../../library/stdtypes.rst:6414 +#: ../../builtins/stdtypes.rst:6429 msgid "ellipsis literal" msgstr "Ellipsis-Literal" diff --git a/builtins/threadsafety.po b/builtins/threadsafety.po index 70af4850..ec74b522 100644 --- a/builtins/threadsafety.po +++ b/builtins/threadsafety.po @@ -7,14 +7,14 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-09-22 21:21+0200\n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" "PO-Revision-Date: 2026-09-22 21:21+0200\n" "Last-Translator: Automatically generated\n" "Language-Team: none\n" +"Language: de\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: de\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../../builtins/threadsafety.rst:5 diff --git a/builtins/time-complexity.po b/builtins/time-complexity.po index a3a9900f..1be0a8d4 100644 --- a/builtins/time-complexity.po +++ b/builtins/time-complexity.po @@ -7,14 +7,14 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-09-22 21:21+0200\n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" "PO-Revision-Date: 2026-09-22 21:21+0200\n" "Last-Translator: Automatically generated\n" "Language-Team: none\n" +"Language: de\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: de\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../../builtins/time-complexity.rst:5 diff --git a/c-api/bytearray.po b/c-api/bytearray.po index 7061198d..53fa7305 100644 --- a/c-api/bytearray.po +++ b/c-api/bytearray.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-09-14 20:17+0000\n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Language-Team: German (https://app.transifex.com/python-doc/teams/5390/de/)\n" "Language: de\n" @@ -26,98 +26,106 @@ msgid "" "This subtype of :c:type:`PyObject` represents a Python bytearray object." msgstr "" -#: ../../c-api/bytearray.rst:18 +#: ../../c-api/bytearray.rst:17 +msgid "" +"The internal buffer of :c:type:`PyByteArrayObject` always includes an extra " +"trailing null byte for compatibility with null terminated C strings. This " +"extra byte is not counted in :c:func:`PyByteArray_Size` nor in the *len* " +"arguments of the functions below." +msgstr "" + +#: ../../c-api/bytearray.rst:24 msgid "" "This instance of :c:type:`PyTypeObject` represents the Python bytearray " "type; it is the same object as :class:`bytearray` in the Python layer." msgstr "" -#: ../../c-api/bytearray.rst:23 +#: ../../c-api/bytearray.rst:29 msgid "Type check macros" msgstr "" -#: ../../c-api/bytearray.rst:27 +#: ../../c-api/bytearray.rst:33 msgid "" "Return true if the object *o* is a bytearray object or an instance of a " "subtype of the bytearray type. This function always succeeds." msgstr "" -#: ../../c-api/bytearray.rst:33 +#: ../../c-api/bytearray.rst:39 msgid "" "Return true if the object *o* is a bytearray object, but not an instance of " "a subtype of the bytearray type. This function always succeeds." msgstr "" -#: ../../c-api/bytearray.rst:38 +#: ../../c-api/bytearray.rst:44 msgid "Direct API functions" msgstr "" -#: ../../c-api/bytearray.rst:42 +#: ../../c-api/bytearray.rst:48 msgid "" "Return a new bytearray object from any object, *o*, that implements the :ref:" "`buffer protocol `." msgstr "" -#: ../../c-api/bytearray.rst:45 ../../c-api/bytearray.rst:56 -#: ../../c-api/bytearray.rst:63 +#: ../../c-api/bytearray.rst:51 ../../c-api/bytearray.rst:62 +#: ../../c-api/bytearray.rst:69 msgid "On failure, return ``NULL`` with an exception set." msgstr "" -#: ../../c-api/bytearray.rst:48 ../../c-api/bytearray.rst:66 +#: ../../c-api/bytearray.rst:54 ../../c-api/bytearray.rst:72 msgid "" "If the object implements the buffer protocol, then the buffer must not be " "mutated while the bytearray object is being created." msgstr "" -#: ../../c-api/bytearray.rst:54 +#: ../../c-api/bytearray.rst:60 msgid "Create a new bytearray object from *string* and its length, *len*." msgstr "" -#: ../../c-api/bytearray.rst:61 +#: ../../c-api/bytearray.rst:67 msgid "" "Concat bytearrays *a* and *b* and return a new bytearray with the result." msgstr "" -#: ../../c-api/bytearray.rst:72 +#: ../../c-api/bytearray.rst:78 msgid "Return the size of *bytearray* after checking for a ``NULL`` pointer." msgstr "" -#: ../../c-api/bytearray.rst:77 +#: ../../c-api/bytearray.rst:83 msgid "" "Return the contents of *bytearray* as a char array after checking for a " "``NULL`` pointer. The returned array always has an extra null byte appended." msgstr "" -#: ../../c-api/bytearray.rst:82 ../../c-api/bytearray.rst:104 +#: ../../c-api/bytearray.rst:88 ../../c-api/bytearray.rst:110 msgid "" "It is not thread-safe to mutate the bytearray object while using the " "returned char array." msgstr "" -#: ../../c-api/bytearray.rst:87 +#: ../../c-api/bytearray.rst:93 msgid "" "Resize the internal buffer of *bytearray* to *len*. Failure is a ``-1`` " "return with an exception set." msgstr "" -#: ../../c-api/bytearray.rst:90 +#: ../../c-api/bytearray.rst:96 msgid "" "A negative *len* will now result in an exception being set and -1 returned." msgstr "" -#: ../../c-api/bytearray.rst:95 +#: ../../c-api/bytearray.rst:101 msgid "Macros" msgstr "" -#: ../../c-api/bytearray.rst:97 +#: ../../c-api/bytearray.rst:103 msgid "These macros trade safety for speed and they don't check pointers." msgstr "" -#: ../../c-api/bytearray.rst:101 +#: ../../c-api/bytearray.rst:107 msgid "Similar to :c:func:`PyByteArray_AsString`, but without error checking." msgstr "" -#: ../../c-api/bytearray.rst:109 +#: ../../c-api/bytearray.rst:115 msgid "Similar to :c:func:`PyByteArray_Size`, but without error checking." msgstr "" diff --git a/c-api/bytes.po b/c-api/bytes.po index 07b6cef4..dbf8d18d 100644 --- a/c-api/bytes.po +++ b/c-api/bytes.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-09-14 20:17+0000\n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Language-Team: German (https://app.transifex.com/python-doc/teams/5390/de/)\n" "Language: de\n" @@ -27,49 +27,57 @@ msgid "" "called with a non-bytes parameter." msgstr "" -#: ../../c-api/bytes.rst:16 +#: ../../c-api/bytes.rst:13 +msgid "" +"The internal buffer of :c:type:`PyBytesObject` always includes an extra " +"trailing null byte for compatibility with null terminated C strings. This " +"extra byte is not counted in :c:func:`PyBytes_Size` nor in the various " +"*length* and *size* arguments of the functions below." +msgstr "" + +#: ../../c-api/bytes.rst:23 msgid "This subtype of :c:type:`PyObject` represents a Python bytes object." msgstr "" -#: ../../c-api/bytes.rst:21 +#: ../../c-api/bytes.rst:28 msgid "" "This instance of :c:type:`PyTypeObject` represents the Python bytes type; it " "is the same object as :class:`bytes` in the Python layer." msgstr "" -#: ../../c-api/bytes.rst:27 +#: ../../c-api/bytes.rst:34 msgid "" "Return true if the object *o* is a bytes object or an instance of a subtype " "of the bytes type. This function always succeeds." msgstr "" -#: ../../c-api/bytes.rst:33 +#: ../../c-api/bytes.rst:40 msgid "" "Return true if the object *o* is a bytes object, but not an instance of a " "subtype of the bytes type. This function always succeeds." msgstr "" -#: ../../c-api/bytes.rst:39 +#: ../../c-api/bytes.rst:46 msgid "" "Return a new bytes object with a copy of the string *v* as value on success, " "and ``NULL`` on failure. The parameter *v* must not be ``NULL``; it will " "not be checked." msgstr "" -#: ../../c-api/bytes.rst:46 +#: ../../c-api/bytes.rst:53 msgid "" "Return a new bytes object with a copy of the string *v* as value and length " "*len* on success, and ``NULL`` on failure. If *v* is ``NULL``, the contents " "of the bytes object are uninitialized." msgstr "" -#: ../../c-api/bytes.rst:50 +#: ../../c-api/bytes.rst:57 msgid "" "Use the :c:type:`PyBytesWriter` API instead of " "``PyBytes_FromStringAndSize(NULL, len)``." msgstr "" -#: ../../c-api/bytes.rst:57 +#: ../../c-api/bytes.rst:64 msgid "" "Take a C :c:func:`printf`\\ -style *format* string and a variable number of " "arguments, calculate the size of the resulting Python bytes object and " @@ -79,193 +87,193 @@ msgid "" "allowed:" msgstr "" -#: ../../c-api/bytes.rst:69 +#: ../../c-api/bytes.rst:76 msgid "Format Characters" msgstr "" -#: ../../c-api/bytes.rst:69 +#: ../../c-api/bytes.rst:76 msgid "Type" msgstr "" -#: ../../c-api/bytes.rst:69 +#: ../../c-api/bytes.rst:76 msgid "Comment" msgstr "" -#: ../../c-api/bytes.rst:71 +#: ../../c-api/bytes.rst:78 msgid "``%%``" msgstr "" -#: ../../c-api/bytes.rst:71 +#: ../../c-api/bytes.rst:78 msgid "*n/a*" msgstr "" -#: ../../c-api/bytes.rst:71 +#: ../../c-api/bytes.rst:78 msgid "The literal % character." msgstr "" -#: ../../c-api/bytes.rst:73 +#: ../../c-api/bytes.rst:80 msgid "``%c``" msgstr "" -#: ../../c-api/bytes.rst:73 ../../c-api/bytes.rst:76 ../../c-api/bytes.rst:94 -#: ../../c-api/bytes.rst:97 +#: ../../c-api/bytes.rst:80 ../../c-api/bytes.rst:83 ../../c-api/bytes.rst:101 +#: ../../c-api/bytes.rst:104 msgid "int" msgstr "" -#: ../../c-api/bytes.rst:73 +#: ../../c-api/bytes.rst:80 msgid "A single byte, represented as a C int." msgstr "" -#: ../../c-api/bytes.rst:76 +#: ../../c-api/bytes.rst:83 msgid "``%d``" msgstr "" -#: ../../c-api/bytes.rst:76 +#: ../../c-api/bytes.rst:83 msgid "Equivalent to ``printf(\"%d\")``. [1]_" msgstr "" -#: ../../c-api/bytes.rst:79 +#: ../../c-api/bytes.rst:86 msgid "``%u``" msgstr "" -#: ../../c-api/bytes.rst:79 +#: ../../c-api/bytes.rst:86 msgid "unsigned int" msgstr "" -#: ../../c-api/bytes.rst:79 +#: ../../c-api/bytes.rst:86 msgid "Equivalent to ``printf(\"%u\")``. [1]_" msgstr "" -#: ../../c-api/bytes.rst:82 +#: ../../c-api/bytes.rst:89 msgid "``%ld``" msgstr "" -#: ../../c-api/bytes.rst:82 +#: ../../c-api/bytes.rst:89 msgid "long" msgstr "" -#: ../../c-api/bytes.rst:82 +#: ../../c-api/bytes.rst:89 msgid "Equivalent to ``printf(\"%ld\")``. [1]_" msgstr "" -#: ../../c-api/bytes.rst:85 +#: ../../c-api/bytes.rst:92 msgid "``%lu``" msgstr "" -#: ../../c-api/bytes.rst:85 +#: ../../c-api/bytes.rst:92 msgid "unsigned long" msgstr "" -#: ../../c-api/bytes.rst:85 +#: ../../c-api/bytes.rst:92 msgid "Equivalent to ``printf(\"%lu\")``. [1]_" msgstr "" -#: ../../c-api/bytes.rst:88 +#: ../../c-api/bytes.rst:95 msgid "``%zd``" msgstr "" -#: ../../c-api/bytes.rst:88 +#: ../../c-api/bytes.rst:95 msgid ":c:type:` Py_ssize_t`" msgstr "" -#: ../../c-api/bytes.rst:88 +#: ../../c-api/bytes.rst:95 msgid "Equivalent to ``printf(\"%zd\")``. [1]_" msgstr "" -#: ../../c-api/bytes.rst:91 +#: ../../c-api/bytes.rst:98 msgid "``%zu``" msgstr "" -#: ../../c-api/bytes.rst:91 +#: ../../c-api/bytes.rst:98 msgid "size_t" msgstr "" -#: ../../c-api/bytes.rst:91 +#: ../../c-api/bytes.rst:98 msgid "Equivalent to ``printf(\"%zu\")``. [1]_" msgstr "" -#: ../../c-api/bytes.rst:94 +#: ../../c-api/bytes.rst:101 msgid "``%i``" msgstr "" -#: ../../c-api/bytes.rst:94 +#: ../../c-api/bytes.rst:101 msgid "Equivalent to ``printf(\"%i\")``. [1]_" msgstr "" -#: ../../c-api/bytes.rst:97 +#: ../../c-api/bytes.rst:104 msgid "``%x``" msgstr "" -#: ../../c-api/bytes.rst:97 +#: ../../c-api/bytes.rst:104 msgid "Equivalent to ``printf(\"%x\")``. [1]_" msgstr "" -#: ../../c-api/bytes.rst:100 +#: ../../c-api/bytes.rst:107 msgid "``%s``" msgstr "" -#: ../../c-api/bytes.rst:100 +#: ../../c-api/bytes.rst:107 msgid "const char\\*" msgstr "" -#: ../../c-api/bytes.rst:100 +#: ../../c-api/bytes.rst:107 msgid "A null-terminated C character array." msgstr "" -#: ../../c-api/bytes.rst:103 +#: ../../c-api/bytes.rst:110 msgid "``%p``" msgstr "" -#: ../../c-api/bytes.rst:103 +#: ../../c-api/bytes.rst:110 msgid "const void\\*" msgstr "" -#: ../../c-api/bytes.rst:103 +#: ../../c-api/bytes.rst:110 msgid "" "The hex representation of a C pointer. Mostly equivalent to " "``printf(\"%p\")`` except that it is guaranteed to start with the literal " "``0x`` regardless of what the platform's ``printf`` yields." msgstr "" -#: ../../c-api/bytes.rst:112 +#: ../../c-api/bytes.rst:119 msgid "" "An unrecognized format character causes all the rest of the format string to " "be copied as-is to the result object, and any extra arguments discarded." msgstr "" -#: ../../c-api/bytes.rst:115 +#: ../../c-api/bytes.rst:122 msgid "" "For integer specifiers (d, u, ld, lu, zd, zu, i, x): the 0-conversion flag " "has effect even when a precision is given." msgstr "" -#: ../../c-api/bytes.rst:121 +#: ../../c-api/bytes.rst:128 msgid "" "Identical to :c:func:`PyBytes_FromFormat` except that it takes exactly two " "arguments." msgstr "" -#: ../../c-api/bytes.rst:127 +#: ../../c-api/bytes.rst:134 msgid "" "Return the bytes representation of object *o* that implements the buffer " "protocol." msgstr "" -#: ../../c-api/bytes.rst:131 +#: ../../c-api/bytes.rst:138 msgid "" "If the object implements the buffer protocol, then the buffer must not be " "mutated while the bytes object is being created." msgstr "" -#: ../../c-api/bytes.rst:137 +#: ../../c-api/bytes.rst:144 msgid "Return the length of the bytes in bytes object *o*." msgstr "" -#: ../../c-api/bytes.rst:142 +#: ../../c-api/bytes.rst:149 msgid "Similar to :c:func:`PyBytes_Size`, but without error checking." msgstr "" -#: ../../c-api/bytes.rst:147 +#: ../../c-api/bytes.rst:154 msgid "" "Return a pointer to the contents of *o*. The pointer refers to the internal " "buffer of *o*, which consists of ``len(o) + 1`` bytes. The last byte in the " @@ -276,24 +284,24 @@ msgid "" "`PyBytes_AsString` returns ``NULL`` and raises :exc:`TypeError`." msgstr "" -#: ../../c-api/bytes.rst:159 +#: ../../c-api/bytes.rst:166 msgid "Similar to :c:func:`PyBytes_AsString`, but without error checking." msgstr "" -#: ../../c-api/bytes.rst:164 +#: ../../c-api/bytes.rst:171 msgid "" "Return the null-terminated contents of the object *obj* through the output " "variables *buffer* and *length*. Returns ``0`` on success." msgstr "" -#: ../../c-api/bytes.rst:168 +#: ../../c-api/bytes.rst:175 msgid "" "If *length* is ``NULL``, the bytes object may not contain embedded null " "bytes; if it does, the function returns ``-1`` and a :exc:`ValueError` is " "raised." msgstr "" -#: ../../c-api/bytes.rst:172 +#: ../../c-api/bytes.rst:179 msgid "" "The buffer refers to an internal buffer of *obj*, which includes an " "additional null byte at the end (not counted in *length*). The data must " @@ -303,13 +311,13 @@ msgid "" "returns ``-1`` and raises :exc:`TypeError`." msgstr "" -#: ../../c-api/bytes.rst:179 +#: ../../c-api/bytes.rst:186 msgid "" "Previously, :exc:`TypeError` was raised when embedded null bytes were " "encountered in the bytes object." msgstr "" -#: ../../c-api/bytes.rst:186 +#: ../../c-api/bytes.rst:193 msgid "" "Create a new bytes object in *\\*bytes* containing the contents of *newpart* " "appended to *bytes*; the caller will own the new reference. The reference to " @@ -319,49 +327,49 @@ msgid "" "appropriate exception will be set." msgstr "" -#: ../../c-api/bytes.rst:194 ../../c-api/bytes.rst:204 +#: ../../c-api/bytes.rst:201 ../../c-api/bytes.rst:211 msgid "" "If *newpart* implements the buffer protocol, then the buffer must not be " "mutated while the new bytes object is being created." msgstr "" -#: ../../c-api/bytes.rst:199 +#: ../../c-api/bytes.rst:206 msgid "" "Create a new bytes object in *\\*bytes* containing the contents of *newpart* " "appended to *bytes*. This version releases the :term:`strong reference` to " "*newpart* (i.e. decrements its reference count)." msgstr "" -#: ../../c-api/bytes.rst:210 +#: ../../c-api/bytes.rst:217 msgid "Similar to ``sep.join(iterable)`` in Python." msgstr "" -#: ../../c-api/bytes.rst:212 +#: ../../c-api/bytes.rst:219 msgid "" "*sep* must be Python :class:`bytes` object. (Note that :c:func:" "`PyUnicode_Join` accepts ``NULL`` separator and treats it as a space, " "whereas :c:func:`PyBytes_Join` doesn't accept ``NULL`` separator.)" msgstr "" -#: ../../c-api/bytes.rst:217 +#: ../../c-api/bytes.rst:224 msgid "" "*iterable* must be an iterable object yielding objects that implement the :" "ref:`buffer protocol `." msgstr "" -#: ../../c-api/bytes.rst:220 +#: ../../c-api/bytes.rst:227 msgid "" "On success, return a new :class:`bytes` object. On error, set an exception " "and return ``NULL``." msgstr "" -#: ../../c-api/bytes.rst:226 +#: ../../c-api/bytes.rst:233 msgid "" "If *iterable* objects implement the buffer protocol, then the buffers must " "not be mutated while the new bytes object is being created." msgstr "" -#: ../../c-api/bytes.rst:231 +#: ../../c-api/bytes.rst:238 msgid "" "Resize a bytes object. *newsize* will be the new length of the bytes object. " "You can think of it as creating a new bytes object and destroying the old " @@ -373,23 +381,23 @@ msgid "" "``NULL``, :exc:`MemoryError` is set, and ``-1`` is returned." msgstr "" -#: ../../c-api/bytes.rst:242 +#: ../../c-api/bytes.rst:249 msgid "Use the :c:type:`PyBytesWriter` API instead." msgstr "" -#: ../../c-api/bytes.rst:248 +#: ../../c-api/bytes.rst:255 msgid "" "Get the string representation of *bytes*. This function is currently used to " "implement :meth:`!bytes.__repr__` in Python." msgstr "" -#: ../../c-api/bytes.rst:251 +#: ../../c-api/bytes.rst:258 msgid "" "This function does not do type checking; it is undefined behavior to pass " "*bytes* as a non-bytes object or ``NULL``." msgstr "" -#: ../../c-api/bytes.rst:254 +#: ../../c-api/bytes.rst:261 msgid "" "If *smartquotes* is true, the representation will use a double-quoted string " "instead of single-quoted string when single-quotes are present in *bytes*. " @@ -398,244 +406,244 @@ msgid "" "is false." msgstr "" -#: ../../c-api/bytes.rst:260 +#: ../../c-api/bytes.rst:267 msgid "" "On success, this function returns a :term:`strong reference` to a :class:" "`str` object containing the representation. On failure, this returns " "``NULL`` with an exception set." msgstr "" -#: ../../c-api/bytes.rst:267 +#: ../../c-api/bytes.rst:274 msgid "" "Unescape a backslash-escaped string *s*. *s* must not be ``NULL``. *len* " "must be the size of *s*." msgstr "" -#: ../../c-api/bytes.rst:270 +#: ../../c-api/bytes.rst:277 msgid "" "*errors* must be one of ``\"strict\"``, ``\"replace\"``, or ``\"ignore\"``. " "If *errors* is ``NULL``, then ``\"strict\"`` is used by default." msgstr "" -#: ../../c-api/bytes.rst:273 +#: ../../c-api/bytes.rst:280 msgid "" "On success, this function returns a :term:`strong reference` to a Python :" "class:`bytes` object containing the unescaped string. On failure, this " "function returns ``NULL`` with an exception set." msgstr "" -#: ../../c-api/bytes.rst:277 +#: ../../c-api/bytes.rst:284 msgid "*unicode* and *recode_encoding* are now unused." msgstr "" -#: ../../c-api/bytes.rst:284 +#: ../../c-api/bytes.rst:291 msgid "PyBytesWriter" msgstr "" -#: ../../c-api/bytes.rst:286 +#: ../../c-api/bytes.rst:293 msgid "" "The :c:type:`PyBytesWriter` API can be used to create a Python :class:" "`bytes` object." msgstr "" -#: ../../c-api/bytes.rst:293 +#: ../../c-api/bytes.rst:300 msgid "A bytes writer instance." msgstr "" -#: ../../c-api/bytes.rst:295 +#: ../../c-api/bytes.rst:302 msgid "" "The API is **not thread safe**: a writer should only be used by a single " "thread at the same time." msgstr "" -#: ../../c-api/bytes.rst:298 +#: ../../c-api/bytes.rst:305 msgid "" "The instance must be destroyed by :c:func:`PyBytesWriter_Finish` on success, " "or :c:func:`PyBytesWriter_Discard` on error." msgstr "" -#: ../../c-api/bytes.rst:303 +#: ../../c-api/bytes.rst:310 msgid "Create, Finish, Discard" msgstr "" -#: ../../c-api/bytes.rst:307 +#: ../../c-api/bytes.rst:314 msgid "Create a :c:type:`PyBytesWriter` to write *size* bytes." msgstr "" -#: ../../c-api/bytes.rst:309 +#: ../../c-api/bytes.rst:316 msgid "" "If *size* is greater than zero, allocate *size* bytes, and set the writer " "size to *size*. The caller is responsible to write *size* bytes using :c:" "func:`PyBytesWriter_GetData`. This function does not overallocate." msgstr "" -#: ../../c-api/bytes.rst:314 ../../c-api/bytes.rst:443 +#: ../../c-api/bytes.rst:321 ../../c-api/bytes.rst:450 msgid "On error, set an exception and return ``NULL``." msgstr "" -#: ../../c-api/bytes.rst:316 ../../c-api/bytes.rst:419 +#: ../../c-api/bytes.rst:323 ../../c-api/bytes.rst:426 msgid "*size* must be positive or zero." msgstr "" -#: ../../c-api/bytes.rst:320 +#: ../../c-api/bytes.rst:327 msgid "" "Finish a :c:type:`PyBytesWriter` created by :c:func:`PyBytesWriter_Create`." msgstr "" -#: ../../c-api/bytes.rst:323 +#: ../../c-api/bytes.rst:330 msgid "" "On success, return a Python :class:`bytes` object. On error, set an " "exception and return ``NULL``." msgstr "" -#: ../../c-api/bytes.rst:326 +#: ../../c-api/bytes.rst:333 msgid "" "The writer instance is invalid after the call in any case. No API can be " "called on the writer after :c:func:`PyBytesWriter_Finish`." msgstr "" -#: ../../c-api/bytes.rst:331 +#: ../../c-api/bytes.rst:338 msgid "" "Similar to :c:func:`PyBytesWriter_Finish`, but resize the writer to *size* " "bytes before creating the :class:`bytes` object." msgstr "" -#: ../../c-api/bytes.rst:336 +#: ../../c-api/bytes.rst:343 msgid "" "Similar to :c:func:`PyBytesWriter_Finish`, but resize the writer using *buf* " "pointer before creating the :class:`bytes` object." msgstr "" -#: ../../c-api/bytes.rst:339 +#: ../../c-api/bytes.rst:346 msgid "" "Set an exception and return ``NULL`` if *buf* pointer is outside the " "internal buffer bounds." msgstr "" -#: ../../c-api/bytes.rst:342 ../../c-api/bytes.rst:447 +#: ../../c-api/bytes.rst:349 ../../c-api/bytes.rst:454 msgid "Function pseudo-code::" msgstr "" -#: ../../c-api/bytes.rst:344 +#: ../../c-api/bytes.rst:351 msgid "" "Py_ssize_t size = (char*)buf - (char*)PyBytesWriter_GetData(writer);\n" "return PyBytesWriter_FinishWithSize(writer, size);" msgstr "" -#: ../../c-api/bytes.rst:349 +#: ../../c-api/bytes.rst:356 msgid "" "Discard a :c:type:`PyBytesWriter` created by :c:func:`PyBytesWriter_Create`." msgstr "" -#: ../../c-api/bytes.rst:351 +#: ../../c-api/bytes.rst:358 msgid "Do nothing if *writer* is ``NULL``." msgstr "" -#: ../../c-api/bytes.rst:353 +#: ../../c-api/bytes.rst:360 msgid "" "The writer instance is invalid after the call. No API can be called on the " "writer after :c:func:`PyBytesWriter_Discard`." msgstr "" -#: ../../c-api/bytes.rst:357 +#: ../../c-api/bytes.rst:364 msgid "High-level API" msgstr "" -#: ../../c-api/bytes.rst:361 +#: ../../c-api/bytes.rst:368 msgid "" "Grow the *writer* internal buffer by *size* bytes, write *size* bytes of " "*bytes* at the *writer* end, and add *size* to the *writer* size." msgstr "" -#: ../../c-api/bytes.rst:365 +#: ../../c-api/bytes.rst:372 msgid "" "If *size* is equal to ``-1``, call ``strlen(bytes)`` to get the string " "length." msgstr "" -#: ../../c-api/bytes.rst:368 ../../c-api/bytes.rst:377 -#: ../../c-api/bytes.rst:416 ../../c-api/bytes.rst:429 +#: ../../c-api/bytes.rst:375 ../../c-api/bytes.rst:384 +#: ../../c-api/bytes.rst:423 ../../c-api/bytes.rst:436 msgid "On success, return ``0``. On error, set an exception and return ``-1``." msgstr "" -#: ../../c-api/bytes.rst:373 +#: ../../c-api/bytes.rst:380 msgid "" "Similar to :c:func:`PyBytes_FromFormat`, but write the output directly at " "the writer end. Grow the writer internal buffer on demand. Then add the " "written size to the writer size." msgstr "" -#: ../../c-api/bytes.rst:382 +#: ../../c-api/bytes.rst:389 msgid "Getters" msgstr "" -#: ../../c-api/bytes.rst:386 +#: ../../c-api/bytes.rst:393 msgid "Get the writer size." msgstr "" -#: ../../c-api/bytes.rst:388 +#: ../../c-api/bytes.rst:395 msgid "" "The function does not invalidate pointers returned by :c:func:" "`PyBytesWriter_GetData`." msgstr "" -#: ../../c-api/bytes.rst:391 ../../c-api/bytes.rst:401 +#: ../../c-api/bytes.rst:398 ../../c-api/bytes.rst:408 msgid "The function cannot fail." msgstr "" -#: ../../c-api/bytes.rst:395 +#: ../../c-api/bytes.rst:402 msgid "Get the writer data: start of the internal buffer." msgstr "" -#: ../../c-api/bytes.rst:397 +#: ../../c-api/bytes.rst:404 msgid "" "The pointer remains valid until a :c:type:`PyBytesWriter` function other " "than :c:func:`PyBytesWriter_GetData` or :c:func:`PyBytesWriter_GetSize` is " "called on *writer*." msgstr "" -#: ../../c-api/bytes.rst:405 +#: ../../c-api/bytes.rst:412 msgid "Low-level API" msgstr "" -#: ../../c-api/bytes.rst:409 +#: ../../c-api/bytes.rst:416 msgid "" "Resize the writer to *size* bytes. It can be used to enlarge or to shrink " "the writer. This function typically overallocates to achieve amortized " "performance when resizing multiple times." msgstr "" -#: ../../c-api/bytes.rst:414 ../../c-api/bytes.rst:427 +#: ../../c-api/bytes.rst:421 ../../c-api/bytes.rst:434 msgid "Newly allocated bytes are left uninitialized." msgstr "" -#: ../../c-api/bytes.rst:423 +#: ../../c-api/bytes.rst:430 msgid "" "Resize the writer by adding *grow* bytes to the current writer size. This " "function typically overallocates to achieve amortized performance when " "resizing multiple times." msgstr "" -#: ../../c-api/bytes.rst:432 +#: ../../c-api/bytes.rst:439 msgid "*size* can be negative to shrink the writer." msgstr "" -#: ../../c-api/bytes.rst:436 +#: ../../c-api/bytes.rst:443 msgid "" "Similar to :c:func:`PyBytesWriter_Grow`, but update also the *buf* pointer." msgstr "" -#: ../../c-api/bytes.rst:439 +#: ../../c-api/bytes.rst:446 msgid "" "The *buf* pointer is moved if the internal buffer is moved in memory. The " "*buf* relative position within the internal buffer is left unchanged." msgstr "" -#: ../../c-api/bytes.rst:445 +#: ../../c-api/bytes.rst:452 msgid "*buf* must not be ``NULL``." msgstr "" -#: ../../c-api/bytes.rst:449 +#: ../../c-api/bytes.rst:456 msgid "" "Py_ssize_t pos = (char*)buf - (char*)PyBytesWriter_GetData(writer);\n" "if (PyBytesWriter_Grow(writer, size) < 0) {\n" @@ -644,10 +652,10 @@ msgid "" "return (char*)PyBytesWriter_GetData(writer) + pos;" msgstr "" -#: ../../c-api/bytes.rst:11 +#: ../../c-api/bytes.rst:18 msgid "object" msgstr "" -#: ../../c-api/bytes.rst:11 +#: ../../c-api/bytes.rst:18 msgid "bytes" msgstr "" diff --git a/c-api/curses.po b/c-api/curses.po new file mode 100644 index 00000000..52b2b616 --- /dev/null +++ b/c-api/curses.po @@ -0,0 +1,185 @@ +# German translations for Python package. +# Copyright (C) 2001 Python Software Foundation +# This file is distributed under the same license as the Python package. +# Automatically generated, 2026. +# +msgid "" +msgstr "" +"Project-Id-Version: Python 3.15\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" +"PO-Revision-Date: 2026-09-23 06:17+0000\n" +"Last-Translator: Automatically generated\n" +"Language-Team: none\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: de\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../../c-api/curses.rst:4 +msgid "Curses C API" +msgstr "" + +#: ../../c-api/curses.rst:6 +msgid "" +":mod:`curses` exposes a small C interface for extension modules. Consumers " +"must include the header file :file:`py_curses.h` (which is not included by " +"default by :file:`Python.h`) and :c:func:`import_curses` must be invoked, " +"usually as part of the module initialisation function, to populate :c:var:" +"`PyCurses_API`." +msgstr "" + +#: ../../c-api/curses.rst:14 +msgid "" +"Neither the C API nor the pure Python :mod:`curses` module are compatible " +"with subinterpreters." +msgstr "" + +#: ../../c-api/curses.rst:19 +msgid "" +"Import the curses C API. The macro does not need a semi-colon to be called." +msgstr "" + +#: ../../c-api/curses.rst:21 +msgid "On success, populate the :c:var:`PyCurses_API` pointer." +msgstr "" + +#: ../../c-api/curses.rst:23 +msgid "" +"On failure, set :c:var:`PyCurses_API` to NULL and set an exception. The " +"caller must check if an error occurred via :c:func:`PyErr_Occurred`:" +msgstr "" + +#: ../../c-api/curses.rst:26 +msgid "" +"import_curses(); // semi-colon is optional but recommended\n" +"if (PyErr_Occurred()) { /* cleanup */ }" +msgstr "" + +#: ../../c-api/curses.rst:34 +msgid "" +"Dynamically allocated object containing the curses C API. This variable is " +"only available once :c:macro:`import_curses` succeeds." +msgstr "" + +#: ../../c-api/curses.rst:37 +msgid "``PyCurses_API[0]`` corresponds to :c:data:`PyCursesWindow_Type`." +msgstr "" + +#: ../../c-api/curses.rst:39 +msgid "" +"``PyCurses_API[1]``, ``PyCurses_API[2]``, and ``PyCurses_API[3]`` are " +"pointers to predicate functions of type ``int (*)(void)``." +msgstr "" + +#: ../../c-api/curses.rst:42 +msgid "" +"When called, these predicates return whether :func:`curses.setupterm`, :func:" +"`curses.initscr`, and :func:`curses.start_color` have been called " +"respectively." +msgstr "" + +#: ../../c-api/curses.rst:46 +msgid "" +"See also the convenience macros :c:macro:`PyCursesSetupTermCalled`, :c:macro:" +"`PyCursesInitialised`, and :c:macro:`PyCursesInitialisedColor`." +msgstr "" + +#: ../../c-api/curses.rst:51 +msgid "" +"The number of entries in this structure is subject to changes. Consider " +"using :c:macro:`PyCurses_API_pointers` to check if new fields are available " +"or not." +msgstr "" + +#: ../../c-api/curses.rst:58 +msgid "" +"The number of accessible fields (``4``) in :c:var:`PyCurses_API`. This " +"number is incremented whenever new fields are added." +msgstr "" + +#: ../../c-api/curses.rst:64 +msgid "" +"The :ref:`heap type ` corresponding to :class:`curses.window`." +msgstr "" + +#: ../../c-api/curses.rst:69 +msgid "" +"Return true if *op* is a :class:`curses.window` instance, false otherwise." +msgstr "" + +#: ../../c-api/curses.rst:72 +msgid "" +"The following macros are convenience macros expanding into C statements. In " +"particular, they can only be used as ``macro;`` or ``macro``, but not " +"``macro()`` or ``macro();``." +msgstr "" + +#: ../../c-api/curses.rst:78 +msgid "Macro checking if :func:`curses.setupterm` has been called." +msgstr "" + +#: ../../c-api/curses.rst:80 ../../c-api/curses.rst:97 +#: ../../c-api/curses.rst:114 +msgid "The macro expansion is roughly equivalent to:" +msgstr "" + +#: ../../c-api/curses.rst:82 +msgid "" +"{\n" +" typedef int (*predicate_t)(void);\n" +" predicate_t was_setupterm_called = (predicate_t)PyCurses_API[1];\n" +" if (!was_setupterm_called()) {\n" +" return NULL;\n" +" }\n" +"}" +msgstr "" + +#: ../../c-api/curses.rst:95 +msgid "Macro checking if :func:`curses.initscr` has been called." +msgstr "" + +#: ../../c-api/curses.rst:99 +msgid "" +"{\n" +" typedef int (*predicate_t)(void);\n" +" predicate_t was_initscr_called = (predicate_t)PyCurses_API[2];\n" +" if (!was_initscr_called()) {\n" +" return NULL;\n" +" }\n" +"}" +msgstr "" + +#: ../../c-api/curses.rst:112 +msgid "Macro checking if :func:`curses.start_color` has been called." +msgstr "" + +#: ../../c-api/curses.rst:116 +msgid "" +"{\n" +" typedef int (*predicate_t)(void);\n" +" predicate_t was_start_color_called = (predicate_t)PyCurses_API[3];\n" +" if (!was_start_color_called()) {\n" +" return NULL;\n" +" }\n" +"}" +msgstr "" + +#: ../../c-api/curses.rst:128 +msgid "Internal data" +msgstr "" + +#: ../../c-api/curses.rst:130 +msgid "" +"The following objects are exposed by the C API but should be considered " +"internal-only." +msgstr "" + +#: ../../c-api/curses.rst:135 +msgid "Name of the curses capsule to pass to :c:func:`PyCapsule_Import`." +msgstr "" + +#: ../../c-api/curses.rst:137 +msgid "Internal usage only. Use :c:macro:`import_curses` instead." +msgstr "" diff --git a/c-api/interp-lifecycle.po b/c-api/interp-lifecycle.po new file mode 100644 index 00000000..0bca36d8 --- /dev/null +++ b/c-api/interp-lifecycle.po @@ -0,0 +1,1317 @@ +# German translations for Python package. +# Copyright (C) 2001 Python Software Foundation +# This file is distributed under the same license as the Python package. +# Automatically generated, 2026. +# +msgid "" +msgstr "" +"Project-Id-Version: Python 3.15\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" +"PO-Revision-Date: 2026-09-23 06:17+0000\n" +"Last-Translator: Automatically generated\n" +"Language-Team: none\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: de\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../../c-api/interp-lifecycle.rst:6 +msgid "Interpreter initialization and finalization" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:8 +msgid "" +"See :ref:`Python Initialization Configuration ` for details on " +"how to configure the interpreter prior to initialization." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:14 +msgid "Before Python initialization" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:16 +msgid "" +"In an application embedding Python, the :c:func:`Py_Initialize` function " +"must be called before using any other Python/C API functions; with the " +"exception of a few functions and the :ref:`global configuration variables " +"`." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:21 +msgid "" +"The following functions can be safely called before Python is initialized:" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:23 +msgid "Functions that initialize the interpreter:" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:25 +msgid ":c:func:`Py_Initialize`" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:26 +msgid ":c:func:`Py_InitializeEx`" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:27 +msgid ":c:func:`Py_InitializeFromConfig`" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:28 +msgid ":c:func:`Py_BytesMain`" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:29 +msgid ":c:func:`Py_Main`" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:30 +msgid "the runtime pre-initialization functions covered in :ref:`init-config`" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:32 +msgid "Configuration functions:" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:34 +msgid ":c:func:`PyImport_AppendInittab`" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:35 +msgid ":c:func:`PyImport_ExtendInittab`" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:36 +msgid ":c:func:`!PyInitFrozenExtensions`" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:37 +msgid ":c:func:`PyMem_SetAllocator`" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:38 +msgid ":c:func:`PyMem_SetupDebugHooks`" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:39 +msgid ":c:func:`PyObject_SetArenaAllocator`" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:40 +msgid ":c:func:`Py_SetProgramName`" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:41 +msgid ":c:func:`Py_SetPythonHome`" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:42 +msgid "the configuration functions covered in :ref:`init-config`" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:44 +msgid "Informative functions:" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:46 ../../c-api/interp-lifecycle.rst:54 +msgid ":c:func:`Py_IsInitialized`" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:47 +msgid ":c:func:`PyMem_GetAllocator`" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:48 +msgid ":c:func:`PyObject_GetArenaAllocator`" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:49 +msgid ":c:func:`Py_GetBuildInfo`" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:50 +msgid ":c:func:`Py_GetCompiler`" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:51 +msgid ":c:func:`Py_GetCopyright`" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:52 +msgid ":c:func:`Py_GetPlatform`" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:53 +msgid ":c:func:`Py_GetVersion`" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:56 +msgid "Utilities:" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:58 +msgid ":c:func:`Py_DecodeLocale`" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:59 +msgid "" +"the status reporting and utility functions covered in :ref:`init-config`" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:61 +msgid "Memory allocators:" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:63 +msgid ":c:func:`PyMem_RawMalloc`" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:64 +msgid ":c:func:`PyMem_RawRealloc`" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:65 +msgid ":c:func:`PyMem_RawCalloc`" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:66 +msgid ":c:func:`PyMem_RawFree`" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:68 +msgid "Synchronization:" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:70 +msgid ":c:func:`PyMutex_Lock`" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:71 +msgid ":c:func:`PyMutex_Unlock`" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:75 +msgid "" +"Despite their apparent similarity to some of the functions listed above, the " +"following functions **should not be called** before the interpreter has been " +"initialized: :c:func:`Py_EncodeLocale`, :c:func:`PyEval_InitThreads`, and :c:" +"func:`Py_RunMain`." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:84 +msgid "Global configuration variables" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:86 +msgid "" +"Python has variables for the global configuration to control different " +"features and options. By default, these flags are controlled by :ref:" +"`command line options `." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:90 +msgid "" +"When a flag is set by an option, the value of the flag is the number of " +"times that the option was set. For example, ``-b`` sets :c:data:" +"`Py_BytesWarningFlag` to 1 and ``-bb`` sets :c:data:`Py_BytesWarningFlag` to " +"2." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:97 +msgid "" +"This API is kept for backward compatibility: setting :c:member:`PyConfig." +"bytes_warning` should be used instead, see :ref:`Python Initialization " +"Configuration `." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:101 +msgid "" +"Issue a warning when comparing :class:`bytes` or :class:`bytearray` with :" +"class:`str` or :class:`bytes` with :class:`int`. Issue an error if greater " +"or equal to ``2``." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:105 +msgid "Set by the :option:`-b` option." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:112 +msgid "" +"This API is kept for backward compatibility: setting :c:member:`PyConfig." +"parser_debug` should be used instead, see :ref:`Python Initialization " +"Configuration `." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:116 +msgid "" +"Turn on parser debugging output (for expert only, depending on compilation " +"options)." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:119 +msgid "" +"Set by the :option:`-d` option and the :envvar:`PYTHONDEBUG` environment " +"variable." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:127 +msgid "" +"This API is kept for backward compatibility: setting :c:member:`PyConfig." +"write_bytecode` should be used instead, see :ref:`Python Initialization " +"Configuration `." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:131 +msgid "" +"If set to non-zero, Python won't try to write ``.pyc`` files on the import " +"of source modules." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:134 +msgid "" +"Set by the :option:`-B` option and the :envvar:`PYTHONDONTWRITEBYTECODE` " +"environment variable." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:142 +msgid "" +"This API is kept for backward compatibility: setting :c:member:`PyConfig." +"pathconfig_warnings` should be used instead, see :ref:`Python Initialization " +"Configuration `." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:146 +msgid "Private flag used by ``_freeze_module`` and ``frozenmain`` programs." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:153 +msgid "" +"This API is kept for backward compatibility: setting :c:member:`PyConfig." +"hash_seed` and :c:member:`PyConfig.use_hash_seed` should be used instead, " +"see :ref:`Python Initialization Configuration `." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:158 +msgid "" +"Set to ``1`` if the :envvar:`PYTHONHASHSEED` environment variable is set to " +"a non-empty string." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:161 +msgid "" +"If the flag is non-zero, read the :envvar:`PYTHONHASHSEED` environment " +"variable to initialize the secret hash seed." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:169 +msgid "" +"This API is kept for backward compatibility: setting :c:member:`PyConfig." +"use_environment` should be used instead, see :ref:`Python Initialization " +"Configuration `." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:173 +msgid "" +"Ignore all :envvar:`!PYTHON*` environment variables, e.g. :envvar:" +"`PYTHONPATH` and :envvar:`PYTHONHOME`, that might be set." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:176 +msgid "Set by the :option:`-E` and :option:`-I` options." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:183 +msgid "" +"This API is kept for backward compatibility: setting :c:member:`PyConfig." +"inspect` should be used instead, see :ref:`Python Initialization " +"Configuration `." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:187 +msgid "" +"When a script is passed as first argument or the :option:`-c` option is " +"used, enter interactive mode after executing the script or the command, even " +"when :data:`sys.stdin` does not appear to be a terminal." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:191 +msgid "" +"Set by the :option:`-i` option and the :envvar:`PYTHONINSPECT` environment " +"variable." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:199 +msgid "" +"This API is kept for backward compatibility: setting :c:member:`PyConfig." +"interactive` should be used instead, see :ref:`Python Initialization " +"Configuration `." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:203 +msgid "Set by the :option:`-i` option." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:210 +msgid "" +"This API is kept for backward compatibility: setting :c:member:`PyConfig." +"isolated` should be used instead, see :ref:`Python Initialization " +"Configuration `." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:214 +msgid "" +"Run Python in isolated mode. In isolated mode :data:`sys.path` contains " +"neither the script's directory nor the user's site-packages directory." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:217 +msgid "Set by the :option:`-I` option." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:226 +msgid "" +"This API is kept for backward compatibility: setting :c:member:`PyPreConfig." +"legacy_windows_fs_encoding` should be used instead, see :ref:`Python " +"Initialization Configuration `." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:230 +msgid "" +"If the flag is non-zero, use the ``mbcs`` encoding with ``replace`` error " +"handler, instead of the UTF-8 encoding with ``surrogatepass`` error handler, " +"for the :term:`filesystem encoding and error handler`." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:234 +msgid "" +"Set to ``1`` if the :envvar:`PYTHONLEGACYWINDOWSFSENCODING` environment " +"variable is set to a non-empty string." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:237 +msgid "See :pep:`529` for more details." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:239 ../../c-api/interp-lifecycle.rst:258 +msgid "Availability" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:246 +msgid "" +"This API is kept for backward compatibility: setting :c:member:`PyConfig." +"legacy_windows_stdio` should be used instead, see :ref:`Python " +"Initialization Configuration `." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:250 +msgid "" +"If the flag is non-zero, use :class:`io.FileIO` instead of :class:`!io." +"_WindowsConsoleIO` for :mod:`sys` standard streams." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:253 +msgid "" +"Set to ``1`` if the :envvar:`PYTHONLEGACYWINDOWSSTDIO` environment variable " +"is set to a non-empty string." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:256 +msgid "See :pep:`528` for more details." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:265 +msgid "" +"This API is kept for backward compatibility: setting :c:member:`PyConfig." +"site_import` should be used instead, see :ref:`Python Initialization " +"Configuration `." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:269 +msgid "" +"Disable the import of the module :mod:`site` and the site-dependent " +"manipulations of :data:`sys.path` that it entails. Also disable these " +"manipulations if :mod:`site` is explicitly imported later (call :func:`site." +"main` if you want them to be triggered)." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:274 +msgid "Set by the :option:`-S` option." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:281 +msgid "" +"This API is kept for backward compatibility: setting :c:member:`PyConfig." +"user_site_directory` should be used instead, see :ref:`Python Initialization " +"Configuration `." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:285 +msgid "" +"Don't add the :data:`user site-packages directory ` to :data:" +"`sys.path`." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:288 +msgid "" +"Set by the :option:`-s` and :option:`-I` options, and the :envvar:" +"`PYTHONNOUSERSITE` environment variable." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:296 +msgid "" +"This API is kept for backward compatibility: setting :c:member:`PyConfig." +"optimization_level` should be used instead, see :ref:`Python Initialization " +"Configuration `." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:300 +msgid "" +"Set by the :option:`-O` option and the :envvar:`PYTHONOPTIMIZE` environment " +"variable." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:308 +msgid "" +"This API is kept for backward compatibility: setting :c:member:`PyConfig." +"quiet` should be used instead, see :ref:`Python Initialization Configuration " +"`." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:312 +msgid "" +"Don't display the copyright and version messages even in interactive mode." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:314 +msgid "Set by the :option:`-q` option." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:323 +msgid "" +"This API is kept for backward compatibility: setting :c:member:`PyConfig." +"buffered_stdio` should be used instead, see :ref:`Python Initialization " +"Configuration `." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:327 +msgid "Force the stdout and stderr streams to be unbuffered." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:329 +msgid "" +"Set by the :option:`-u` option and the :envvar:`PYTHONUNBUFFERED` " +"environment variable." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:337 +msgid "" +"This API is kept for backward compatibility: setting :c:member:`PyConfig." +"verbose` should be used instead, see :ref:`Python Initialization " +"Configuration `." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:341 +msgid "" +"Print a message each time a module is initialized, showing the place " +"(filename or built-in module) from which it is loaded. If greater or equal " +"to ``2``, print a message for each file that is checked for when searching " +"for a module. Also provides information on module cleanup at exit." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:346 +msgid "" +"Set by the :option:`-v` option and the :envvar:`PYTHONVERBOSE` environment " +"variable." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:353 +msgid "Initializing and finalizing the interpreter" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:367 +msgid "" +"Initialize the Python interpreter. In an application embedding Python, this " +"should be called before using any other Python/C API functions; see :ref:" +"`Before Python Initialization ` for the few exceptions." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:371 +msgid "" +"This initializes the table of loaded modules (``sys.modules``), and creates " +"the fundamental modules :mod:`builtins`, :mod:`__main__` and :mod:`sys`. It " +"also initializes the module search path (``sys.path``). It does not set " +"``sys.argv``; use the :ref:`Python Initialization Configuration ` API for that. This is a no-op when called for a second time " +"(without calling :c:func:`Py_FinalizeEx` first). There is no return value; " +"it is a fatal error if the initialization fails." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:379 ../../c-api/interp-lifecycle.rst:393 +msgid "" +"Use :c:func:`Py_InitializeFromConfig` to customize the :ref:`Python " +"Initialization Configuration `." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:383 +msgid "" +"On Windows, changes the console mode from ``O_TEXT`` to ``O_BINARY``, which " +"will also affect non-Python uses of the console using the C Runtime." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:389 +msgid "" +"This function works like :c:func:`Py_Initialize` if *initsigs* is ``1``. If " +"*initsigs* is ``0``, it skips initialization registration of signal " +"handlers, which may be useful when CPython is embedded as part of a larger " +"application." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:399 +msgid "" +"Initialize Python from *config* configuration, as described in :ref:`init-" +"from-config`." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:402 +msgid "" +"See the :ref:`init-config` section for details on pre-initializing the " +"interpreter, populating the runtime configuration structure, and querying " +"the returned status structure." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:409 +msgid "" +"Return true (nonzero) when the Python interpreter has been initialized, " +"false (zero) if not. After :c:func:`Py_FinalizeEx` is called, this returns " +"false until :c:func:`Py_Initialize` is called again." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:413 +msgid "" +"This function no longer returns true until initialization has fully " +"completed, including import of the :mod:`site` module. Previously it could " +"return true while :c:func:`Py_Initialize` was still running." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:421 +msgid "" +"Return true (non-zero) if the main Python interpreter is :term:`shutting " +"down `. Return false (zero) otherwise." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:429 +msgid "" +"Undo all initializations made by :c:func:`Py_Initialize` and subsequent use " +"of Python/C API functions, and destroy all sub-interpreters (see :c:func:" +"`Py_NewInterpreter` below) that were created and not yet destroyed since the " +"last call to :c:func:`Py_Initialize`. This is a no-op when called for a " +"second time (without calling :c:func:`Py_Initialize` again first)." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:435 +msgid "" +"Since this is the reverse of :c:func:`Py_Initialize`, it should be called in " +"the same thread with the same interpreter active. That means the main " +"thread and the main interpreter. This should never be called while :c:func:" +"`Py_RunMain` is running." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:440 +msgid "" +"Normally the return value is ``0``. If there were errors during finalization " +"(flushing buffered data), ``-1`` is returned." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:444 +msgid "" +"Note that Python will do a best effort at freeing all memory allocated by " +"the Python interpreter. Therefore, any C-Extension should make sure to " +"correctly clean up all of the previously allocated PyObjects before using " +"them in subsequent calls to :c:func:`Py_Initialize`. Otherwise it could " +"introduce vulnerabilities and incorrect behavior." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:450 +msgid "" +"This function is provided for a number of reasons. An embedding application " +"might want to restart Python without having to restart the application " +"itself. An application that has loaded the Python interpreter from a " +"dynamically loadable library (or DLL) might want to free all memory " +"allocated by Python before unloading the DLL. During a hunt for memory leaks " +"in an application a developer might want to free all memory allocated by " +"Python before exiting from the application." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:458 +msgid "" +"**Bugs and caveats:** The destruction of modules and objects in modules is " +"done in random order; this may cause destructors (:meth:`~object.__del__` " +"methods) to fail when they depend on other objects (even functions) or " +"modules. Dynamically loaded extension modules loaded by Python are not " +"unloaded. Small amounts of memory allocated by the Python interpreter may " +"not be freed (if you find a leak, please report it). Memory tied up in " +"circular references between objects is not freed. Interned strings will all " +"be deallocated regardless of their reference count. Some memory allocated by " +"extension modules may not be freed. Some extensions may not work properly " +"if their initialization routine is called more than once; this can happen if " +"an application calls :c:func:`Py_Initialize` and :c:func:`Py_FinalizeEx` " +"more than once. :c:func:`Py_FinalizeEx` must not be called recursively from " +"within itself. Therefore, it must not be called by any code that may be run " +"as part of the interpreter shutdown process, such as :py:mod:`atexit` " +"handlers, object finalizers, or any code that may be run while flushing the " +"stdout and stderr files." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:474 +msgid "" +"Raises an :ref:`auditing event ` ``cpython." +"_PySys_ClearAuditHooks`` with no arguments." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:481 +msgid "" +"This is a backwards-compatible version of :c:func:`Py_FinalizeEx` that " +"disregards the return value." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:487 +msgid "" +"Similar to :c:func:`Py_Main` but *argv* is an array of bytes strings, " +"allowing the calling application to delegate the text decoding step to the " +"CPython runtime." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:496 +msgid "" +"The main program for the standard interpreter, encapsulating a full " +"initialization/finalization cycle, as well as additional behaviour to " +"implement reading configurations settings from the environment and command " +"line, and then executing ``__main__`` in accordance with :ref:`using-on-" +"cmdline`." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:502 +msgid "" +"This is made available for programs which wish to support the full CPython " +"command line interface, rather than just embedding a Python runtime in a " +"larger application." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:506 +msgid "" +"The *argc* and *argv* parameters are similar to those which are passed to a " +"C program's :c:func:`main` function, except that the *argv* entries are " +"first converted to ``wchar_t`` using :c:func:`Py_DecodeLocale`. It is also " +"important to note that the argument list entries may be modified to point to " +"strings other than those passed in (however, the contents of the strings " +"pointed to by the argument list are not modified)." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:513 +msgid "" +"The return value is ``2`` if the argument list does not represent a valid " +"Python command line, and otherwise the same as :c:func:`Py_RunMain`." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:516 +msgid "" +"In terms of the CPython runtime configuration APIs documented in the :ref:" +"`runtime configuration ` section (and without accounting for " +"error handling), ``Py_Main`` is approximately equivalent to::" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:520 +msgid "" +"PyConfig config;\n" +"PyConfig_InitPythonConfig(&config);\n" +"PyConfig_SetArgv(&config, argc, argv);\n" +"Py_InitializeFromConfig(&config);\n" +"PyConfig_Clear(&config);\n" +"\n" +"Py_RunMain();" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:528 +msgid "" +"In normal usage, an embedding application will call this function *instead* " +"of calling :c:func:`Py_Initialize`, :c:func:`Py_InitializeEx` or :c:func:" +"`Py_InitializeFromConfig` directly, and all settings will be applied as " +"described elsewhere in this documentation. If this function is instead " +"called *after* a preceding runtime initialization API call, then exactly " +"which environmental and command line configuration settings will be updated " +"is version dependent (as it depends on which settings correctly support " +"being modified after they have already been set once when the runtime was " +"first initialized)." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:541 +msgid "Executes the main module in a fully configured CPython runtime." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:543 +msgid "" +"Executes the command (:c:member:`PyConfig.run_command`), the script (:c:" +"member:`PyConfig.run_filename`) or the module (:c:member:`PyConfig." +"run_module`) specified on the command line or in the configuration. If none " +"of these values are set, runs the interactive Python prompt (REPL) using the " +"``__main__`` module's global namespace." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:549 +msgid "" +"If :c:member:`PyConfig.inspect` is not set (the default), the return value " +"will be ``0`` if the interpreter exits normally (that is, without raising an " +"exception), the exit status of an unhandled :exc:`SystemExit`, or ``1`` for " +"any other unhandled exception." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:554 +msgid "" +"If :c:member:`PyConfig.inspect` is set (such as when the :option:`-i` option " +"is used), rather than returning when the interpreter exits, execution will " +"instead resume in an interactive Python prompt (REPL) using the ``__main__`` " +"module's global namespace. If the interpreter exited with an exception, it " +"is immediately raised in the REPL session. The function return value is then " +"determined by the way the *REPL session* terminates: ``0``, ``1``, or the " +"status of a :exc:`SystemExit`, as specified above." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:562 +msgid "" +"This function always finalizes the Python interpreter before it returns." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:564 +msgid "" +"See :ref:`Python Configuration ` for an example of a " +"customized Python that always runs in isolated mode using :c:func:" +"`Py_RunMain`." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:570 +msgid "" +"Register an :mod:`atexit` callback for the target interpreter *interp*. This " +"is similar to :c:func:`Py_AtExit`, but takes an explicit interpreter and " +"data pointer for the callback." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:574 +msgid "There must be an :term:`attached thread state` for *interp*." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:582 +msgid "Cautions regarding interpreter finalization" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:584 +msgid "" +"In the late stage of :term:`interpreter shutdown`, after attempting to wait " +"for non-daemon threads to exit (though this can be interrupted by :class:" +"`KeyboardInterrupt`) and running the :mod:`atexit` functions, the runtime is " +"marked as finalizing, meaning that :c:func:`Py_IsFinalizing` and :func:`sys." +"is_finalizing` return true. At this point, only the finalization thread " +"(the thread that initiated finalization; this is typically the main thread) " +"is allowed to :term:`attach ` a thread state." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:592 +msgid "" +"Other threads that attempt to attach during finalization, either explicitly " +"(such as via :c:func:`PyThreadState_Ensure` or :c:macro:" +"`Py_END_ALLOW_THREADS`) or implicitly (such as in-between bytecode " +"instructions), will enter a **permanently blocked state**. Generally, this " +"is harmless, but this can result in deadlocks. For example, a thread may be " +"permanently blocked while holding a lock, meaning that the finalization " +"thread can never acquire that lock." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:600 +msgid "" +"Prior to CPython 3.13, the thread would exit instead of hanging, which led " +"to other issues (see the warning note at :c:func:`PyThread_exit_thread`)." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:604 +msgid "" +"Gross? Yes. Starting in Python 3.15, there are a number of C APIs that make " +"it possible to avoid these issues by temporarily preventing finalization:" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:611 +msgid "" +":pep:`788` explains the design, motivation and rationale for these APIs." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:616 +msgid "An opaque interpreter guard structure." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:618 +msgid "" +"By holding an interpreter guard, the caller can ensure that the interpreter " +"will not finalize until the guard is closed (through :c:func:" +"`PyInterpreterGuard_Close`)." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:622 +msgid "" +"When a guard is held, a thread attempting to finalize the interpreter will " +"block until the guard is closed before starting finalization. After " +"finalization has started, threads are forever unable to acquire guards for " +"that interpreter. This means that if you forget to close an interpreter " +"guard, the process will **permanently hang** during finalization!" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:629 +msgid "" +"Holding a guard for an interpreter is similar to holding a :term:`strong " +"reference` to a Python object, except finalization does not happen " +"automatically after all guards are released: it requires an explicit :c:func:" +"`Py_EndInterpreter` call." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:639 +msgid "" +"Create a finalization guard for the current interpreter. This will prevent " +"finalization until the guard is closed." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:642 +msgid "For example:" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:644 +msgid "" +"// Temporarily prevent finalization.\n" +"PyInterpreterGuard *guard = PyInterpreterGuard_FromCurrent();\n" +"if (guard == NULL) {\n" +" // Finalization has already started or we're out of memory.\n" +" return NULL;\n" +"}\n" +"\n" +"Py_BEGIN_ALLOW_THREADS;\n" +"// Do some critical processing here. For example, we can safely acquire\n" +"// locks that might be acquired by the finalization thread.\n" +"Py_END_ALLOW_THREADS;\n" +"\n" +"// Now that we're done with our critical processing, the interpreter is\n" +"// allowed to finalize again.\n" +"PyInterpreterGuard_Close(guard);" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:662 +msgid "" +"On success, this function returns a guard for the current interpreter; on " +"failure, it returns ``NULL`` with an exception set." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:665 +msgid "" +"This function will fail only if the current interpreter has already started " +"finalizing, or if the process is out of memory." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:668 +msgid "" +"The guard pointer returned by this function must be eventually closed with :" +"c:func:`PyInterpreterGuard_Close`; failing to do so will result in the " +"Python process infinitely hanging." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:672 ../../c-api/interp-lifecycle.rst:739 +msgid "The caller must hold an :term:`attached thread state`." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:679 +msgid "Create a finalization guard for an interpreter through a view." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:681 +msgid "" +"On success, this function returns a guard to the interpreter represented by " +"*view*. The view is still valid after calling this function. The guard must " +"eventually be closed with :c:func:`PyInterpreterGuard_Close`." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:686 +msgid "" +"If the interpreter no longer exists, is already finalizing, or out of " +"memory, then this function returns ``NULL`` without setting an exception." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:689 ../../c-api/interp-lifecycle.rst:775 +msgid "The caller does not need to hold an :term:`attached thread state`." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:696 +msgid "" +"Close an interpreter guard, allowing the interpreter to start finalization " +"if no other guards remain. If an interpreter guard is never closed, the " +"interpreter will infinitely wait when trying to enter finalization!" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:701 +msgid "" +"After an interpreter guard is closed, it may not be used in :c:func:" +"`PyThreadState_Ensure`. Doing so will result in undefined behavior." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:705 ../../c-api/interp-lifecycle.rst:752 +msgid "" +"This function cannot fail, and the caller doesn't need to hold an :term:" +"`attached thread state`." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:714 +msgid "Interpreter views" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:716 +msgid "" +"In some cases, it may be necessary to access an interpreter that may have " +"been deleted. This can be done using interpreter views." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:721 +msgid "An opaque view of an interpreter." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:723 +msgid "" +"This is a thread-safe way to access an interpreter that may have be " +"finalizing or already destroyed." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:731 +msgid "Create a view to the current interpreter." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:733 +msgid "" +"This function is generally meant to be used alongside :c:func:" +"`PyInterpreterGuard_FromView` or :c:func:`PyThreadState_EnsureFromView`." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:736 +msgid "" +"On success, this function returns a view to the current interpreter; on " +"failure, it returns ``NULL`` with an exception set." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:746 +msgid "Close an interpreter view." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:748 +msgid "" +"If an interpreter view is never closed, the view's memory will never be " +"freed, but there are no other consequences. (In contrast, forgetting to " +"close a guard will infinitely hang the main thread during finalization.)" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:760 +msgid "" +"Create a view for the main interpreter (the first and default interpreter in " +"a Python process; see :c:func:`PyInterpreterState_Main`)." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:764 +msgid "" +"On success, this function returns a view to the main interpreter; on " +"failure, it returns ``NULL`` without an exception set. Failure indicates " +"that the process is out of memory." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:768 +msgid "" +"Use this function when an interpreter pointer or view cannot be supplied by " +"the caller, such as when a native threading library does not provide a " +"``void *arg`` parameter that could carry a :c:type:`PyInterpreterGuard` or :" +"c:type:`PyInterpreterView`. In code that supports subinterpreters, prefer :c:" +"func:`PyInterpreterView_FromCurrent` so the guard tracks the calling " +"interpreter rather than the main one." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:781 +msgid "Process-wide parameters" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:789 +msgid "" +"This API is kept for backward compatibility: setting :c:member:`PyConfig." +"program_name` should be used instead, see :ref:`Python Initialization " +"Configuration `." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:793 +msgid "" +"This function should be called before :c:func:`Py_Initialize` is called for " +"the first time, if it is called at all. It tells the interpreter the value " +"of the ``argv[0]`` argument to the :c:func:`main` function of the program " +"(converted to wide characters). This is used by some other functions below " +"to find the Python run-time libraries relative to the interpreter " +"executable. The default value is ``'python'``. The argument should point " +"to a zero-terminated wide character string in static storage whose contents " +"will not change for the duration of the program's execution. No code in the " +"Python interpreter will change the contents of this storage." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:804 ../../c-api/interp-lifecycle.rst:912 +#: ../../c-api/interp-lifecycle.rst:945 ../../c-api/interp-lifecycle.rst:971 +msgid "" +"Use :c:func:`Py_DecodeLocale` to decode a bytes string to get a :c:expr:" +"`wchar_t*` string." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:812 +msgid "" +"Return the version of this Python interpreter. This is a string that looks " +"something like ::" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:815 +msgid "\"3.0a5+ (py3k:63103M, May 12 2008, 00:53:55) \\n[GCC 4.2.3]\"" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:819 +msgid "" +"The first word (up to the first space character) is the current Python " +"version; the first characters are the major and minor version separated by a " +"period. The returned string points into static storage; the caller should " +"not modify its value. The value is available to Python code as :data:`sys." +"version`." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:824 +msgid "See also the :c:var:`Py_Version` constant." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:831 +msgid "" +"Return the platform identifier for the current platform. On Unix, this is " +"formed from the \"official\" name of the operating system, converted to " +"lower case, followed by the major revision number; e.g., for Solaris 2.x, " +"which is also known as SunOS 5.x, the value is ``'sunos5'``. On macOS, it " +"is ``'darwin'``. On Windows, it is ``'win'``. The returned string points " +"into static storage; the caller should not modify its value. The value is " +"available to Python code as ``sys.platform``." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:842 +msgid "" +"Return the official copyright string for the current Python version, for " +"example" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:844 +msgid "``'Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam'``" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:848 +msgid "" +"The returned string points into static storage; the caller should not modify " +"its value. The value is available to Python code as ``sys.copyright``." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:854 +msgid "" +"Return an indication of the compiler used to build the current Python " +"version, in square brackets, for example::" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:857 +msgid "\"[GCC 2.7.2.2]\"" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:861 ../../c-api/interp-lifecycle.rst:875 +msgid "" +"The returned string points into static storage; the caller should not modify " +"its value. The value is available to Python code as part of the variable " +"``sys.version``." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:868 +msgid "" +"Return information about the sequence number and build date and time of the " +"current Python interpreter instance, for example ::" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:871 +msgid "\"#67, Aug 1 1997, 22:34:28\"" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:887 +msgid "" +"This API is kept for backward compatibility: setting :c:member:`PyConfig." +"argv`, :c:member:`PyConfig.parse_argv` and :c:member:`PyConfig.safe_path` " +"should be used instead, see :ref:`Python Initialization Configuration `." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:892 +msgid "" +"Set :data:`sys.argv` based on *argc* and *argv*. These parameters are " +"similar to those passed to the program's :c:func:`main` function with the " +"difference that the first entry should refer to the script file to be " +"executed rather than the executable hosting the Python interpreter. If " +"there isn't a script that will be run, the first entry in *argv* can be an " +"empty string. If this function fails to initialize :data:`sys.argv`, a " +"fatal condition is signalled using :c:func:`Py_FatalError`." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:900 +msgid "" +"If *updatepath* is zero, this is all the function does. If *updatepath* is " +"non-zero, the function also modifies :data:`sys.path` according to the " +"following algorithm:" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:904 +msgid "" +"If the name of an existing script is passed in ``argv[0]``, the absolute " +"path of the directory where the script is located is prepended to :data:`sys." +"path`." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:907 +msgid "" +"Otherwise (that is, if *argc* is ``0`` or ``argv[0]`` doesn't point to an " +"existing file name), an empty string is prepended to :data:`sys.path`, which " +"is the same as prepending the current working directory (``\".\"``)." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:915 ../../c-api/interp-lifecycle.rst:948 +msgid "" +"See also :c:member:`PyConfig.orig_argv` and :c:member:`PyConfig.argv` " +"members of the :ref:`Python Initialization Configuration `." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:919 +msgid "" +"It is recommended that applications embedding the Python interpreter for " +"purposes other than executing a single script pass ``0`` as *updatepath*, " +"and update :data:`sys.path` themselves if desired. See :cve:`2008-5983`." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:924 +msgid "" +"On versions before 3.1.3, you can achieve the same effect by manually " +"popping the first :data:`sys.path` element after having called :c:func:" +"`PySys_SetArgv`, for example using::" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:928 +msgid "PyRun_SimpleString(\"import sys; sys.path.pop(0)\\n\");" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:937 +msgid "" +"This API is kept for backward compatibility: setting :c:member:`PyConfig." +"argv` and :c:member:`PyConfig.parse_argv` should be used instead, see :ref:" +"`Python Initialization Configuration `." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:941 +msgid "" +"This function works like :c:func:`PySys_SetArgvEx` with *updatepath* set to " +"``1`` unless the :program:`python` interpreter was started with the :option:" +"`-I`." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:951 +msgid "The *updatepath* value depends on :option:`-I`." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:958 +msgid "" +"This API is kept for backward compatibility: setting :c:member:`PyConfig." +"home` should be used instead, see :ref:`Python Initialization Configuration " +"`." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:962 +msgid "" +"Set the default \"home\" directory, that is, the location of the standard " +"Python libraries. See :envvar:`PYTHONHOME` for the meaning of the argument " +"string." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:966 +msgid "" +"The argument should point to a zero-terminated character string in static " +"storage whose contents will not change for the duration of the program's " +"execution. No code in the Python interpreter will change the contents of " +"this storage." +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:357 +msgid "PyEval_InitThreads()" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:357 +msgid "modules (in module sys)" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:357 +msgid "path (in module sys)" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:357 +msgid "module" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:357 +msgid "builtins" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:357 +msgid "__main__" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:357 +msgid "sys" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:357 +msgid "search" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:357 +msgid "path" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:357 +msgid "Py_FinalizeEx (C function)" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:785 +msgid "Py_Initialize()" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:785 ../../c-api/interp-lifecycle.rst:882 +msgid "main()" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:817 ../../c-api/interp-lifecycle.rst:859 +#: ../../c-api/interp-lifecycle.rst:873 +msgid "version (in module sys)" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:829 +msgid "platform (in module sys)" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:846 +msgid "copyright (in module sys)" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:882 +msgid "Py_FatalError()" +msgstr "" + +#: ../../c-api/interp-lifecycle.rst:882 +msgid "argv (in module sys)" +msgstr "" diff --git a/c-api/picklebuffer.po b/c-api/picklebuffer.po new file mode 100644 index 00000000..ebe1fdf6 --- /dev/null +++ b/c-api/picklebuffer.po @@ -0,0 +1,101 @@ +# German translations for Python package. +# Copyright (C) 2001 Python Software Foundation +# This file is distributed under the same license as the Python package. +# Automatically generated, 2026. +# +msgid "" +msgstr "" +"Project-Id-Version: Python 3.15\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" +"PO-Revision-Date: 2026-09-23 06:17+0000\n" +"Last-Translator: Automatically generated\n" +"Language-Team: none\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: de\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../../c-api/picklebuffer.rst:9 +msgid "Pickle buffer objects" +msgstr "" + +#: ../../c-api/picklebuffer.rst:13 +msgid "" +"A :class:`pickle.PickleBuffer` object wraps a :ref:`buffer-providing object " +"` for out-of-band data transfer with the :mod:`pickle` module." +msgstr "" + +#: ../../c-api/picklebuffer.rst:19 +msgid "" +"This instance of :c:type:`PyTypeObject` represents the Python pickle buffer " +"type. This is the same object as :class:`pickle.PickleBuffer` in the Python " +"layer." +msgstr "" + +#: ../../c-api/picklebuffer.rst:25 +msgid "" +"Return true if *op* is a pickle buffer instance. This function always " +"succeeds." +msgstr "" + +#: ../../c-api/picklebuffer.rst:31 +msgid "Create a pickle buffer from the object *obj*." +msgstr "" + +#: ../../c-api/picklebuffer.rst:33 +msgid "" +"This function will fail if *obj* doesn't support the :ref:`buffer protocol " +"`." +msgstr "" + +#: ../../c-api/picklebuffer.rst:35 +msgid "" +"On success, return a new pickle buffer instance. On failure, set an " +"exception and return ``NULL``." +msgstr "" + +#: ../../c-api/picklebuffer.rst:38 +msgid "Analogous to calling :class:`pickle.PickleBuffer` with *obj* in Python." +msgstr "" + +#: ../../c-api/picklebuffer.rst:43 +msgid "" +"Get a pointer to the underlying :c:type:`Py_buffer` that the pickle buffer " +"wraps." +msgstr "" + +#: ../../c-api/picklebuffer.rst:45 +msgid "" +"The returned pointer is valid as long as *picklebuf* is alive and has not " +"been released. The caller must not modify or free the returned :c:type:" +"`Py_buffer`. If the pickle buffer has been released, raise :exc:`ValueError`." +msgstr "" + +#: ../../c-api/picklebuffer.rst:49 +msgid "" +"On success, return a pointer to the buffer view. On failure, set an " +"exception and return ``NULL``." +msgstr "" + +#: ../../c-api/picklebuffer.rst:55 +msgid "Release the underlying buffer held by the pickle buffer." +msgstr "" + +#: ../../c-api/picklebuffer.rst:57 +msgid "" +"Return ``0`` on success. On failure, set an exception and return ``-1``." +msgstr "" + +#: ../../c-api/picklebuffer.rst:59 +msgid "Analogous to calling :meth:`pickle.PickleBuffer.release` in Python." +msgstr "" + +#: ../../c-api/picklebuffer.rst:5 +msgid "object" +msgstr "" + +#: ../../c-api/picklebuffer.rst:5 +msgid "PickleBuffer" +msgstr "" diff --git a/c-api/profiling.po b/c-api/profiling.po new file mode 100644 index 00000000..3a51e234 --- /dev/null +++ b/c-api/profiling.po @@ -0,0 +1,308 @@ +# German translations for Python package. +# Copyright (C) 2001 Python Software Foundation +# This file is distributed under the same license as the Python package. +# Automatically generated, 2026. +# +msgid "" +msgstr "" +"Project-Id-Version: Python 3.15\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" +"PO-Revision-Date: 2026-09-23 06:17+0000\n" +"Last-Translator: Automatically generated\n" +"Language-Team: none\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: de\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../../c-api/profiling.rst:6 +msgid "Profiling and tracing" +msgstr "" + +#: ../../c-api/profiling.rst:8 +msgid "" +"The Python interpreter provides some low-level support for attaching " +"profiling and execution tracing facilities. These are used for profiling, " +"debugging, and coverage analysis tools." +msgstr "" + +#: ../../c-api/profiling.rst:12 +msgid "" +"This C interface allows the profiling or tracing code to avoid the overhead " +"of calling through Python-level callable objects, making a direct C function " +"call instead. The essential attributes of the facility have not changed; " +"the interface allows trace functions to be installed per-thread, and the " +"basic events reported to the trace function are the same as had been " +"reported to the Python-level trace functions in previous versions." +msgstr "" + +#: ../../c-api/profiling.rst:22 +msgid "" +"The type of the trace function registered using :c:func:`PyEval_SetProfile` " +"and :c:func:`PyEval_SetTrace`. The first parameter is the object passed to " +"the registration function as *obj*, *frame* is the frame object to which the " +"event pertains, *what* is one of the constants :c:data:`PyTrace_CALL`, :c:" +"data:`PyTrace_EXCEPTION`, :c:data:`PyTrace_LINE`, :c:data:`PyTrace_RETURN`, :" +"c:data:`PyTrace_C_CALL`, :c:data:`PyTrace_C_EXCEPTION`, :c:data:" +"`PyTrace_C_RETURN`, or :c:data:`PyTrace_OPCODE`, and *arg* depends on the " +"value of *what*:" +msgstr "" + +#: ../../c-api/profiling.rst:31 +msgid "Value of *what*" +msgstr "" + +#: ../../c-api/profiling.rst:31 +msgid "Meaning of *arg*" +msgstr "" + +#: ../../c-api/profiling.rst:33 +msgid ":c:data:`PyTrace_CALL`" +msgstr "" + +#: ../../c-api/profiling.rst:33 ../../c-api/profiling.rst:38 +#: ../../c-api/profiling.rst:49 +msgid "Always :c:data:`Py_None`." +msgstr "" + +#: ../../c-api/profiling.rst:35 +msgid ":c:data:`PyTrace_EXCEPTION`" +msgstr "" + +#: ../../c-api/profiling.rst:35 +msgid "Exception information as returned by :func:`sys.exc_info`." +msgstr "" + +#: ../../c-api/profiling.rst:38 +msgid ":c:data:`PyTrace_LINE`" +msgstr "" + +#: ../../c-api/profiling.rst:40 +msgid ":c:data:`PyTrace_RETURN`" +msgstr "" + +#: ../../c-api/profiling.rst:40 +msgid "" +"Value being returned to the caller, or ``NULL`` if caused by an exception." +msgstr "" + +#: ../../c-api/profiling.rst:43 +msgid ":c:data:`PyTrace_C_CALL`" +msgstr "" + +#: ../../c-api/profiling.rst:43 ../../c-api/profiling.rst:45 +#: ../../c-api/profiling.rst:47 +msgid "Function object being called." +msgstr "" + +#: ../../c-api/profiling.rst:45 +msgid ":c:data:`PyTrace_C_EXCEPTION`" +msgstr "" + +#: ../../c-api/profiling.rst:47 +msgid ":c:data:`PyTrace_C_RETURN`" +msgstr "" + +#: ../../c-api/profiling.rst:49 +msgid ":c:data:`PyTrace_OPCODE`" +msgstr "" + +#: ../../c-api/profiling.rst:54 +msgid "" +"The value of the *what* parameter to a :c:type:`Py_tracefunc` function when " +"a new call to a function or method is being reported, or a new entry into a " +"generator. Note that the creation of the iterator for a generator function " +"is not reported as there is no control transfer to the Python bytecode in " +"the corresponding frame." +msgstr "" + +#: ../../c-api/profiling.rst:63 +msgid "" +"The value of the *what* parameter to a :c:type:`Py_tracefunc` function when " +"an exception has been raised. The callback function is called with this " +"value for *what* when after any bytecode is processed after which the " +"exception becomes set within the frame being executed. The effect of this " +"is that as exception propagation causes the Python stack to unwind, the " +"callback is called upon return to each frame as the exception propagates. " +"Only trace functions receive these events; they are not needed by the " +"profiler." +msgstr "" + +#: ../../c-api/profiling.rst:74 +msgid "" +"The value passed as the *what* parameter to a :c:type:`Py_tracefunc` " +"function (but not a profiling function) when a line-number event is being " +"reported. It may be disabled for a frame by setting :attr:`~frame." +"f_trace_lines` to *0* on that frame." +msgstr "" + +#: ../../c-api/profiling.rst:82 +msgid "" +"The value for the *what* parameter to :c:type:`Py_tracefunc` functions when " +"a call is about to return." +msgstr "" + +#: ../../c-api/profiling.rst:88 +msgid "" +"The value for the *what* parameter to :c:type:`Py_tracefunc` functions when " +"a C function is about to be called." +msgstr "" + +#: ../../c-api/profiling.rst:94 +msgid "" +"The value for the *what* parameter to :c:type:`Py_tracefunc` functions when " +"a C function has raised an exception." +msgstr "" + +#: ../../c-api/profiling.rst:100 +msgid "" +"The value for the *what* parameter to :c:type:`Py_tracefunc` functions when " +"a C function has returned." +msgstr "" + +#: ../../c-api/profiling.rst:106 +msgid "" +"The value for the *what* parameter to :c:type:`Py_tracefunc` functions (but " +"not profiling functions) when a new opcode is about to be executed. This " +"event is not emitted by default: it must be explicitly requested by setting :" +"attr:`~frame.f_trace_opcodes` to *1* on the frame." +msgstr "" + +#: ../../c-api/profiling.rst:114 +msgid "" +"Set the profiler function to *func*. The *obj* parameter is passed to the " +"function as its first parameter, and may be any Python object, or ``NULL``. " +"If the profile function needs to maintain state, using a different value for " +"*obj* for each thread provides a convenient and thread-safe place to store " +"it. The profile function is called for all monitored events except :c:data:" +"`PyTrace_LINE` :c:data:`PyTrace_OPCODE` and :c:data:`PyTrace_EXCEPTION`." +msgstr "" + +#: ../../c-api/profiling.rst:121 +msgid "See also the :func:`sys.setprofile` function." +msgstr "" + +#: ../../c-api/profiling.rst:123 ../../c-api/profiling.rst:131 +#: ../../c-api/profiling.rst:150 ../../c-api/profiling.rst:158 +msgid "The caller must have an :term:`attached thread state`." +msgstr "" + +#: ../../c-api/profiling.rst:128 +msgid "" +"Like :c:func:`PyEval_SetProfile` but sets the profile function in all " +"running threads belonging to the current interpreter instead of the setting " +"it only on the current thread." +msgstr "" + +#: ../../c-api/profiling.rst:133 +msgid "" +"As :c:func:`PyEval_SetProfile`, this function ignores any exceptions raised " +"while setting the profile functions in all threads." +msgstr "" + +#: ../../c-api/profiling.rst:141 +msgid "" +"Set the tracing function to *func*. This is similar to :c:func:" +"`PyEval_SetProfile`, except the tracing function does receive line-number " +"events and per-opcode events, but does not receive any event related to C " +"function objects being called. Any trace function registered using :c:func:" +"`PyEval_SetTrace` will not receive :c:data:`PyTrace_C_CALL`, :c:data:" +"`PyTrace_C_EXCEPTION` or :c:data:`PyTrace_C_RETURN` as a value for the " +"*what* parameter." +msgstr "" + +#: ../../c-api/profiling.rst:148 +msgid "See also the :func:`sys.settrace` function." +msgstr "" + +#: ../../c-api/profiling.rst:155 +msgid "" +"Like :c:func:`PyEval_SetTrace` but sets the tracing function in all running " +"threads belonging to the current interpreter instead of the setting it only " +"on the current thread." +msgstr "" + +#: ../../c-api/profiling.rst:160 +msgid "" +"As :c:func:`PyEval_SetTrace`, this function ignores any exceptions raised " +"while setting the trace functions in all threads." +msgstr "" + +#: ../../c-api/profiling.rst:167 +msgid "Reference tracing" +msgstr "" + +#: ../../c-api/profiling.rst:174 +msgid "" +"The type of the trace function registered using :c:func:" +"`PyRefTracer_SetTracer`. The first parameter is a Python object that has " +"been just created (when **event** is set to :c:data:`PyRefTracer_CREATE`) or " +"about to be destroyed (when **event** is set to :c:data:" +"`PyRefTracer_DESTROY`). The **data** argument is the opaque pointer that was " +"provided when :c:func:`PyRefTracer_SetTracer` was called." +msgstr "" + +#: ../../c-api/profiling.rst:180 +msgid "" +"If a new tracing function is registered replacing the current one, a call to " +"the trace function will be made with the object set to **NULL** and " +"**event** set to :c:data:`PyRefTracer_TRACKER_REMOVED`. This will happen " +"just before the new function is registered." +msgstr "" + +#: ../../c-api/profiling.rst:190 +msgid "" +"The value for the *event* parameter to :c:type:`PyRefTracer` functions when " +"a Python object has been created." +msgstr "" + +#: ../../c-api/profiling.rst:196 +msgid "" +"The value for the *event* parameter to :c:type:`PyRefTracer` functions when " +"a Python object has been destroyed." +msgstr "" + +#: ../../c-api/profiling.rst:202 +msgid "" +"The value for the *event* parameter to :c:type:`PyRefTracer` functions when " +"the current tracer is about to be replaced by a new one." +msgstr "" + +#: ../../c-api/profiling.rst:210 +msgid "" +"Register a reference tracer function. The function will be called when a new " +"Python object has been created or when an object is going to be destroyed. " +"If **data** is provided it must be an opaque pointer that will be provided " +"when the tracer function is called. Return ``0`` on success. Set an " +"exception and return ``-1`` on error." +msgstr "" + +#: ../../c-api/profiling.rst:216 +msgid "" +"Note that tracer functions **must not** create Python objects inside or " +"otherwise the call will be re-entrant. The tracer also **must not** clear " +"any existing exception or set an exception. A :term:`thread state` will be " +"active every time the tracer function is called." +msgstr "" + +#: ../../c-api/profiling.rst:221 ../../c-api/profiling.rst:237 +msgid "" +"There must be an :term:`attached thread state` when calling this function." +msgstr "" + +#: ../../c-api/profiling.rst:223 +msgid "" +"If another tracer function was already registered, the old function will be " +"called with **event** set to :c:data:`PyRefTracer_TRACKER_REMOVED` just " +"before the new function is registered." +msgstr "" + +#: ../../c-api/profiling.rst:232 +msgid "" +"Get the registered reference tracer function and the value of the opaque " +"data pointer that was registered when :c:func:`PyRefTracer_SetTracer` was " +"called. If no tracer was registered this function will return NULL and will " +"set the **data** pointer to NULL." +msgstr "" diff --git a/c-api/sentinel.po b/c-api/sentinel.po new file mode 100644 index 00000000..f2367876 --- /dev/null +++ b/c-api/sentinel.po @@ -0,0 +1,60 @@ +# German translations for Python package. +# Copyright (C) 2001 Python Software Foundation +# This file is distributed under the same license as the Python package. +# Automatically generated, 2026. +# +msgid "" +msgstr "" +"Project-Id-Version: Python 3.15\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" +"PO-Revision-Date: 2026-09-23 06:17+0000\n" +"Last-Translator: Automatically generated\n" +"Language-Team: none\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: de\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../../c-api/sentinel.rst:6 +msgid "Sentinel objects" +msgstr "" + +#: ../../c-api/sentinel.rst:10 +msgid "" +"This instance of :c:type:`PyTypeObject` represents the Python :class:" +"`sentinel` type. This is the same object as :class:`sentinel`." +msgstr "" + +#: ../../c-api/sentinel.rst:17 +msgid "" +"Return true if *o* is a :class:`sentinel` object or a subtype. The :class:" +"`sentinel` type does not currently allow subclasses, so this check is exact. " +"Future Python versions may choose to allow subtyping. This function always " +"succeeds." +msgstr "" + +#: ../../c-api/sentinel.rst:27 +msgid "" +"Return true if *o* is a :class:`sentinel` object, but not a subtype. The :" +"class:`sentinel` type does not currently allow subclasses. Future Python " +"versions may choose to allow subtyping. This function always succeeds." +msgstr "" + +#: ../../c-api/sentinel.rst:36 +msgid "" +"Return a new :class:`sentinel` object with :attr:`~sentinel.__name__` set to " +"*name* and :attr:`~sentinel.__module__` set to *module_name*. *name* must " +"not be ``NULL``. If *module_name* is ``NULL``, :attr:`~sentinel.__module__` " +"is set to ``None``. If *repr* is ``NULL``, ``repr()`` returns :attr:" +"`~sentinel.__name__`. Return ``NULL`` with an exception set on failure." +msgstr "" + +#: ../../c-api/sentinel.rst:42 +msgid "" +"For pickling to work, *module_name* must be the name of an importable " +"module, and the sentinel must be accessible from that module under a path " +"matching *name*. Pickle treats *name* as a global variable name in " +"*module_name* (see :meth:`object.__reduce__`)." +msgstr "" diff --git a/c-api/slots.po b/c-api/slots.po new file mode 100644 index 00000000..3b10b7fa --- /dev/null +++ b/c-api/slots.po @@ -0,0 +1,302 @@ +# German translations for Python package. +# Copyright (C) 2001 Python Software Foundation +# This file is distributed under the same license as the Python package. +# Automatically generated, 2026. +# +msgid "" +msgstr "" +"Project-Id-Version: Python 3.15\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" +"PO-Revision-Date: 2026-09-23 06:17+0000\n" +"Last-Translator: Automatically generated\n" +"Language-Team: none\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: de\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../../c-api/slots.rst:6 +msgid "Definition slots" +msgstr "" + +#: ../../c-api/slots.rst:8 +msgid "" +"To define :ref:`module objects ` and :ref:`classes ` using the C API, you may use an array of *slots* -- " +"essentially, key-value pairs that describe features of the object to create. " +"This decouples the data from the structures used at runtime, allowing " +"CPython -- and other Python C API implementations -- to update the " +"structures without breaking backwards compatibility." +msgstr "" + +#: ../../c-api/slots.rst:16 +msgid "" +"This section documents slots in general. For object-specific behavior and " +"slot values, see documentation for functions that apply slots:" +msgstr "" + +#: ../../c-api/slots.rst:20 +msgid ":c:func:`PyType_FromSlots` for types;" +msgstr "" + +#: ../../c-api/slots.rst:21 +msgid "" +":c:func:`PyModule_FromSlotsAndSpec` and :ref:`extension-export-hook` for " +"modules." +msgstr "" + +#: ../../c-api/slots.rst:24 +msgid "" +"When slots are passed to a function that applies them, the function will not " +"modify the slot array, nor any data it points to (recursively). After the " +"function is done, the caller is allowed to modify or deallocate the array " +"and any data it points to (recursively), except data explicitly marked with :" +"c:macro:`PySlot_STATIC`." +msgstr "" + +#: ../../c-api/slots.rst:30 +msgid "" +"Except when documented otherwise, multiple slots with the same ID (:c:member:" +"`~PySlot.sl_id`) may not occur in a single slots array." +msgstr "" + +#: ../../c-api/slots.rst:35 +msgid "" +"Slot arrays generalize an earlier way of defining objects: using :c:type:" +"`PyType_Spec` with :c:type:`PyType_Slot` for types, and :c:type:" +"`PyModuleDef` with :c:type:`PyModuleDef_Slot` for modules. The earlier API " +"is :term:`soft deprecated`; there are no plans to remove it." +msgstr "" + +#: ../../c-api/slots.rst:40 +msgid "Entries of the slots array use the following structure:" +msgstr "" + +#: ../../c-api/slots.rst:44 +msgid "An entry in a slots array. Defined as:" +msgstr "" + +#: ../../c-api/slots.rst:46 +msgid "" +"typedef struct {\n" +" uint16_t sl_id;\n" +" uint16_t sl_flags;\n" +" uint32_t _reserved; // must be 0\n" +" union {\n" +" void *sl_ptr;\n" +" void (*sl_func)(void);\n" +" Py_ssize_t sl_size;\n" +" int64_t sl_int64;\n" +" uint64_t sl_uint64;\n" +" };\n" +"} PySlot;" +msgstr "" + +#: ../../c-api/slots.rst:63 +msgid "A slot ID, chosen from:" +msgstr "" + +#: ../../c-api/slots.rst:65 +msgid "``Py_slot_*`` values documented in :ref:`pyslot-common-ids` below;" +msgstr "" + +#: ../../c-api/slots.rst:66 +msgid "" +"``Py_mod_*`` values for modules, as documented in :ref:`c_module_slots`;" +msgstr "" + +#: ../../c-api/slots.rst:67 +msgid "Values for types, as documented in :ref:`pyslot_type_slot_ids`." +msgstr "" + +#: ../../c-api/slots.rst:69 +msgid "" +"A :c:member:`!sl_id` of zero (:c:macro:`Py_slot_end`) marks the end of a " +"slots array." +msgstr "" + +#: ../../c-api/slots.rst:78 +msgid "" +"The data for the slot. These members are part of an anonymous union; the " +"member to use depends on which data type is required by the slot ID: data " +"pointer, function pointer, size, signed or unsigned integer, respectively." +msgstr "" + +#: ../../c-api/slots.rst:84 +msgid "" +"Except when documented otherwise for a specific slot ID, pointers (that is :" +"c:member:`!sl_ptr` and :c:member:`!sl_func`) may not be NULL." +msgstr "" + +#: ../../c-api/slots.rst:89 +msgid "Zero or more of the following flags, OR-ed together:" +msgstr "" + +#: ../../c-api/slots.rst:95 +msgid "" +"All data the slot points to is statically allocated and constant. Thus, the " +"interpreter does not need to copy the information." +msgstr "" + +#: ../../c-api/slots.rst:98 +msgid "This flag is implied for function pointers." +msgstr "" + +#: ../../c-api/slots.rst:100 +msgid "" +"The flag applies even to data the slot points to “indirectly”, except for " +"slots nested via :c:macro:`Py_slot_subslots` which may have their own :c:" +"macro:`!PySlot_STATIC` flags. For example, if applied to a :c:macro:" +"`Py_tp_members` slot that points to an array of :c:type:`PyMemberDef` " +"structures, then the entire array, as well as the name and doc strings in " +"its elements, must be static and constant." +msgstr "" + +#: ../../c-api/slots.rst:110 +msgid "" +"The data is stored in ``sl_ptr``; CPython will cast it to the appropriate " +"type." +msgstr "" + +#: ../../c-api/slots.rst:113 +msgid "" +"This flag can simplify porting from the older :c:type:`PyType_Slot` and :c:" +"type:`PyModuleDef_Slot` structures." +msgstr "" + +#: ../../c-api/slots.rst:118 +msgid "" +"If the slot ID is unknown, the interpreter should ignore the slot, rather " +"than fail." +msgstr "" + +#: ../../c-api/slots.rst:121 +msgid "" +"For example, if Python 3.16 adds a new feature with a new slot ID,attr the " +"corresponding slot may be marked :c:macro:`!PySlot_OPTIONAL` so that Python " +"3.15 ignores it." +msgstr "" + +#: ../../c-api/slots.rst:125 +msgid "" +"Note that the \"optionality\" only applies to unknown slot IDs. This flag " +"does not make Python skip invalid values of known slots." +msgstr "" + +#: ../../c-api/slots.rst:132 +msgid "Convenience macros" +msgstr "" + +#: ../../c-api/slots.rst:141 +msgid "" +"Convenience macros to define :c:type:`!PySlot` structures with :c:member:" +"`~PySlot.sl_id` and a particular union member set." +msgstr "" + +#: ../../c-api/slots.rst:144 +msgid "" +":c:macro:`!PySlot_STATIC_DATA` sets the :c:macro:`PySlot_STATIC` flag; " +"others set no flags." +msgstr "" + +#: ../../c-api/slots.rst:147 +msgid "" +"Note that these macros use *designated initializers*, a C language feature " +"that C++ added in the 2020 version of the standard. If your code needs to be " +"compatible with C++11 or older, use :c:macro:`PySlot_PTR` instead." +msgstr "" + +#: ../../c-api/slots.rst:152 ../../c-api/slots.rst:178 +#: ../../c-api/slots.rst:192 +msgid "Defined as::" +msgstr "" + +#: ../../c-api/slots.rst:154 +msgid "" +"#define PySlot_DATA(NAME, VALUE) \\\n" +" {.sl_id=NAME, .sl_ptr=(void*)(VALUE)}\n" +"\n" +"#define PySlot_FUNC(NAME, VALUE) \\\n" +" {.sl_id=NAME, .sl_func=(VALUE)}\n" +"\n" +"#define PySlot_SIZE(NAME, VALUE) \\\n" +" {.sl_id=NAME, .sl_size=(VALUE)}\n" +"\n" +"#define PySlot_INT64(NAME, VALUE) \\\n" +" {.sl_id=NAME, .sl_int64=(VALUE)}\n" +"\n" +"#define PySlot_UINT64(NAME, VALUE) \\\n" +" {.sl_id=NAME, .sl_uint64=(VALUE)}\n" +"\n" +"#define PySlot_STATIC_DATA(NAME, VALUE) \\\n" +" {.sl_id=NAME, .sl_flags=PySlot_STATIC, .sl_ptr=(VALUE)}" +msgstr "" + +#: ../../c-api/slots.rst:176 +msgid "Convenience macro to mark the end of a :c:type:`!PySlot` array." +msgstr "" + +#: ../../c-api/slots.rst:180 +msgid "#define PySlot_END {0}" +msgstr "" + +#: ../../c-api/slots.rst:187 +msgid "" +"Convenience macros for use in C++11-compatible code. This version of C++ " +"does not allow setting arbitrary union members in literals; instead, these " +"macros set the :c:macro:`PySlot_INTPTR` flag and cast the value to " +"``(void*)``." +msgstr "" + +#: ../../c-api/slots.rst:194 +msgid "" +"#define PySlot_PTR(NAME, VALUE) \\\n" +" {NAME, PySlot_INTPTR, {0}, {(void*)(VALUE)}}\n" +"\n" +"#define PySlot_PTR_STATIC(NAME, VALUE) \\\n" +" {NAME, PySlot_INTPTR|Py_SLOT_STATIC, {0}, {(void*)(VALUE)}}" +msgstr "" + +#: ../../c-api/slots.rst:205 +msgid "Common slot IDs" +msgstr "" + +#: ../../c-api/slots.rst:207 +msgid "The following slot IDs may be used in both type and module definitions." +msgstr "" + +#: ../../c-api/slots.rst:211 +msgid "Marks the end of a slots array. Defined as zero." +msgstr "" + +#: ../../c-api/slots.rst:218 +msgid "Nested slots array." +msgstr "" + +#: ../../c-api/slots.rst:220 +msgid "" +"The value (:c:member:`~PySlot.sl_ptr`) should point to an array of :c:type:" +"`PySlot` structures. The slots in the array (up to but not including the " +"zero-ID terminator) will be treated as if they were inserted if the current " +"slot array, at the point :c:macro:`!Py_slot_subslots` appears." +msgstr "" + +#: ../../c-api/slots.rst:226 +msgid "" +"Slot nesting depth is limited to 5 levels. This restriction may be lifted in " +"the future." +msgstr "" + +#: ../../c-api/slots.rst:233 +msgid "" +"Reserved; will always be treated as an unknown slot ID. Defined as " +"``UINT16_MAX`` (``0xFFFF``)." +msgstr "" + +#: ../../c-api/slots.rst:236 +msgid "" +"When used with the :c:macro:`PySlot_OPTIONAL` flag, defines a slot with no " +"effect. Without the flag, processing a slot with this ID will fail." +msgstr "" diff --git a/c-api/subinterpreters.po b/c-api/subinterpreters.po new file mode 100644 index 00000000..19e0d4c7 --- /dev/null +++ b/c-api/subinterpreters.po @@ -0,0 +1,612 @@ +# German translations for Python package. +# Copyright (C) 2001 Python Software Foundation +# This file is distributed under the same license as the Python package. +# Automatically generated, 2026. +# +msgid "" +msgstr "" +"Project-Id-Version: Python 3.15\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" +"PO-Revision-Date: 2026-09-23 06:17+0000\n" +"Last-Translator: Automatically generated\n" +"Language-Team: none\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: de\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../../c-api/subinterpreters.rst:6 +msgid "Multiple interpreters in a Python process" +msgstr "" + +#: ../../c-api/subinterpreters.rst:8 +msgid "" +"While in most uses, you will only embed a single Python interpreter, there " +"are cases where you need to create several independent interpreters in the " +"same process and perhaps even in the same thread. Sub-interpreters allow you " +"to do that." +msgstr "" + +#: ../../c-api/subinterpreters.rst:13 +msgid "" +"The \"main\" interpreter is the first one created when the runtime " +"initializes. It is usually the only Python interpreter in a process. Unlike " +"sub-interpreters, the main interpreter has unique process-global " +"responsibilities like signal handling. It is also responsible for execution " +"during runtime initialization and is usually the active interpreter during " +"runtime finalization. The :c:func:`PyInterpreterState_Main` function " +"returns a pointer to its state." +msgstr "" + +#: ../../c-api/subinterpreters.rst:20 +msgid "" +"You can switch between sub-interpreters using the :c:func:" +"`PyThreadState_Swap` function. You can create and destroy them using the " +"following functions:" +msgstr "" + +#: ../../c-api/subinterpreters.rst:26 +msgid "" +"Structure containing most parameters to configure a sub-interpreter. Its " +"values are used only in :c:func:`Py_NewInterpreterFromConfig` and never " +"modified by the runtime." +msgstr "" + +#: ../../c-api/subinterpreters.rst:32 +msgid "Structure fields:" +msgstr "" + +#: ../../c-api/subinterpreters.rst:36 +msgid "" +"If this is ``0`` then the sub-interpreter will use its own \"object\" " +"allocator state. Otherwise it will use (share) the main interpreter's." +msgstr "" + +#: ../../c-api/subinterpreters.rst:40 +msgid "" +"If this is ``0`` then :c:member:`~PyInterpreterConfig." +"check_multi_interp_extensions` must be ``1`` (non-zero). If this is ``1`` " +"then :c:member:`~PyInterpreterConfig.gil` must not be :c:macro:" +"`PyInterpreterConfig_OWN_GIL`." +msgstr "" + +#: ../../c-api/subinterpreters.rst:48 +msgid "" +"If this is ``0`` then the runtime will not support forking the process in " +"any thread where the sub-interpreter is currently active. Otherwise fork is " +"unrestricted." +msgstr "" + +#: ../../c-api/subinterpreters.rst:52 +msgid "" +"Note that the :mod:`subprocess` module still works when fork is disallowed." +msgstr "" + +#: ../../c-api/subinterpreters.rst:57 +msgid "" +"If this is ``0`` then the runtime will not support replacing the current " +"process via exec (e.g. :func:`os.execv`) in any thread where the sub-" +"interpreter is currently active. Otherwise exec is unrestricted." +msgstr "" + +#: ../../c-api/subinterpreters.rst:62 +msgid "" +"Note that the :mod:`subprocess` module still works when exec is disallowed." +msgstr "" + +#: ../../c-api/subinterpreters.rst:67 +msgid "" +"If this is ``0`` then the sub-interpreter's :mod:`threading` module won't " +"create threads. Otherwise threads are allowed." +msgstr "" + +#: ../../c-api/subinterpreters.rst:73 +msgid "" +"If this is ``0`` then the sub-interpreter's :mod:`threading` module won't " +"create daemon threads. Otherwise daemon threads are allowed (as long as :c:" +"member:`~PyInterpreterConfig.allow_threads` is non-zero)." +msgstr "" + +#: ../../c-api/subinterpreters.rst:80 +msgid "" +"If this is ``0`` then all extension modules may be imported, including " +"legacy (single-phase init) modules, in any thread where the sub-interpreter " +"is currently active. Otherwise only multi-phase init extension modules (see :" +"pep:`489`) may be imported. (Also see :c:macro:" +"`Py_mod_multiple_interpreters`.)" +msgstr "" + +#: ../../c-api/subinterpreters.rst:87 +msgid "" +"This must be ``1`` (non-zero) if :c:member:`~PyInterpreterConfig." +"use_main_obmalloc` is ``0``." +msgstr "" + +#: ../../c-api/subinterpreters.rst:92 +msgid "" +"This determines the operation of the GIL for the sub-interpreter. It may be " +"one of the following:" +msgstr "" + +#: ../../c-api/subinterpreters.rst:99 +msgid "Use the default selection (:c:macro:`PyInterpreterConfig_SHARED_GIL`)." +msgstr "" + +#: ../../c-api/subinterpreters.rst:103 +msgid "Use (share) the main interpreter's GIL." +msgstr "" + +#: ../../c-api/subinterpreters.rst:107 +msgid "Use the sub-interpreter's own GIL." +msgstr "" + +#: ../../c-api/subinterpreters.rst:109 +msgid "" +"If this is :c:macro:`PyInterpreterConfig_OWN_GIL` then :c:member:" +"`PyInterpreterConfig.use_main_obmalloc` must be ``0``." +msgstr "" + +#: ../../c-api/subinterpreters.rst:123 +msgid "" +"Create a new sub-interpreter. This is an (almost) totally separate " +"environment for the execution of Python code. In particular, the new " +"interpreter has separate, independent versions of all imported modules, " +"including the fundamental modules :mod:`builtins`, :mod:`__main__` and :mod:" +"`sys`. The table of loaded modules (``sys.modules``) and the module search " +"path (``sys.path``) are also separate. The new environment has no ``sys." +"argv`` variable. It has new standard I/O stream file objects ``sys.stdin``, " +"``sys.stdout`` and ``sys.stderr`` (however these refer to the same " +"underlying file descriptors)." +msgstr "" + +#: ../../c-api/subinterpreters.rst:133 +msgid "" +"The given *config* controls the options with which the interpreter is " +"initialized." +msgstr "" + +#: ../../c-api/subinterpreters.rst:136 +msgid "" +"Upon success, *tstate_p* will be set to the first :term:`thread state` " +"created in the new sub-interpreter. This thread state is :term:`attached " +"`. Note that no actual thread is created; see the " +"discussion of thread states below. If creation of the new interpreter is " +"unsuccessful, *tstate_p* is set to ``NULL``; no exception is set since the " +"exception state is stored in the :term:`attached thread state`, which might " +"not exist." +msgstr "" + +#: ../../c-api/subinterpreters.rst:145 +msgid "" +"Like all other Python/C API functions, an :term:`attached thread state` must " +"be present before calling this function, but it might be detached upon " +"returning. On success, the returned thread state will be :term:`attached " +"`. If the sub-interpreter is created with its own :" +"term:`GIL` then the :term:`attached thread state` of the calling interpreter " +"will be detached. When the function returns, the new interpreter's :term:" +"`thread state` will be :term:`attached ` to the " +"current thread and the previous interpreter's :term:`attached thread state` " +"will remain detached." +msgstr "" + +#: ../../c-api/subinterpreters.rst:156 +msgid "" +"Sub-interpreters are most effective when isolated from each other, with " +"certain functionality restricted::" +msgstr "" + +#: ../../c-api/subinterpreters.rst:159 +msgid "" +"PyInterpreterConfig config = {\n" +" .use_main_obmalloc = 0,\n" +" .allow_fork = 0,\n" +" .allow_exec = 0,\n" +" .allow_threads = 1,\n" +" .allow_daemon_threads = 0,\n" +" .check_multi_interp_extensions = 1,\n" +" .gil = PyInterpreterConfig_OWN_GIL,\n" +"};\n" +"PyThreadState *tstate = NULL;\n" +"PyStatus status = Py_NewInterpreterFromConfig(&tstate, &config);\n" +"if (PyStatus_Exception(status)) {\n" +" Py_ExitStatusException(status);\n" +"}" +msgstr "" + +#: ../../c-api/subinterpreters.rst:174 +msgid "" +"Note that the config is used only briefly and does not get modified. During " +"initialization the config's values are converted into various :c:type:" +"`PyInterpreterState` values. A read-only copy of the config may be stored " +"internally on the :c:type:`PyInterpreterState`." +msgstr "" + +#: ../../c-api/subinterpreters.rst:183 +msgid "Extension modules are shared between (sub-)interpreters as follows:" +msgstr "" + +#: ../../c-api/subinterpreters.rst:185 +msgid "" +"For modules using multi-phase initialization, e.g. :c:func:" +"`PyModule_FromDefAndSpec`, a separate module object is created and " +"initialized for each interpreter. Only C-level static and global variables " +"are shared between these module objects." +msgstr "" + +#: ../../c-api/subinterpreters.rst:191 +msgid "" +"For modules using legacy :ref:`single-phase initialization `, e.g. :c:func:`PyModule_Create`, the first time a " +"particular extension is imported, it is initialized normally, and a " +"(shallow) copy of its module's dictionary is squirreled away. When the same " +"extension is imported by another (sub-)interpreter, a new module is " +"initialized and filled with the contents of this copy; the extension's " +"``init`` function is not called. Objects in the module's dictionary thus end " +"up shared across (sub-)interpreters, which might cause unwanted behavior " +"(see `Bugs and caveats`_ below)." +msgstr "" + +#: ../../c-api/subinterpreters.rst:203 +msgid "" +"Note that this is different from what happens when an extension is imported " +"after the interpreter has been completely re-initialized by calling :c:func:" +"`Py_FinalizeEx` and :c:func:`Py_Initialize`; in that case, the extension's " +"``initmodule`` function *is* called again. As with multi-phase " +"initialization, this means that only C-level static and global variables are " +"shared between these modules." +msgstr "" + +#: ../../c-api/subinterpreters.rst:223 +msgid "" +"Create a new sub-interpreter. This is essentially just a wrapper around :c:" +"func:`Py_NewInterpreterFromConfig` with a config that preserves the existing " +"behavior. The result is an unisolated sub-interpreter that shares the main " +"interpreter's GIL, allows fork/exec, allows daemon threads, and allows " +"single-phase init modules." +msgstr "" + +#: ../../c-api/subinterpreters.rst:235 +msgid "" +"Destroy the (sub-)interpreter represented by the given :term:`thread state`. " +"The given thread state must be :term:`attached `. " +"When the call returns, there will be no :term:`attached thread state`. All " +"thread states associated with this interpreter are destroyed." +msgstr "" + +#: ../../c-api/subinterpreters.rst:240 +msgid "" +":c:func:`Py_FinalizeEx` will destroy all sub-interpreters that haven't been " +"explicitly destroyed at that point." +msgstr "" + +#: ../../c-api/subinterpreters.rst:247 +msgid "A per-interpreter GIL" +msgstr "" + +#: ../../c-api/subinterpreters.rst:251 +msgid "" +"Using :c:func:`Py_NewInterpreterFromConfig` you can create a sub-interpreter " +"that is completely isolated from other interpreters, including having its " +"own GIL. The most important benefit of this isolation is that such an " +"interpreter can execute Python code without being blocked by other " +"interpreters or blocking any others. Thus a single Python process can truly " +"take advantage of multiple CPU cores when running Python code. The " +"isolation also encourages a different approach to concurrency than that of " +"just using threads. (See :pep:`554` and :pep:`684`.)" +msgstr "" + +#: ../../c-api/subinterpreters.rst:261 +msgid "" +"Using an isolated interpreter requires vigilance in preserving that " +"isolation. That especially means not sharing any objects or mutable state " +"without guarantees about thread-safety. Even objects that are otherwise " +"immutable (e.g. ``None``, ``(1, 5)``) can't normally be shared because of " +"the refcount. One simple but less-efficient approach around this is to use " +"a global lock around all use of some state (or object). Alternately, " +"effectively immutable objects (like integers or strings) can be made safe in " +"spite of their refcounts by making them :term:`immortal`. In fact, this has " +"been done for the builtin singletons, small integers, and a number of other " +"builtin objects." +msgstr "" + +#: ../../c-api/subinterpreters.rst:272 +msgid "" +"If you preserve isolation then you will have access to proper multi-core " +"computing without the complications that come with free-threading. Failure " +"to preserve isolation will expose you to the full consequences of free-" +"threading, including races and hard-to-debug crashes." +msgstr "" + +#: ../../c-api/subinterpreters.rst:277 +msgid "" +"Aside from that, one of the main challenges of using multiple isolated " +"interpreters is how to communicate between them safely (not break isolation) " +"and efficiently. The runtime and stdlib do not provide any standard " +"approach to this yet. A future stdlib module would help mitigate the effort " +"of preserving isolation and expose effective tools for communicating (and " +"sharing) data between interpreters." +msgstr "" + +#: ../../c-api/subinterpreters.rst:286 +msgid "Bugs and caveats" +msgstr "" + +#: ../../c-api/subinterpreters.rst:288 +msgid "" +"Because sub-interpreters (and the main interpreter) are part of the same " +"process, the insulation between them isn't perfect --- for example, using " +"low-level file operations like :func:`os.close` they can (accidentally or " +"maliciously) affect each other's open files. Because of the way extensions " +"are shared between (sub-)interpreters, some extensions may not work " +"properly; this is especially likely when using single-phase initialization " +"or (static) global variables. It is possible to insert objects created in " +"one sub-interpreter into a namespace of another (sub-)interpreter; this " +"should be avoided if possible." +msgstr "" + +#: ../../c-api/subinterpreters.rst:298 +msgid "" +"Special care should be taken to avoid sharing user-defined functions, " +"methods, instances or classes between sub-interpreters, since import " +"operations executed by such objects may affect the wrong (sub-)interpreter's " +"dictionary of loaded modules. It is equally important to avoid sharing " +"objects from which the above are reachable." +msgstr "" + +#: ../../c-api/subinterpreters.rst:304 +msgid "" +"Also note that combining this functionality with ``PyGILState_*`` APIs is " +"delicate, because these APIs assume a bijection between Python thread states " +"and OS-level threads, an assumption broken by the presence of sub-" +"interpreters. It is highly recommended that you don't switch sub-" +"interpreters between a pair of matching :c:func:`PyGILState_Ensure` and :c:" +"func:`PyGILState_Release` calls. Furthermore, extensions (such as :mod:" +"`ctypes`) using these APIs to allow calling of Python code from non-Python " +"created threads will probably be broken when using sub-interpreters." +msgstr "" + +#: ../../c-api/subinterpreters.rst:315 +msgid "High-level APIs" +msgstr "" + +#: ../../c-api/subinterpreters.rst:319 +msgid "" +"This data structure represents the state shared by a number of cooperating " +"threads. Threads belonging to the same interpreter share their module " +"administration and a few other internal items. There are no public members " +"in this structure." +msgstr "" + +#: ../../c-api/subinterpreters.rst:324 +msgid "" +"Threads belonging to different interpreters initially share nothing, except " +"process state like available memory, open file descriptors and such. The " +"global interpreter lock is also shared by all threads, regardless of to " +"which interpreter they belong." +msgstr "" + +#: ../../c-api/subinterpreters.rst:331 +msgid "" +":pep:`684` introduced the possibility of a :ref:`per-interpreter GIL `. See :c:func:`Py_NewInterpreterFromConfig`." +msgstr "" + +#: ../../c-api/subinterpreters.rst:338 +msgid "Get the current interpreter." +msgstr "" + +#: ../../c-api/subinterpreters.rst:340 +msgid "" +"Issue a fatal error if there is no :term:`attached thread state`. It cannot " +"return NULL." +msgstr "" + +#: ../../c-api/subinterpreters.rst:348 +msgid "" +"Return the interpreter's unique ID. If there was any error in doing so then " +"``-1`` is returned and an error is set." +msgstr "" + +#: ../../c-api/subinterpreters.rst:351 +msgid "The caller must have an :term:`attached thread state`." +msgstr "" + +#: ../../c-api/subinterpreters.rst:358 +msgid "" +"Return a dictionary in which interpreter-specific data may be stored. If " +"this function returns ``NULL`` then no exception has been raised and the " +"caller should assume no interpreter-specific dict is available." +msgstr "" + +#: ../../c-api/subinterpreters.rst:362 +msgid "" +"This is not a replacement for :c:func:`PyModule_GetState()`, which " +"extensions should use to store interpreter-specific state information." +msgstr "" + +#: ../../c-api/subinterpreters.rst:365 +msgid "" +"The returned dictionary is borrowed from the interpreter and is valid until " +"interpreter shutdown." +msgstr "" + +#: ../../c-api/subinterpreters.rst:373 +msgid "Type of a frame evaluation function." +msgstr "" + +#: ../../c-api/subinterpreters.rst:375 +msgid "" +"The *throwflag* parameter is used by the ``throw()`` method of generators: " +"if non-zero, handle the current exception." +msgstr "" + +#: ../../c-api/subinterpreters.rst:378 +msgid "The function now takes a *tstate* parameter." +msgstr "" + +#: ../../c-api/subinterpreters.rst:381 +msgid "" +"The *frame* parameter changed from ``PyFrameObject*`` to " +"``_PyInterpreterFrame*``." +msgstr "" + +#: ../../c-api/subinterpreters.rst:387 +msgid "Get the frame evaluation function." +msgstr "" + +#: ../../c-api/subinterpreters.rst:389 ../../c-api/subinterpreters.rst:398 +msgid "See the :pep:`523` \"Adding a frame evaluation API to CPython\"." +msgstr "" + +#: ../../c-api/subinterpreters.rst:396 +msgid "Set the frame evaluation function." +msgstr "" + +#: ../../c-api/subinterpreters.rst:404 +msgid "" +"Enables or disables specialization why a custom frame evaluator is in place." +msgstr "" + +#: ../../c-api/subinterpreters.rst:406 +msgid "" +"If *allow_specialization* is non-zero, the adaptive specializer will " +"continue to specialize bytecodes even though a custom eval frame function is " +"set. When *allow_specialization* is zero, setting a custom eval frame " +"disables specialization. The standard interpreter loop will continue to " +"deopt while a frame evaluation API is in place - the frame evaluation " +"function needs to handle the specialized opcodes to take advantage of this." +msgstr "" + +#: ../../c-api/subinterpreters.rst:417 +msgid "" +"Return non-zero if adaptive specialization is enabled for the interpreter. " +"Specialization is enabled when no custom eval frame function is set, or when " +"one is set with *allow_specialization* enabled." +msgstr "" + +#: ../../c-api/subinterpreters.rst:425 +msgid "Low-level APIs" +msgstr "" + +#: ../../c-api/subinterpreters.rst:427 +msgid "" +"All of the following functions must be called after :c:func:`Py_Initialize`." +msgstr "" + +#: ../../c-api/subinterpreters.rst:429 +msgid "" +":c:func:`Py_Initialize()` now initializes the :term:`GIL` and sets an :term:" +"`attached thread state`." +msgstr "" + +#: ../../c-api/subinterpreters.rst:436 +msgid "" +"Create a new interpreter state object. An :term:`attached thread state` is " +"not needed, but may optionally exist if it is necessary to serialize calls " +"to this function." +msgstr "" + +#: ../../c-api/subinterpreters.rst:440 +msgid "" +"Raises an :ref:`auditing event ` ``cpython." +"PyInterpreterState_New`` with no arguments." +msgstr "" + +#: ../../c-api/subinterpreters.rst:445 +msgid "" +"Reset all information in an interpreter state object. There must be an :" +"term:`attached thread state` for the interpreter." +msgstr "" + +#: ../../c-api/subinterpreters.rst:448 +msgid "" +"Raises an :ref:`auditing event ` ``cpython." +"PyInterpreterState_Clear`` with no arguments." +msgstr "" + +#: ../../c-api/subinterpreters.rst:453 +msgid "" +"Destroy an interpreter state object. There **should not** be an :term:" +"`attached thread state` for the target interpreter. The interpreter state " +"must have been reset with a previous call to :c:func:" +"`PyInterpreterState_Clear`." +msgstr "" + +#: ../../c-api/subinterpreters.rst:461 +msgid "Advanced debugger support" +msgstr "" + +#: ../../c-api/subinterpreters.rst:463 +msgid "" +"These functions are only intended to be used by advanced debugging tools." +msgstr "" + +#: ../../c-api/subinterpreters.rst:468 +msgid "" +"Return the interpreter state object at the head of the list of all such " +"objects." +msgstr "" + +#: ../../c-api/subinterpreters.rst:473 +msgid "Return the main interpreter state object." +msgstr "" + +#: ../../c-api/subinterpreters.rst:478 +msgid "" +"Return the next interpreter state object after *interp* from the list of all " +"such objects." +msgstr "" + +#: ../../c-api/subinterpreters.rst:484 +msgid "" +"Return the pointer to the first :c:type:`PyThreadState` object in the list " +"of threads associated with the interpreter *interp*." +msgstr "" + +#: ../../c-api/subinterpreters.rst:490 +msgid "" +"Return the next thread state object after *tstate* from the list of all such " +"objects belonging to the same :c:type:`PyInterpreterState` object." +msgstr "" + +#: ../../c-api/subinterpreters.rst:115 ../../c-api/subinterpreters.rst:215 +msgid "module" +msgstr "" + +#: ../../c-api/subinterpreters.rst:115 ../../c-api/subinterpreters.rst:215 +msgid "builtins" +msgstr "" + +#: ../../c-api/subinterpreters.rst:115 ../../c-api/subinterpreters.rst:215 +msgid "__main__" +msgstr "" + +#: ../../c-api/subinterpreters.rst:115 ../../c-api/subinterpreters.rst:215 +msgid "sys" +msgstr "" + +#: ../../c-api/subinterpreters.rst:115 ../../c-api/subinterpreters.rst:215 +msgid "stdout (in module sys)" +msgstr "" + +#: ../../c-api/subinterpreters.rst:115 ../../c-api/subinterpreters.rst:215 +msgid "stderr (in module sys)" +msgstr "" + +#: ../../c-api/subinterpreters.rst:115 ../../c-api/subinterpreters.rst:215 +msgid "stdin (in module sys)" +msgstr "" + +#: ../../c-api/subinterpreters.rst:179 ../../c-api/subinterpreters.rst:233 +msgid "Py_FinalizeEx (C function)" +msgstr "" + +#: ../../c-api/subinterpreters.rst:179 +msgid "Py_Initialize (C function)" +msgstr "" + +#: ../../c-api/subinterpreters.rst:210 +msgid "close (in module os)" +msgstr "" diff --git a/c-api/synchronization.po b/c-api/synchronization.po new file mode 100644 index 00000000..1cec1f39 --- /dev/null +++ b/c-api/synchronization.po @@ -0,0 +1,401 @@ +# German translations for Python package. +# Copyright (C) 2001 Python Software Foundation +# This file is distributed under the same license as the Python package. +# Automatically generated, 2026. +# +msgid "" +msgstr "" +"Project-Id-Version: Python 3.15\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" +"PO-Revision-Date: 2026-09-23 06:17+0000\n" +"Last-Translator: Automatically generated\n" +"Language-Team: none\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: de\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../../c-api/synchronization.rst:6 +msgid "Synchronization primitives" +msgstr "" + +#: ../../c-api/synchronization.rst:8 +msgid "The C-API provides a basic mutual exclusion lock." +msgstr "" + +#: ../../c-api/synchronization.rst:12 +msgid "" +"A mutual exclusion lock. The :c:type:`!PyMutex` should be initialized to " +"zero to represent the unlocked state. For example::" +msgstr "" + +#: ../../c-api/synchronization.rst:15 +msgid "PyMutex mutex = {0};" +msgstr "" + +#: ../../c-api/synchronization.rst:17 +msgid "" +"Instances of :c:type:`!PyMutex` should not be copied or moved. Both the " +"contents and address of a :c:type:`!PyMutex` are meaningful, and it must " +"remain at a fixed, writable location in memory." +msgstr "" + +#: ../../c-api/synchronization.rst:23 +msgid "" +"A :c:type:`!PyMutex` currently occupies one byte, but the size should be " +"considered unstable. The size may change in future Python releases without " +"a deprecation period." +msgstr "" + +#: ../../c-api/synchronization.rst:31 +msgid "" +"Lock mutex *m*. If another thread has already locked it, the calling thread " +"will block until the mutex is unlocked. While blocked, the thread will " +"temporarily detach the :term:`thread state ` if one " +"exists." +msgstr "" + +#: ../../c-api/synchronization.rst:39 +msgid "" +"Unlock mutex *m*. The mutex must be locked --- otherwise, the function will " +"issue a fatal error." +msgstr "" + +#: ../../c-api/synchronization.rst:46 +msgid "Returns non-zero if the mutex *m* is currently locked, zero otherwise." +msgstr "" + +#: ../../c-api/synchronization.rst:50 +msgid "" +"This function is intended for use in assertions and debugging only and " +"should not be used to make concurrency control decisions, as the lock state " +"may change immediately after the check." +msgstr "" + +#: ../../c-api/synchronization.rst:59 +msgid "Python critical section API" +msgstr "" + +#: ../../c-api/synchronization.rst:61 +msgid "" +"The critical section API provides a deadlock avoidance layer on top of per-" +"object locks for :term:`free-threaded ` CPython. They are " +"intended to replace reliance on the :term:`global interpreter lock`, and are " +"no-ops in versions of Python with the global interpreter lock." +msgstr "" + +#: ../../c-api/synchronization.rst:66 +msgid "" +"Critical sections are intended to be used for custom types implemented in C-" +"API extensions. They should generally not be used with built-in types like :" +"class:`list` and :class:`dict` because their public C-APIs already use " +"critical sections internally, with the notable exception of :c:func:" +"`PyDict_Next`, which requires critical section to be acquired externally." +msgstr "" + +#: ../../c-api/synchronization.rst:73 +msgid "" +"Critical sections avoid deadlocks by implicitly suspending active critical " +"sections, hence, they do not provide exclusive access such as provided by " +"traditional locks like :c:type:`PyMutex`. When a critical section is " +"started, the per-object lock for the object is acquired. If the code " +"executed inside the critical section calls C-API functions then it can " +"suspend the critical section thereby releasing the per-object lock, so other " +"threads can acquire the per-object lock for the same object." +msgstr "" + +#: ../../c-api/synchronization.rst:81 +msgid "" +"Variants that accept :c:type:`PyMutex` pointers rather than Python objects " +"are also available. Use these variants to start a critical section in a " +"situation where there is no :c:type:`PyObject` -- for example, when working " +"with a C type that does not extend or wrap :c:type:`PyObject` but still " +"needs to call into the C API in a manner that might lead to deadlocks." +msgstr "" + +#: ../../c-api/synchronization.rst:89 +msgid "" +"Operations that need to lock two objects at once must use :c:macro:" +"`Py_BEGIN_CRITICAL_SECTION2`. You *cannot* use nested critical sections to " +"lock more than one object at once, because the inner critical section may " +"suspend the outer critical sections. This API does not provide a way to " +"lock more than two objects at once." +msgstr "" + +#: ../../c-api/synchronization.rst:95 +msgid "Example usage::" +msgstr "" + +#: ../../c-api/synchronization.rst:97 +msgid "" +"static PyObject *\n" +"set_field(MyObject *self, PyObject *value)\n" +"{\n" +" Py_BEGIN_CRITICAL_SECTION(self);\n" +" Py_SETREF(self->field, Py_XNewRef(value));\n" +" Py_END_CRITICAL_SECTION();\n" +" Py_RETURN_NONE;\n" +"}" +msgstr "" + +#: ../../c-api/synchronization.rst:106 +msgid "" +"In the above example, :c:macro:`Py_SETREF` calls :c:macro:`Py_DECREF`, which " +"can call arbitrary code through an object's deallocation function. The " +"critical section API avoids potential deadlocks due to reentrancy and lock " +"ordering by allowing the runtime to temporarily suspend the critical section " +"if the code triggered by the finalizer blocks and calls :c:func:" +"`PyEval_SaveThread`." +msgstr "" + +#: ../../c-api/synchronization.rst:116 +msgid "" +"Acquires the per-object lock for the object *op* and begins a critical " +"section." +msgstr "" + +#: ../../c-api/synchronization.rst:119 ../../c-api/synchronization.rst:151 +#: ../../c-api/synchronization.rst:181 ../../c-api/synchronization.rst:199 +msgid "" +"In the free-threaded build, and when building for the :ref:`Stable ABI " +"`, this macro expands to::" +msgstr "" + +#: ../../c-api/synchronization.rst:122 +msgid "" +"{\n" +" PyCriticalSection _py_cs;\n" +" PyCriticalSection_Begin(&_py_cs, (PyObject*)(op))" +msgstr "" + +#: ../../c-api/synchronization.rst:126 ../../c-api/synchronization.rst:173 +msgid "In the default build, this macro expands to ``{``." +msgstr "" + +#: ../../c-api/synchronization.rst:132 +msgid "Locks the mutex *m* and begins a critical section." +msgstr "" + +#: ../../c-api/synchronization.rst:134 ../../c-api/synchronization.rst:167 +msgid "In the free-threaded build, this macro expands to::" +msgstr "" + +#: ../../c-api/synchronization.rst:136 +msgid "" +"{\n" +" PyCriticalSection _py_cs;\n" +" PyCriticalSection_BeginMutex(&_py_cs, m)" +msgstr "" + +#: ../../c-api/synchronization.rst:140 +msgid "" +"Note that unlike :c:macro:`Py_BEGIN_CRITICAL_SECTION`, there is no cast for " +"the argument of the macro - it must be a :c:type:`PyMutex` pointer." +msgstr "" + +#: ../../c-api/synchronization.rst:143 ../../c-api/synchronization.rst:191 +msgid "On the default build, this macro expands to ``{``." +msgstr "" + +#: ../../c-api/synchronization.rst:149 +msgid "Ends the critical section and releases the per-object lock." +msgstr "" + +#: ../../c-api/synchronization.rst:154 +msgid "" +" PyCriticalSection_End(&_py_cs);\n" +"}" +msgstr "" + +#: ../../c-api/synchronization.rst:157 ../../c-api/synchronization.rst:205 +msgid "In the default build, this macro expands to ``}``." +msgstr "" + +#: ../../c-api/synchronization.rst:163 +msgid "" +"Acquires the per-object locks for the objects *a* and *b* and begins a " +"critical section. The locks are acquired in a consistent order (lowest " +"address first) to avoid lock ordering deadlocks." +msgstr "" + +#: ../../c-api/synchronization.rst:169 +msgid "" +"{\n" +" PyCriticalSection2 _py_cs2;\n" +" PyCriticalSection2_Begin(&_py_cs2, (PyObject*)(a), (PyObject*)(b))" +msgstr "" + +#: ../../c-api/synchronization.rst:179 +msgid "Locks the mutexes *m1* and *m2* and begins a critical section." +msgstr "" + +#: ../../c-api/synchronization.rst:184 +msgid "" +"{\n" +" PyCriticalSection2 _py_cs2;\n" +" PyCriticalSection2_BeginMutex(&_py_cs2, m1, m2)" +msgstr "" + +#: ../../c-api/synchronization.rst:188 +msgid "" +"Note that unlike :c:macro:`Py_BEGIN_CRITICAL_SECTION2`, there is no cast for " +"the arguments of the macro - they must be :c:type:`PyMutex` pointers." +msgstr "" + +#: ../../c-api/synchronization.rst:197 +msgid "Ends the critical section and releases the per-object locks." +msgstr "" + +#: ../../c-api/synchronization.rst:202 +msgid "" +" PyCriticalSection2_End(&_py_cs2);\n" +"}" +msgstr "" + +#: ../../c-api/synchronization.rst:210 +msgid "Low-level critical section API" +msgstr "" + +#: ../../c-api/synchronization.rst:212 +msgid "" +"The following functions and structs are exposed for cases where C macros are " +"not available." +msgstr "" + +#: ../../c-api/synchronization.rst:220 ../../c-api/synchronization.rst:243 +msgid "" +"To be used only as in the macro expansions listed :ref:`earlier in this " +"section `." +msgstr "" + +#: ../../c-api/synchronization.rst:223 ../../c-api/synchronization.rst:246 +msgid "" +"In non-:term:`free-threaded ` builds of CPython, these " +"functions do nothing." +msgstr "" + +#: ../../c-api/synchronization.rst:231 +msgid "" +"To be used only as in the macro expansions listed :ref:`earlier in this " +"section `. Note that the contents of the structures " +"are private and their meaning may change in future Python versions." +msgstr "" + +#: ../../c-api/synchronization.rst:253 +msgid "Legacy locking APIs" +msgstr "" + +#: ../../c-api/synchronization.rst:255 +msgid "" +"These APIs are obsolete since Python 3.13 with the introduction of :c:type:" +"`PyMutex`." +msgstr "" + +#: ../../c-api/synchronization.rst:258 +msgid "These APIs are now a simple wrapper around ``PyMutex``." +msgstr "" + +#: ../../c-api/synchronization.rst:264 +msgid "A pointer to a mutual exclusion lock." +msgstr "" + +#: ../../c-api/synchronization.rst:269 +msgid "The result of acquiring a lock with a timeout." +msgstr "" + +#: ../../c-api/synchronization.rst:275 +msgid "Failed to acquire the lock." +msgstr "" + +#: ../../c-api/synchronization.rst:279 +msgid "The lock was successfully acquired." +msgstr "" + +#: ../../c-api/synchronization.rst:283 +msgid "The lock was interrupted by a signal." +msgstr "" + +#: ../../c-api/synchronization.rst:288 +msgid "Allocate a new lock." +msgstr "" + +#: ../../c-api/synchronization.rst:290 +msgid "" +"On success, this function returns a lock; on failure, this function returns " +"``0`` without an exception set." +msgstr "" + +#: ../../c-api/synchronization.rst:293 ../../c-api/synchronization.rst:305 +#: ../../c-api/synchronization.rst:325 ../../c-api/synchronization.rst:343 +#: ../../c-api/synchronization.rst:351 +msgid "The caller does not need to hold an :term:`attached thread state`." +msgstr "" + +#: ../../c-api/synchronization.rst:295 +msgid "" +"This function now always uses :c:type:`PyMutex`. In prior versions, this " +"would use a lock provided by the operating system." +msgstr "" + +#: ../../c-api/synchronization.rst:302 +msgid "" +"Destroy *lock*. The lock should not be held by any thread when calling this." +msgstr "" + +#: ../../c-api/synchronization.rst:310 +msgid "Acquire *lock* with a timeout." +msgstr "" + +#: ../../c-api/synchronization.rst:312 +msgid "" +"This will wait for *microseconds* microseconds to acquire the lock. If the " +"timeout expires, this function returns :c:enumerator:`PY_LOCK_FAILURE`. If " +"*microseconds* is ``-1``, this will wait indefinitely until the lock has " +"been released." +msgstr "" + +#: ../../c-api/synchronization.rst:317 +msgid "" +"If *intr_flag* is ``1``, acquiring the lock may be interrupted by a signal, " +"in which case this function returns :c:enumerator:`PY_LOCK_INTR`. Upon " +"interruption, it's generally expected that the caller makes a call to :c:" +"func:`Py_MakePendingCalls` to propagate an exception to Python code." +msgstr "" + +#: ../../c-api/synchronization.rst:322 +msgid "" +"If the lock is successfully acquired, this function returns :c:enumerator:" +"`PY_LOCK_ACQUIRED`." +msgstr "" + +#: ../../c-api/synchronization.rst:330 +msgid "Acquire *lock*." +msgstr "" + +#: ../../c-api/synchronization.rst:332 +msgid "" +"If *waitflag* is ``1`` and another thread currently holds the lock, this " +"function will wait until the lock can be acquired and will always return " +"``1``." +msgstr "" + +#: ../../c-api/synchronization.rst:336 +msgid "" +"If *waitflag* is ``0`` and another thread holds the lock, this function will " +"not wait and instead return ``0``. If the lock is not held by any other " +"thread, then this function will acquire it and return ``1``." +msgstr "" + +#: ../../c-api/synchronization.rst:340 +msgid "" +"Unlike :c:func:`PyThread_acquire_lock_timed`, acquiring the lock cannot be " +"interrupted by a signal." +msgstr "" + +#: ../../c-api/synchronization.rst:348 +msgid "" +"Release *lock*. If *lock* is not held, then this function issues a fatal " +"error." +msgstr "" diff --git a/c-api/threads.po b/c-api/threads.po new file mode 100644 index 00000000..440ab053 --- /dev/null +++ b/c-api/threads.po @@ -0,0 +1,1376 @@ +# German translations for Python package. +# Copyright (C) 2001 Python Software Foundation +# This file is distributed under the same license as the Python package. +# Automatically generated, 2026. +# +msgid "" +msgstr "" +"Project-Id-Version: Python 3.15\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" +"PO-Revision-Date: 2026-09-23 06:17+0000\n" +"Last-Translator: Automatically generated\n" +"Language-Team: none\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: de\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../../c-api/threads.rst:6 +msgid "Thread states and the global interpreter lock" +msgstr "" + +#: ../../c-api/threads.rst:13 +msgid "" +"Unless on a :term:`free-threaded build` of :term:`CPython`, the Python " +"interpreter is generally not thread-safe. In order to support multi-" +"threaded Python programs, there's a global lock, called the :term:`global " +"interpreter lock` or :term:`GIL`, that must be held by a thread before " +"accessing Python objects. Without the lock, even the simplest operations " +"could cause problems in a multi-threaded program: for example, when two " +"threads simultaneously increment the reference count of the same object, the " +"reference count could end up being incremented only once instead of twice." +msgstr "" + +#: ../../c-api/threads.rst:22 +msgid "" +"As such, only a thread that holds the GIL may operate on Python objects or " +"invoke Python's C API." +msgstr "" + +#: ../../c-api/threads.rst:27 +msgid "" +"In order to emulate concurrency, the interpreter regularly tries to switch " +"threads between bytecode instructions (see :func:`sys.setswitchinterval`). " +"This is why locks are also necessary for thread-safety in pure-Python code." +msgstr "" + +#: ../../c-api/threads.rst:31 +msgid "" +"Additionally, the global interpreter lock is released around blocking I/O " +"operations, such as reading or writing to a file. From the C API, this is " +"done by :ref:`detaching the thread state `." +msgstr "" + +#: ../../c-api/threads.rst:39 +msgid "" +"The Python interpreter keeps some thread-local information inside a data " +"structure called :c:type:`PyThreadState`, known as a :term:`thread state`. " +"Each thread has a thread-local pointer to a :c:type:`PyThreadState`; a " +"thread state referenced by this pointer is considered to be :term:`attached " +"`." +msgstr "" + +#: ../../c-api/threads.rst:44 +msgid "" +"A thread can only have one :term:`attached thread state` at a time. An " +"attached thread state is typically analogous with holding the GIL, except on " +"free-threaded builds. On builds with the GIL enabled, attaching a thread " +"state will block until the GIL can be acquired. However, even on builds with " +"the GIL disabled, it is still required to have an attached thread state, as " +"the interpreter needs to keep track of which threads may access Python " +"objects." +msgstr "" + +#: ../../c-api/threads.rst:53 +msgid "" +"Even on the free-threaded build, attaching a thread state may block, as the " +"GIL can be re-enabled or threads might be temporarily suspended (such as " +"during a garbage collection)." +msgstr "" + +#: ../../c-api/threads.rst:57 +msgid "" +"Generally, there will always be an attached thread state when using Python's " +"C API, including during embedding and when implementing methods, so it's " +"uncommon to need to set up a thread state on your own. Only in some specific " +"cases, such as in a :c:macro:`Py_BEGIN_ALLOW_THREADS` block or in a fresh " +"thread, will the thread not have an attached thread state. If uncertain, " +"check if :c:func:`PyThreadState_GetUnchecked` returns ``NULL``." +msgstr "" + +#: ../../c-api/threads.rst:64 +msgid "" +"If it turns out that you do need to create a thread state, it is recommended " +"to use :c:func:`PyThreadState_Ensure` or :c:func:" +"`PyThreadState_EnsureFromView`, which will manage the thread state for you." +msgstr "" + +#: ../../c-api/threads.rst:72 +msgid "Detaching the thread state from extension code" +msgstr "" + +#: ../../c-api/threads.rst:74 +msgid "" +"Most extension code manipulating the :term:`thread state` has the following " +"simple structure::" +msgstr "" + +#: ../../c-api/threads.rst:77 +msgid "" +"Save the thread state in a local variable.\n" +"... Do some blocking I/O operation ...\n" +"Restore the thread state from the local variable." +msgstr "" + +#: ../../c-api/threads.rst:81 +msgid "This is so common that a pair of macros exists to simplify it::" +msgstr "" + +#: ../../c-api/threads.rst:83 +msgid "" +"Py_BEGIN_ALLOW_THREADS\n" +"... Do some blocking I/O operation ...\n" +"Py_END_ALLOW_THREADS" +msgstr "" + +#: ../../c-api/threads.rst:91 +msgid "" +"The :c:macro:`Py_BEGIN_ALLOW_THREADS` macro opens a new block and declares a " +"hidden local variable; the :c:macro:`Py_END_ALLOW_THREADS` macro closes the " +"block." +msgstr "" + +#: ../../c-api/threads.rst:95 +msgid "The block above expands to the following code::" +msgstr "" + +#: ../../c-api/threads.rst:97 +msgid "" +"PyThreadState *_save;\n" +"\n" +"_save = PyEval_SaveThread();\n" +"... Do some blocking I/O operation ...\n" +"PyEval_RestoreThread(_save);" +msgstr "" + +#: ../../c-api/threads.rst:107 +msgid "Here is how these functions work:" +msgstr "" + +#: ../../c-api/threads.rst:109 +msgid "" +"The attached thread state implies that the GIL is held for the interpreter. " +"To detach it, :c:func:`PyEval_SaveThread` is called and the result is stored " +"in a local variable." +msgstr "" + +#: ../../c-api/threads.rst:113 +msgid "" +"By detaching the thread state, the GIL is released, which allows other " +"threads to attach to the interpreter and execute while the current thread " +"performs blocking I/O. When the I/O operation is complete, the old thread " +"state is reattached by calling :c:func:`PyEval_RestoreThread`, which will " +"wait until the GIL can be acquired." +msgstr "" + +#: ../../c-api/threads.rst:120 +msgid "" +"Performing blocking I/O is the most common use case for detaching the thread " +"state, but it is also useful to call it over long-running native code that " +"doesn't need access to Python objects or Python's C API. For example, the " +"standard :mod:`zlib` and :mod:`hashlib` modules detach the :term:`thread " +"state ` when compressing or hashing data." +msgstr "" + +#: ../../c-api/threads.rst:127 +msgid "" +"On a :term:`free-threaded build`, the :term:`GIL` is usually out of the " +"question, but **detaching the thread state is still required**, because the " +"interpreter periodically needs to block all threads to get a consistent view " +"of Python objects without the risk of race conditions. For example, CPython " +"currently suspends all threads for a short period of time while running the " +"garbage collector." +msgstr "" + +#: ../../c-api/threads.rst:136 +msgid "" +"Detaching the thread state can lead to unexpected behavior during " +"interpreter finalization. See :ref:`cautions-regarding-runtime-finalization` " +"for more details." +msgstr "" + +#: ../../c-api/threads.rst:142 +msgid "APIs" +msgstr "" + +#: ../../c-api/threads.rst:144 +msgid "" +"The following macros are normally used without a trailing semicolon; look " +"for example usage in the Python source distribution." +msgstr "" + +#: ../../c-api/threads.rst:149 +msgid "" +"These macros are still necessary on the :term:`free-threaded build` to " +"prevent deadlocks." +msgstr "" + +#: ../../c-api/threads.rst:154 +msgid "" +"This macro expands to ``{ PyThreadState *_save; _save = PyEval_SaveThread();" +"``. Note that it contains an opening brace; it must be matched with a " +"following :c:macro:`Py_END_ALLOW_THREADS` macro. See above for further " +"discussion of this macro." +msgstr "" + +#: ../../c-api/threads.rst:162 +msgid "" +"This macro expands to ``PyEval_RestoreThread(_save); }``. Note that it " +"contains a closing brace; it must be matched with an earlier :c:macro:" +"`Py_BEGIN_ALLOW_THREADS` macro. See above for further discussion of this " +"macro." +msgstr "" + +#: ../../c-api/threads.rst:170 +msgid "" +"This macro expands to ``PyEval_RestoreThread(_save);``: it is equivalent to :" +"c:macro:`Py_END_ALLOW_THREADS` without the closing brace." +msgstr "" + +#: ../../c-api/threads.rst:176 +msgid "" +"This macro expands to ``_save = PyEval_SaveThread();``: it is equivalent to :" +"c:macro:`Py_BEGIN_ALLOW_THREADS` without the opening brace and variable " +"declaration." +msgstr "" + +#: ../../c-api/threads.rst:186 +msgid "Using the C API from foreign threads" +msgstr "" + +#: ../../c-api/threads.rst:188 +msgid "" +"When threads are created using the dedicated Python APIs (such as the :mod:" +"`threading` module), a thread state is automatically associated with them, " +"However, when a thread is created from native code (for example, by a third-" +"party library with its own thread management), it doesn't hold an attached " +"thread state." +msgstr "" + +#: ../../c-api/threads.rst:194 +msgid "" +"If you need to call Python code from these threads (often this will be part " +"of a callback API provided by the aforementioned third-party library), you " +"must first register these threads with the interpreter by creating a new " +"thread state and attaching it." +msgstr "" + +#: ../../c-api/threads.rst:199 +msgid "" +"The easiest way to do this is through :c:func:`PyThreadState_Ensure` or :c:" +"func:`PyThreadState_EnsureFromView`." +msgstr "" + +#: ../../c-api/threads.rst:203 +msgid "" +"These functions require an argument pointing to the desired interpreter; " +"such a pointer can be acquired via a call to :c:func:" +"`PyInterpreterGuard_FromCurrent` (for ``PyThreadState_Ensure``) or :c:func:" +"`PyInterpreterView_FromCurrent` (for ``PyThreadState_EnsureFromView``) from " +"the function that creates the thread. If no pointer is available (such as " +"when the given native thread library doesn't provide a data argument), :c:" +"func:`PyInterpreterView_FromMain` can be used to get a view for the main " +"interpreter, but note that this will make the code incompatible with " +"subinterpreters." +msgstr "" + +#: ../../c-api/threads.rst:214 +msgid "For example::" +msgstr "" + +#: ../../c-api/threads.rst:216 +msgid "" +"// The return value of PyInterpreterGuard_FromCurrent() from the\n" +"// function that created this thread.\n" +"PyInterpreterGuard *guard = thread_data->guard;\n" +"\n" +"// Create a new thread state for the interpreter.\n" +"PyThreadStateToken *token = PyThreadState_Ensure(guard);\n" +"if (token == NULL) {\n" +" PyInterpreterGuard_Close(guard);\n" +" return;\n" +"}\n" +"\n" +"// We have a valid thread state -- perform Python actions here.\n" +"result = CallSomeFunction();\n" +"// Evaluate result or handle exceptions.\n" +"\n" +"// Release the thread state. No calls to the C API are allowed beyond this\n" +"// point.\n" +"PyThreadState_Release(token);\n" +"PyInterpreterGuard_Close(guard);" +msgstr "" + +#: ../../c-api/threads.rst:237 +msgid "" +"Keep in mind that calling ``PyThreadState_Ensure`` might not always create a " +"new thread state, and calling ``PyThreadState_Release`` might not always " +"detach it. These functions may reuse an existing attached thread state, or " +"may re-attach a thread state that was previously attached for the current " +"thread." +msgstr "" + +#: ../../c-api/threads.rst:243 +msgid ":pep:`788`" +msgstr "" + +#: ../../c-api/threads.rst:248 +msgid "Reusing a thread state across repeated calls" +msgstr "" + +#: ../../c-api/threads.rst:250 +msgid "" +"Creating and destroying a :c:type:`PyThreadState` is not free, and is more " +"expensive on a :term:`free-threaded build`. A foreign thread that calls " +"into the interpreter many times -- for example, a worker thread in a native " +"thread pool -- should avoid creating a fresh thread state on every entry and " +"destroying it on every exit. Instead, set up one thread state when the " +"thread starts (or lazily on its first call into Python), attach and detach " +"it around each call, and tear it down once when the thread exits." +msgstr "" + +#: ../../c-api/threads.rst:258 +msgid "" +"Manage the thread state explicitly with :c:func:`PyThreadState_New`, " +"attaching and detaching it with :c:func:`PyEval_RestoreThread` and :c:func:" +"`PyEval_SaveThread`. This happens in three distinct phases, at different " +"points in the thread's life." +msgstr "" + +#: ../../c-api/threads.rst:263 +msgid "" +"When the thread starts, create one thread state for it. ``interp`` is the " +"target interpreter, captured by the code that created this thread while it " +"held an attached thread state (for example via :c:func:" +"`PyInterpreterState_Get`)::" +msgstr "" + +#: ../../c-api/threads.rst:267 +msgid "PyThreadState *tstate = PyThreadState_New(interp);" +msgstr "" + +#: ../../c-api/threads.rst:269 +msgid "" +"Then, on each call into Python -- which may happen many times over the " +"thread's life -- attach the thread state, make the Python C API calls that " +"require it, and detach again so the thread does not hold the GIL while off " +"doing non-Python work::" +msgstr "" + +#: ../../c-api/threads.rst:274 +msgid "" +"PyEval_RestoreThread(tstate);\n" +"result = CallSomeFunction(); /* your Python C API calls go here */\n" +"PyEval_SaveThread();" +msgstr "" + +#: ../../c-api/threads.rst:278 +msgid "" +"When the thread is finished calling into Python, destroy the thread state " +"once::" +msgstr "" + +#: ../../c-api/threads.rst:280 +msgid "" +"PyEval_RestoreThread(tstate);\n" +"PyThreadState_Clear(tstate);\n" +"PyThreadState_DeleteCurrent();" +msgstr "" + +#: ../../c-api/threads.rst:284 +msgid "" +"The general-purpose entry points for calling in from a foreign thread -- :c:" +"func:`PyThreadState_Ensure` and the older :c:func:`PyGILState_Ensure` -- do " +"*not* guarantee a persistent thread state: their thread-state lifetime is " +"deliberately implementation-defined, so a matched acquire/release pair may " +"create and destroy a thread state each time. Use :c:func:" +"`PyThreadState_New`, as shown here, whenever you specifically want to reuse " +"one thread state across calls." +msgstr "" + +#: ../../c-api/threads.rst:292 +msgid "" +"The code that created the foreign thread must arrange for the shutdown " +"sequence to run before the thread exits, and before :c:func:`Py_FinalizeEx` " +"is called. If interpreter finalization begins first, the shutdown :c:func:" +"`PyEval_RestoreThread` call will hang the thread rather than return (see :" +"ref:`cautions-regarding-runtime-finalization`). If the thread exits without " +"running the shutdown sequence, the thread state is leaked for the remainder " +"of the process." +msgstr "" + +#: ../../c-api/threads.rst:303 +msgid "Attaching/detaching thread states" +msgstr "" + +#: ../../c-api/threads.rst:307 +msgid "" +"Ensure that the thread has an attached thread state for the interpreter " +"protected by *guard*, and thus can safely invoke that interpreter." +msgstr "" + +#: ../../c-api/threads.rst:311 +msgid "" +"It is OK to call this function if the thread already has an attached thread " +"state, as long as there is a subsequent call to :c:func:" +"`PyThreadState_Release` that matches this one (meaning that \"nested\" calls " +"to this function are permitted)." +msgstr "" + +#: ../../c-api/threads.rst:316 +msgid "" +"The function's effect (if any) will be reversed by the matching call to :c:" +"func:`PyThreadState_Release`." +msgstr "" + +#: ../../c-api/threads.rst:319 +msgid "" +"On error, this function returns ``NULL`` *without* an exception set. Do not " +"call :c:func:`!PyThreadState_Release` in this case." +msgstr "" + +#: ../../c-api/threads.rst:322 +msgid "" +"On success, this function returns a pointer value that must be passed to the " +"matching call to :c:func:`!PyThreadState_Release`." +msgstr "" + +#: ../../c-api/threads.rst:325 +msgid "" +"The conditions in which this function creates a new :term:`thread state` are " +"considered unstable and implementation-dependent. If you need to control the " +"exact lifetime of a thread state, consider using :c:func:" +"`PyThreadState_New`. However, do not avoid this function solely on the basis " +"that the lifetime of the thread state may be inconsistent across versions; " +"changes to this function will be done with caution and in a backwards-" +"compatible manner. In particular, the saving of thread-local variables and " +"similar state will be retained across Python versions." +msgstr "" + +#: ../../c-api/threads.rst:336 +msgid "" +"The exact behavior of whether this function creates a new thread state is " +"described below, but be aware that this may change in the future." +msgstr "" + +#: ../../c-api/threads.rst:339 +msgid "" +"First, this function checks if an attached thread state is present. If there " +"is, this function then checks if the interpreter of that thread state " +"matches the interpreter guarded by *guard*. If that is the case, this " +"function simply marks the thread state as being used by a " +"``PyThreadState_Ensure`` call and returns." +msgstr "" + +#: ../../c-api/threads.rst:345 +msgid "" +"If there is no attached thread state, then this function checks if any " +"thread state has been used by the current OS thread. (This is returned by :c:" +"func:`PyGILState_GetThisThreadState`.) If there was, then this function " +"checks if that thread state's interpreter matches *guard*. If it does, it is " +"re-attached and marked as used." +msgstr "" + +#: ../../c-api/threads.rst:351 +msgid "" +"Otherwise, if both of the above cases fail, a new thread state is created " +"for *guard*. It is then attached and marked as owned by " +"``PyThreadState_Ensure``." +msgstr "" + +#: ../../c-api/threads.rst:359 +msgid "Get an attached thread state for the interpreter referenced by *view*." +msgstr "" + +#: ../../c-api/threads.rst:361 +msgid "" +"The behavior and return value are the same as for :c:func:" +"`PyThreadState_Ensure`; additionally, if the function succeeds, the " +"interpreter referenced by *view* will be implicitly guarded. The guard will " +"be released upon the corresponding :c:func:`PyThreadState_Release` call." +msgstr "" + +#: ../../c-api/threads.rst:371 +msgid "" +"Undo a :c:func:`PyThreadState_Ensure` or :c:func:" +"`PyThreadState_EnsureFromView` call." +msgstr "" + +#: ../../c-api/threads.rst:374 +msgid "" +"This must be called exactly once for each successful *Ensure* call, with " +"*token* set to that call's return value." +msgstr "" + +#: ../../c-api/threads.rst:377 +msgid "" +"The state that was attached before the corresponding *Ensure* call (if any) " +"will be attached when :c:func:`PyThreadState_Release` returns." +msgstr "" + +#: ../../c-api/threads.rst:380 +msgid "" +"The exact behavior of whether this function deletes a thread state is " +"considered unstable and implementation-dependent." +msgstr "" + +#: ../../c-api/threads.rst:385 +msgid "" +"Currently, this function will decrement an internal counter on the attached " +"thread state. If this counter ever reaches below zero, this function emits a " +"fatal error (via :c:func:`Py_FatalError`)." +msgstr "" + +#: ../../c-api/threads.rst:389 +msgid "" +"If the attached thread state is owned by ``PyThreadState_Ensure``, then the " +"attached thread state will be deallocated and deleted upon the internal " +"counter reaching zero. Otherwise, nothing happens when the counter reaches " +"zero." +msgstr "" + +#: ../../c-api/threads.rst:397 +msgid "" +"An opaque token retrieved from a :c:func:`PyThreadState_Ensure` call and " +"passed to a corresponding :c:func:`PyThreadState_Release` call." +msgstr "" + +#: ../../c-api/threads.rst:405 +msgid "GIL-state APIs" +msgstr "" + +#: ../../c-api/threads.rst:407 +msgid "" +"The following APIs are generally not compatible with subinterpreters and " +"will hang the process during interpreter finalization (see :ref:`cautions-" +"regarding-runtime-finalization`). As such, these APIs were :term:`soft " +"deprecated` in Python 3.15 in favor of the :ref:`new APIs `." +msgstr "" + +#: ../../c-api/threads.rst:416 +msgid "" +"The type of the value returned by :c:func:`PyGILState_Ensure` and passed to :" +"c:func:`PyGILState_Release`." +msgstr "" + +#: ../../c-api/threads.rst:421 +msgid "The GIL was already held when :c:func:`PyGILState_Ensure` was called." +msgstr "" + +#: ../../c-api/threads.rst:425 +msgid "The GIL was not held when :c:func:`PyGILState_Ensure` was called." +msgstr "" + +#: ../../c-api/threads.rst:430 +msgid "" +"Ensure that the current thread is ready to call the Python C API regardless " +"of the current state of Python, or of the :term:`attached thread state`. " +"This may be called as many times as desired by a thread as long as each call " +"is matched with a call to :c:func:`PyGILState_Release`. In general, other " +"thread-related APIs may be used between :c:func:`PyGILState_Ensure` and :c:" +"func:`PyGILState_Release` calls as long as the thread state is restored to " +"its previous state before the Release(). For example, normal usage of the :" +"c:macro:`Py_BEGIN_ALLOW_THREADS` and :c:macro:`Py_END_ALLOW_THREADS` macros " +"is acceptable." +msgstr "" + +#: ../../c-api/threads.rst:440 +msgid "" +"The return value is an opaque \"handle\" to the :term:`attached thread " +"state` when :c:func:`PyGILState_Ensure` was called, and must be passed to :c:" +"func:`PyGILState_Release` to ensure Python is left in the same state. Even " +"though recursive calls are allowed, these handles *cannot* be shared - each " +"unique call to :c:func:`PyGILState_Ensure` must save the handle for its call " +"to :c:func:`PyGILState_Release`." +msgstr "" + +#: ../../c-api/threads.rst:447 +msgid "" +"When the function returns, there will be an :term:`attached thread state` " +"and the thread will be able to call arbitrary Python code." +msgstr "" + +#: ../../c-api/threads.rst:450 +msgid "" +"This function has no way to return an error. As such, errors are either " +"fatal (that is, they send ``SIGABRT`` and crash the process; see :c:func:" +"`Py_FatalError`), or the thread will be permanently blocked (such as during " +"interpreter finalization)." +msgstr "" + +#: ../../c-api/threads.rst:456 +msgid "" +"Calling this function when the interpreter is finalizing will infinitely " +"hang the thread, which may cause deadlocks. :ref:`cautions-regarding-runtime-" +"finalization` for more details." +msgstr "" + +#: ../../c-api/threads.rst:460 +msgid "" +"In addition, this function generally does not work with subinterpreters when " +"used from foreign threads, because this function has no way of knowing which " +"interpreter created the thread (and as such, will implicitly pick the main " +"interpreter)." +msgstr "" + +#: ../../c-api/threads.rst:465 ../../c-api/threads.rst:625 +#: ../../c-api/threads.rst:819 +msgid "" +"Hangs the current thread, rather than terminating it, if called while the " +"interpreter is finalizing." +msgstr "" + +#: ../../c-api/threads.rst:469 +msgid "" +"Use :c:func:`PyThreadState_Ensure` or :c:func:`PyThreadState_EnsureFromView` " +"instead." +msgstr "" + +#: ../../c-api/threads.rst:476 +msgid "" +"Release any resources previously acquired. After this call, Python's state " +"will be the same as it was prior to the corresponding :c:func:" +"`PyGILState_Ensure` call (but generally this state will be unknown to the " +"caller, hence the use of the GIL-state API)." +msgstr "" + +#: ../../c-api/threads.rst:481 +msgid "" +"Every call to :c:func:`PyGILState_Ensure` must be matched by a call to :c:" +"func:`PyGILState_Release` on the same thread." +msgstr "" + +#: ../../c-api/threads.rst:484 +msgid "Use :c:func:`PyThreadState_Release` instead." +msgstr "" + +#: ../../c-api/threads.rst:490 +msgid "" +"Get the :term:`thread state` that was most recently :term:`attached " +"` for this thread. (If the most recent thread state " +"has been deleted, this returns ``NULL``.)" +msgstr "" + +#: ../../c-api/threads.rst:494 +msgid "If the caller has an attached thread state, it is returned." +msgstr "" + +#: ../../c-api/threads.rst:496 +msgid "" +"In other terms, this function returns the thread state that will be used by :" +"c:func:`PyGILState_Ensure`. If this returns ``NULL``, then " +"``PyGILState_Ensure`` will create a new thread state." +msgstr "" + +#: ../../c-api/threads.rst:500 +msgid "This function cannot fail." +msgstr "" + +#: ../../c-api/threads.rst:502 +msgid "" +"Use :c:func:`PyThreadState_Get` or :c:func:`PyThreadState_GetUnchecked` " +"instead." +msgstr "" + +#: ../../c-api/threads.rst:509 +msgid "" +"Return ``1`` if the current thread has an :term:`attached thread state` that " +"matches the thread state returned by :c:func:" +"`PyGILState_GetThisThreadState`. If the caller has no attached thread state " +"or it otherwise doesn't match, then this returns ``0``." +msgstr "" + +#: ../../c-api/threads.rst:514 +msgid "" +"If the current Python process has ever created a subinterpreter, this " +"function will *always* return ``1``." +msgstr "" + +#: ../../c-api/threads.rst:517 +msgid "This is mainly a helper/diagnostic function." +msgstr "" + +#: ../../c-api/threads.rst:521 +msgid "Use ``PyThreadState_GetUnchecked() != NULL`` instead." +msgstr "" + +#: ../../c-api/threads.rst:528 +msgid "Cautions about fork()" +msgstr "" + +#: ../../c-api/threads.rst:530 +msgid "" +"Another important thing to note about threads is their behaviour in the face " +"of the C :c:func:`fork` call. On most systems with :c:func:`fork`, after a " +"process forks only the thread that issued the fork will exist. This has a " +"concrete impact both on how locks must be handled and on all stored state in " +"CPython's runtime." +msgstr "" + +#: ../../c-api/threads.rst:536 +msgid "" +"The fact that only the \"current\" thread remains means any locks held by " +"other threads will never be released. Python solves this for :func:`os.fork` " +"by acquiring the locks it uses internally before the fork, and releasing " +"them afterwards. In addition, it resets any :ref:`lock-objects` in the " +"child. When extending or embedding Python, there is no way to inform Python " +"of additional (non-Python) locks that need to be acquired before or reset " +"after a fork. OS facilities such as :c:func:`!pthread_atfork` would need to " +"be used to accomplish the same thing. Additionally, when extending or " +"embedding Python, calling :c:func:`fork` directly rather than through :func:" +"`os.fork` (and returning to or calling into Python) may result in a deadlock " +"by one of Python's internal locks being held by a thread that is defunct " +"after the fork. :c:func:`PyOS_AfterFork_Child` tries to reset the necessary " +"locks, but is not always able to." +msgstr "" + +#: ../../c-api/threads.rst:551 +msgid "" +"The fact that all other threads go away also means that CPython's runtime " +"state there must be cleaned up properly, which :func:`os.fork` does. This " +"means finalizing all other :c:type:`PyThreadState` objects belonging to the " +"current interpreter and all other :c:type:`PyInterpreterState` objects. Due " +"to this and the special nature of the :ref:`\"main\" interpreter `, :c:func:`fork` should only be called in that " +"interpreter's \"main\" thread, where the CPython global runtime was " +"originally initialized. The only exception is if :c:func:`exec` will be " +"called immediately after." +msgstr "" + +#: ../../c-api/threads.rst:564 +msgid "High-level APIs" +msgstr "" + +#: ../../c-api/threads.rst:566 +msgid "" +"These are the most commonly used types and functions when writing multi-" +"threaded C extensions." +msgstr "" + +#: ../../c-api/threads.rst:572 +msgid "" +"This data structure represents the state of a single thread. The only " +"public data member is:" +msgstr "" + +#: ../../c-api/threads.rst:577 +msgid "This thread's interpreter state." +msgstr "" + +#: ../../c-api/threads.rst:588 +msgid "Deprecated function which does nothing." +msgstr "" + +#: ../../c-api/threads.rst:590 +msgid "" +"In Python 3.6 and older, this function created the GIL if it didn't exist." +msgstr "" + +#: ../../c-api/threads.rst:592 +msgid "The function now does nothing." +msgstr "" + +#: ../../c-api/threads.rst:595 +msgid "" +"This function is now called by :c:func:`Py_Initialize()`, so you don't have " +"to call it yourself anymore." +msgstr "" + +#: ../../c-api/threads.rst:599 +msgid "" +"This function cannot be called before :c:func:`Py_Initialize()` anymore." +msgstr "" + +#: ../../c-api/threads.rst:609 +msgid "" +"Detach the :term:`attached thread state` and return it. The thread will have " +"no :term:`thread state` upon returning." +msgstr "" + +#: ../../c-api/threads.rst:615 +msgid "" +"Set the :term:`attached thread state` to *tstate*. The passed :term:`thread " +"state` **should not** be :term:`attached `, otherwise " +"deadlock ensues. *tstate* will be attached upon returning." +msgstr "" + +#: ../../c-api/threads.rst:620 ../../c-api/threads.rst:809 +msgid "" +"Calling this function from a thread when the runtime is finalizing will hang " +"the thread until the program exits, even if the thread was not created by " +"Python. Refer to :ref:`cautions-regarding-runtime-finalization` for more " +"details." +msgstr "" + +#: ../../c-api/threads.rst:631 +msgid "" +"Return the :term:`attached thread state`. If the thread has no attached " +"thread state, (such as when inside of :c:macro:`Py_BEGIN_ALLOW_THREADS` " +"block), then this issues a fatal error (so that the caller needn't check for " +"``NULL``)." +msgstr "" + +#: ../../c-api/threads.rst:636 +msgid "See also :c:func:`PyThreadState_GetUnchecked`." +msgstr "" + +#: ../../c-api/threads.rst:640 +msgid "" +"Similar to :c:func:`PyThreadState_Get`, but don't kill the process with a " +"fatal error if it is NULL. The caller is responsible to check if the result " +"is NULL." +msgstr "" + +#: ../../c-api/threads.rst:644 +msgid "" +"In Python 3.5 to 3.12, the function was private and known as " +"``_PyThreadState_UncheckedGet()``." +msgstr "" + +#: ../../c-api/threads.rst:651 +msgid "" +"Set the :term:`attached thread state` to *tstate*, and return the :term:" +"`thread state` that was attached prior to calling." +msgstr "" + +#: ../../c-api/threads.rst:654 +msgid "" +"This function is safe to call without an :term:`attached thread state`; it " +"will simply return ``NULL`` indicating that there was no prior thread state." +msgstr "" + +#: ../../c-api/threads.rst:658 +msgid ":c:func:`PyEval_ReleaseThread`" +msgstr "" + +#: ../../c-api/threads.rst:661 +msgid "" +"Similar to :c:func:`PyGILState_Ensure`, this function will hang the thread " +"if the runtime is finalizing." +msgstr "" + +#: ../../c-api/threads.rst:666 +msgid "Low-level APIs" +msgstr "" + +#: ../../c-api/threads.rst:670 +msgid "" +"Create a new thread state object belonging to the given interpreter object. " +"An :term:`attached thread state` is not needed." +msgstr "" + +#: ../../c-api/threads.rst:675 +msgid "" +"Reset all information in a :term:`thread state` object. *tstate* must be :" +"term:`attached `" +msgstr "" + +#: ../../c-api/threads.rst:678 +msgid "" +"This function now calls the :c:member:`!PyThreadState.on_delete` callback. " +"Previously, that happened in :c:func:`PyThreadState_Delete`." +msgstr "" + +#: ../../c-api/threads.rst:682 +msgid "The :c:member:`!PyThreadState.on_delete` callback was removed." +msgstr "" + +#: ../../c-api/threads.rst:688 +msgid "" +"Destroy a :term:`thread state` object. *tstate* should not be :term:" +"`attached ` to any thread. *tstate* must have been " +"reset with a previous call to :c:func:`PyThreadState_Clear`." +msgstr "" + +#: ../../c-api/threads.rst:696 +msgid "" +"Detach the :term:`attached thread state` (which must have been reset with a " +"previous call to :c:func:`PyThreadState_Clear`) and then destroy it." +msgstr "" + +#: ../../c-api/threads.rst:699 +msgid "" +"No :term:`thread state` will be :term:`attached ` " +"upon returning." +msgstr "" + +#: ../../c-api/threads.rst:704 +msgid "Get the current frame of the Python thread state *tstate*." +msgstr "" + +#: ../../c-api/threads.rst:706 +msgid "" +"Return a :term:`strong reference`. Return ``NULL`` if no frame is currently " +"executing." +msgstr "" + +#: ../../c-api/threads.rst:709 +msgid "See also :c:func:`PyEval_GetFrame`." +msgstr "" + +#: ../../c-api/threads.rst:711 ../../c-api/threads.rst:720 +#: ../../c-api/threads.rst:729 +msgid "" +"*tstate* must not be ``NULL``, and must be :term:`attached `." +msgstr "" + +#: ../../c-api/threads.rst:718 +msgid "" +"Get the unique :term:`thread state` identifier of the Python thread state " +"*tstate*." +msgstr "" + +#: ../../c-api/threads.rst:727 +msgid "Get the interpreter of the Python thread state *tstate*." +msgstr "" + +#: ../../c-api/threads.rst:736 +msgid "Suspend tracing and profiling in the Python thread state *tstate*." +msgstr "" + +#: ../../c-api/threads.rst:738 +msgid "Resume them using the :c:func:`PyThreadState_LeaveTracing` function." +msgstr "" + +#: ../../c-api/threads.rst:745 +msgid "" +"Resume tracing and profiling in the Python thread state *tstate* suspended " +"by the :c:func:`PyThreadState_EnterTracing` function." +msgstr "" + +#: ../../c-api/threads.rst:748 +msgid "" +"See also :c:func:`PyEval_SetTrace` and :c:func:`PyEval_SetProfile` functions." +msgstr "" + +#: ../../c-api/threads.rst:756 +msgid "" +"Set the stack protection start address and stack protection size of a Python " +"thread state." +msgstr "" + +#: ../../c-api/threads.rst:759 +msgid "" +"On success, return ``0``. On failure, set an exception and return ``-1``." +msgstr "" + +#: ../../c-api/threads.rst:762 +msgid "" +"CPython implements :ref:`recursion control ` for C code by " +"raising :py:exc:`RecursionError` when it notices that the machine execution " +"stack is close to overflow. See for example the :c:func:" +"`Py_EnterRecursiveCall` function. For this, it needs to know the location of " +"the current thread's stack, which it normally gets from the operating " +"system. When the stack is changed, for example using context switching " +"techniques like the Boost library's ``boost::context``, you must call :c:" +"func:`~PyUnstable_ThreadState_SetStackProtection` to inform CPython of the " +"change." +msgstr "" + +#: ../../c-api/threads.rst:771 +msgid "" +"Call :c:func:`~PyUnstable_ThreadState_SetStackProtection` either before or " +"after changing the stack. Do not call any other Python C API between the " +"call and the stack change." +msgstr "" + +#: ../../c-api/threads.rst:776 +msgid "" +"See :c:func:`PyUnstable_ThreadState_ResetStackProtection` for undoing this " +"operation." +msgstr "" + +#: ../../c-api/threads.rst:783 +msgid "" +"Reset the stack protection start address and stack protection size of a " +"Python thread state to the operating system defaults." +msgstr "" + +#: ../../c-api/threads.rst:786 +msgid "" +"See :c:func:`PyUnstable_ThreadState_SetStackProtection` for an explanation." +msgstr "" + +#: ../../c-api/threads.rst:793 +msgid "" +"Return a dictionary in which extensions can store thread-specific state " +"information. Each extension should use a unique key to use to store state " +"in the dictionary. It is okay to call this function when no :term:`thread " +"state` is :term:`attached `. If this function returns " +"``NULL``, no exception has been raised and the caller should assume no " +"thread state is attached." +msgstr "" + +#: ../../c-api/threads.rst:803 +msgid "" +":term:`Attach ` *tstate* to the current thread, which " +"must not be ``NULL`` or already :term:`attached `." +msgstr "" + +#: ../../c-api/threads.rst:806 +msgid "" +"The calling thread must not already have an :term:`attached thread state`." +msgstr "" + +#: ../../c-api/threads.rst:814 +msgid "" +"Updated to be consistent with :c:func:`PyEval_RestoreThread`, :c:func:" +"`Py_END_ALLOW_THREADS`, and :c:func:`PyGILState_Ensure`, and terminate the " +"current thread if called while the interpreter is finalizing." +msgstr "" + +#: ../../c-api/threads.rst:823 +msgid "" +":c:func:`PyEval_RestoreThread` is a higher-level function which is always " +"available (even when threads have not been initialized)." +msgstr "" + +#: ../../c-api/threads.rst:829 +msgid "" +"Detach the :term:`attached thread state`. The *tstate* argument, which must " +"not be ``NULL``, is only used to check that it represents the :term:" +"`attached thread state` --- if it isn't, a fatal error is reported." +msgstr "" + +#: ../../c-api/threads.rst:834 +msgid "" +":c:func:`PyEval_SaveThread` is a higher-level function which is always " +"available (even when threads have not been initialized)." +msgstr "" + +#: ../../c-api/threads.rst:839 +msgid "Asynchronous notifications" +msgstr "" + +#: ../../c-api/threads.rst:841 +msgid "" +"A mechanism is provided to make asynchronous notifications to the main " +"interpreter thread. These notifications take the form of a function pointer " +"and a void pointer argument." +msgstr "" + +#: ../../c-api/threads.rst:848 +msgid "" +"Schedule a function to be called from the main interpreter thread. On " +"success, ``0`` is returned and *func* is queued for being called in the main " +"thread. On failure, ``-1`` is returned without setting any exception." +msgstr "" + +#: ../../c-api/threads.rst:852 +msgid "" +"When successfully queued, *func* will be *eventually* called from the main " +"interpreter thread with the argument *arg*. It will be called " +"asynchronously with respect to normally running Python code, but with both " +"these conditions met:" +msgstr "" + +#: ../../c-api/threads.rst:857 +msgid "on a :term:`bytecode` boundary;" +msgstr "" + +#: ../../c-api/threads.rst:858 +msgid "" +"with the main thread holding an :term:`attached thread state` (*func* can " +"therefore use the full C API)." +msgstr "" + +#: ../../c-api/threads.rst:861 +msgid "" +"*func* must return ``0`` on success, or ``-1`` on failure with an exception " +"set. *func* won't be interrupted to perform another asynchronous " +"notification recursively, but it can still be interrupted to switch threads " +"if the :term:`thread state ` is detached." +msgstr "" + +#: ../../c-api/threads.rst:866 +msgid "" +"This function doesn't need an :term:`attached thread state`. However, to " +"call this function in a subinterpreter, the caller must have an :term:" +"`attached thread state`. Otherwise, the function *func* can be scheduled to " +"be called from the wrong interpreter." +msgstr "" + +#: ../../c-api/threads.rst:871 +msgid "" +"This is a low-level function, only useful for very special cases. There is " +"no guarantee that *func* will be called as quick as possible. If the main " +"thread is busy executing a system call, *func* won't be called before the " +"system call returns. This function is generally **not** suitable for " +"calling Python code from arbitrary C threads. Instead, use :c:func:" +"`PyThreadState_EnsureFromView`." +msgstr "" + +#: ../../c-api/threads.rst:880 +msgid "" +"If this function is called in a subinterpreter, the function *func* is now " +"scheduled to be called from the subinterpreter, rather than being called " +"from the main interpreter. Each subinterpreter now has its own list of " +"scheduled calls." +msgstr "" + +#: ../../c-api/threads.rst:886 +msgid "" +"This function now always schedules *func* to be run in the main interpreter." +msgstr "" + +#: ../../c-api/threads.rst:893 +msgid "" +"Execute all pending calls. This is usually executed automatically by the " +"interpreter." +msgstr "" + +#: ../../c-api/threads.rst:896 +msgid "" +"This function returns ``0`` on success, and returns ``-1`` with an exception " +"set on failure." +msgstr "" + +#: ../../c-api/threads.rst:899 +msgid "" +"If this is not called in the main thread of the main interpreter, this " +"function does nothing and returns ``0``. The caller must hold an :term:" +"`attached thread state`." +msgstr "" + +#: ../../c-api/threads.rst:905 +msgid "This function only runs pending calls in the main interpreter." +msgstr "" + +#: ../../c-api/threads.rst:911 +msgid "" +"Schedule an exception to be raised asynchronously in a thread. If the thread " +"has a previously scheduled exception, it is overwritten." +msgstr "" + +#: ../../c-api/threads.rst:914 +msgid "" +"The *id* argument is the thread id of the target thread, as returned by :c:" +"func:`PyThread_get_thread_ident`. *exc* is the class of the exception to be " +"raised, or ``NULL`` to clear the pending exception (if any)." +msgstr "" + +#: ../../c-api/threads.rst:919 +msgid "" +"Return the number of affected thread states. This is normally ``1`` if *id* " +"is found, even when no change was made (the given *exc* was already pending, " +"or *exc* is ``NULL`` but no exception is pending). If the thread id isn't " +"found, return ``0``. This raises no exceptions." +msgstr "" + +#: ../../c-api/threads.rst:925 +msgid "" +"To prevent naive misuse, you must write your own C extension to call this. " +"This function must be called with an :term:`attached thread state`. This " +"function does not :term:`steal` any references to *exc*. This function does " +"not necessarily interrupt system calls such as :py:func:`~time.sleep`." +msgstr "" + +#: ../../c-api/threads.rst:931 +msgid "" +"The type of the *id* parameter changed from :c:expr:`long` to :c:expr:" +"`unsigned long`." +msgstr "" + +#: ../../c-api/threads.rst:937 +msgid "Operating system thread APIs" +msgstr "" + +#: ../../c-api/threads.rst:941 +msgid "Sentinel value for an invalid thread ID." +msgstr "" + +#: ../../c-api/threads.rst:943 +msgid "This is currently equivalent to ``(unsigned long)-1``." +msgstr "" + +#: ../../c-api/threads.rst:948 +msgid "" +"Start function *func* in a new thread with argument *arg*. The resulting " +"thread is not intended to be joined." +msgstr "" + +#: ../../c-api/threads.rst:951 +msgid "*func* must not be ``NULL``, but *arg* may be ``NULL``." +msgstr "" + +#: ../../c-api/threads.rst:953 +msgid "" +"On success, this function returns the identifier of the new thread; on " +"failure, this returns :c:macro:`PYTHREAD_INVALID_THREAD_ID`." +msgstr "" + +#: ../../c-api/threads.rst:956 ../../c-api/threads.rst:1041 +#: ../../c-api/threads.rst:1049 +msgid "The caller does not need to hold an :term:`attached thread state`." +msgstr "" + +#: ../../c-api/threads.rst:961 +msgid "Return the identifier of the current thread, which will never be zero." +msgstr "" + +#: ../../c-api/threads.rst:963 ../../c-api/threads.rst:996 +msgid "" +"This function cannot fail, and the caller does not need to hold an :term:" +"`attached thread state`." +msgstr "" + +#: ../../c-api/threads.rst:967 +msgid "" +":py:func:`threading.get_ident` and :py:attr:`threading.Thread.ident` expose " +"this identifier to Python." +msgstr "" + +#: ../../c-api/threads.rst:973 +msgid "" +"Get general information about the current thread in the form of a :ref:" +"`struct sequence ` object. This information is " +"accessible as :py:attr:`sys.thread_info` in Python." +msgstr "" + +#: ../../c-api/threads.rst:977 +msgid "" +"On success, this returns a new :term:`strong reference` to the thread " +"information; on failure, this returns ``NULL`` with an exception set." +msgstr "" + +#: ../../c-api/threads.rst:980 +msgid "The caller must hold an :term:`attached thread state`." +msgstr "" + +#: ../../c-api/threads.rst:985 +msgid "This macro is defined when the system supports native thread IDs." +msgstr "" + +#: ../../c-api/threads.rst:990 +msgid "" +"Get the native identifier of the current thread as it was assigned by the " +"operating system's kernel, which will never be less than zero." +msgstr "" + +#: ../../c-api/threads.rst:993 +msgid "" +"This function is only available when :c:macro:`PY_HAVE_THREAD_NATIVE_ID` is " +"defined." +msgstr "" + +#: ../../c-api/threads.rst:1000 +msgid ":py:func:`threading.get_native_id`" +msgstr "" + +#: ../../c-api/threads.rst:1005 +msgid "" +"Terminate the current thread. This function is generally considered unsafe " +"and should be avoided. It is kept solely for backwards compatibility." +msgstr "" + +#: ../../c-api/threads.rst:1008 +msgid "" +"This function is only safe to call if all functions in the full call stack " +"are written to safely allow it." +msgstr "" + +#: ../../c-api/threads.rst:1013 +msgid "" +"If the current system uses POSIX threads (also known as \"pthreads\"), this " +"calls :manpage:`pthread_exit(3)`, which attempts to unwind the stack and " +"call C++ destructors on some libc implementations. However, if a " +"``noexcept`` function is reached, it may terminate the process. Other " +"systems, such as macOS, do unwinding." +msgstr "" + +#: ../../c-api/threads.rst:1019 +msgid "" +"On Windows, this function calls ``_endthreadex()``, which kills the thread " +"without calling C++ destructors." +msgstr "" + +#: ../../c-api/threads.rst:1022 +msgid "In any case, there is a risk of corruption on the thread's stack." +msgstr "" + +#: ../../c-api/threads.rst:1029 +msgid "" +"Initialize ``PyThread*`` APIs. Python executes this function automatically, " +"so there's little need to call it from an extension module." +msgstr "" + +#: ../../c-api/threads.rst:1035 +msgid "Set the stack size of the current thread to *size* bytes." +msgstr "" + +#: ../../c-api/threads.rst:1037 +msgid "" +"This function returns ``0`` on success, ``-1`` if *size* is invalid, or " +"``-2`` if the system does not support changing the stack size. This function " +"does not set exceptions." +msgstr "" + +#: ../../c-api/threads.rst:1046 +msgid "" +"Return the stack size of the current thread in bytes, or ``0`` if the " +"system's default stack size is in use." +msgstr "" + +#: ../../c-api/threads.rst:8 +msgid "global interpreter lock" +msgstr "" + +#: ../../c-api/threads.rst:8 +msgid "interpreter lock" +msgstr "" + +#: ../../c-api/threads.rst:8 +msgid "lock, interpreter" +msgstr "" + +#: ../../c-api/threads.rst:25 +msgid "setswitchinterval (in module sys)" +msgstr "" + +#: ../../c-api/threads.rst:36 +msgid "PyThreadState (C type)" +msgstr "" + +#: ../../c-api/threads.rst:87 +msgid "Py_BEGIN_ALLOW_THREADS (C macro)" +msgstr "" + +#: ../../c-api/threads.rst:87 +msgid "Py_END_ALLOW_THREADS (C macro)" +msgstr "" + +#: ../../c-api/threads.rst:103 +msgid "PyEval_RestoreThread (C function)" +msgstr "" + +#: ../../c-api/threads.rst:103 +msgid "PyEval_SaveThread (C function)" +msgstr "" + +#: ../../c-api/threads.rst:582 +msgid "PyEval_AcquireThread()" +msgstr "" + +#: ../../c-api/threads.rst:582 +msgid "PyEval_ReleaseThread()" +msgstr "" + +#: ../../c-api/threads.rst:582 +msgid "PyEval_SaveThread()" +msgstr "" + +#: ../../c-api/threads.rst:582 +msgid "PyEval_RestoreThread()" +msgstr "" + +#: ../../c-api/threads.rst:604 +msgid "module" +msgstr "" + +#: ../../c-api/threads.rst:604 +msgid "_thread" +msgstr "" diff --git a/c-api/tls.po b/c-api/tls.po new file mode 100644 index 00000000..a2a40e88 --- /dev/null +++ b/c-api/tls.po @@ -0,0 +1,191 @@ +# German translations for Python package. +# Copyright (C) 2001 Python Software Foundation +# This file is distributed under the same license as the Python package. +# Automatically generated, 2026. +# +msgid "" +msgstr "" +"Project-Id-Version: Python 3.15\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" +"PO-Revision-Date: 2026-09-23 06:17+0000\n" +"Last-Translator: Automatically generated\n" +"Language-Team: none\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: de\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../../c-api/tls.rst:6 +msgid "Thread-local storage support" +msgstr "" + +#: ../../c-api/tls.rst:8 +msgid "" +"The Python interpreter provides low-level support for thread-local storage " +"(TLS) which wraps the underlying native TLS implementation to support the " +"Python-level thread-local storage API (:class:`threading.local`). The " +"CPython C level APIs are similar to those offered by pthreads and Windows: " +"use a thread key and functions to associate a :c:expr:`void*` value per " +"thread." +msgstr "" + +#: ../../c-api/tls.rst:15 +msgid "" +"A :term:`thread state` does *not* need to be :term:`attached ` when calling these functions; they supply their own locking." +msgstr "" + +#: ../../c-api/tls.rst:18 +msgid "" +"Note that :file:`Python.h` does not include the declaration of the TLS APIs, " +"you need to include :file:`pythread.h` to use thread-local storage." +msgstr "" + +#: ../../c-api/tls.rst:22 +msgid "" +"None of these API functions handle memory management on behalf of the :c:" +"expr:`void*` values. You need to allocate and deallocate them yourself. If " +"the :c:expr:`void*` values happen to be :c:expr:`PyObject*`, these functions " +"don't do refcount operations on them either." +msgstr "" + +#: ../../c-api/tls.rst:30 +msgid "Thread-specific storage API" +msgstr "" + +#: ../../c-api/tls.rst:32 +msgid "" +"The thread-specific storage (TSS) API was introduced to supersede the use of " +"the existing TLS API within the CPython interpreter. This API uses a new " +"type :c:type:`Py_tss_t` instead of :c:expr:`int` to represent thread keys." +msgstr "" + +#: ../../c-api/tls.rst:38 +msgid "\"A New C-API for Thread-Local Storage in CPython\" (:pep:`539`)" +msgstr "" + +#: ../../c-api/tls.rst:43 +msgid "" +"This data structure represents the state of a thread key, the definition of " +"which may depend on the underlying TLS implementation, and it has an " +"internal field representing the key's initialization state. There are no " +"public members in this structure." +msgstr "" + +#: ../../c-api/tls.rst:48 +msgid "" +"When :ref:`Py_LIMITED_API ` is not defined, static allocation of " +"this type by :c:macro:`Py_tss_NEEDS_INIT` is allowed." +msgstr "" + +#: ../../c-api/tls.rst:54 +msgid "" +"This macro expands to the initializer for :c:type:`Py_tss_t` variables. Note " +"that this macro won't be defined with :ref:`Py_LIMITED_API `." +msgstr "" + +#: ../../c-api/tls.rst:59 +msgid "Dynamic allocation" +msgstr "" + +#: ../../c-api/tls.rst:61 +msgid "" +"Dynamic allocation of the :c:type:`Py_tss_t`, required in extension modules " +"built with :ref:`Py_LIMITED_API `, where static allocation of this " +"type is not possible due to its implementation being opaque at build time." +msgstr "" + +#: ../../c-api/tls.rst:68 +msgid "" +"Return a value which is the same state as a value initialized with :c:macro:" +"`Py_tss_NEEDS_INIT`, or ``NULL`` in the case of dynamic allocation failure." +msgstr "" + +#: ../../c-api/tls.rst:75 +msgid "" +"Free the given *key* allocated by :c:func:`PyThread_tss_alloc`, after first " +"calling :c:func:`PyThread_tss_delete` to ensure any associated thread locals " +"have been unassigned. This is a no-op if the *key* argument is ``NULL``." +msgstr "" + +#: ../../c-api/tls.rst:81 +msgid "" +"A freed key becomes a dangling pointer. You should reset the key to ``NULL``." +msgstr "" + +#: ../../c-api/tls.rst:86 +msgid "Methods" +msgstr "" + +#: ../../c-api/tls.rst:88 +msgid "" +"The parameter *key* of these functions must not be ``NULL``. Moreover, the " +"behaviors of :c:func:`PyThread_tss_set` and :c:func:`PyThread_tss_get` are " +"undefined if the given :c:type:`Py_tss_t` has not been initialized by :c:" +"func:`PyThread_tss_create`." +msgstr "" + +#: ../../c-api/tls.rst:96 +msgid "" +"Return a non-zero value if the given :c:type:`Py_tss_t` has been initialized " +"by :c:func:`PyThread_tss_create`." +msgstr "" + +#: ../../c-api/tls.rst:102 +msgid "" +"Return a zero value on successful initialization of a TSS key. The behavior " +"is undefined if the value pointed to by the *key* argument is not " +"initialized by :c:macro:`Py_tss_NEEDS_INIT`. This function can be called " +"repeatedly on the same key -- calling it on an already initialized key is a " +"no-op and immediately returns success." +msgstr "" + +#: ../../c-api/tls.rst:111 +msgid "" +"Destroy a TSS key to forget the values associated with the key across all " +"threads, and change the key's initialization state to uninitialized. A " +"destroyed key is able to be initialized again by :c:func:" +"`PyThread_tss_create`. This function can be called repeatedly on the same " +"key -- calling it on an already destroyed key is a no-op." +msgstr "" + +#: ../../c-api/tls.rst:120 +msgid "" +"Return a zero value to indicate successfully associating a :c:expr:`void*` " +"value with a TSS key in the current thread. Each thread has a distinct " +"mapping of the key to a :c:expr:`void*` value." +msgstr "" + +#: ../../c-api/tls.rst:127 +msgid "" +"Return the :c:expr:`void*` value associated with a TSS key in the current " +"thread. This returns ``NULL`` if no value is associated with the key in the " +"current thread." +msgstr "" + +#: ../../c-api/tls.rst:135 +msgid "Legacy APIs" +msgstr "" + +#: ../../c-api/tls.rst:137 +msgid "" +"This API is superseded by the :ref:`thread-specific storage (TSS) API " +"`." +msgstr "" + +#: ../../c-api/tls.rst:142 +msgid "" +"This version of the API does not support platforms where the native TLS key " +"is defined in a way that cannot be safely cast to ``int``. On such " +"platforms, :c:func:`PyThread_create_key` will return immediately with a " +"failure status, and the other TLS functions will all be no-ops on such " +"platforms." +msgstr "" + +#: ../../c-api/tls.rst:147 +msgid "" +"Due to the compatibility problem noted above, this version of the API should " +"not be used in new code." +msgstr "" diff --git a/cpython-src b/cpython-src index 5f6fc462..2dafe2a2 160000 --- a/cpython-src +++ b/cpython-src @@ -1 +1 @@ -Subproject commit 5f6fc462db73ed18eaa9520cbc275a3c5bbad746 +Subproject commit 2dafe2a2ccdfb943940892f50a7efe6fa54ee118 diff --git a/deprecations/c-api-pending-removal-in-3.19.po b/deprecations/c-api-pending-removal-in-3.19.po index a5527209..e0611982 100644 --- a/deprecations/c-api-pending-removal-in-3.19.po +++ b/deprecations/c-api-pending-removal-in-3.19.po @@ -7,14 +7,14 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-09-22 21:21+0200\n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" "PO-Revision-Date: 2026-09-22 21:21+0200\n" "Last-Translator: Automatically generated\n" "Language-Team: none\n" +"Language: de\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: de\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../../deprecations/c-api-pending-removal-in-3.19.rst:2 diff --git a/deprecations/c-api-pending-removal-in-3.20.po b/deprecations/c-api-pending-removal-in-3.20.po index 54e56b8a..483b4ee2 100644 --- a/deprecations/c-api-pending-removal-in-3.20.po +++ b/deprecations/c-api-pending-removal-in-3.20.po @@ -7,14 +7,14 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-09-22 21:21+0200\n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" "PO-Revision-Date: 2026-09-22 21:21+0200\n" "Last-Translator: Automatically generated\n" "Language-Team: none\n" +"Language: de\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: de\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../../deprecations/c-api-pending-removal-in-3.20.rst:2 diff --git a/deprecations/pending-removal-in-3.18.po b/deprecations/pending-removal-in-3.18.po index c97baaf3..8a515e5b 100644 --- a/deprecations/pending-removal-in-3.18.po +++ b/deprecations/pending-removal-in-3.18.po @@ -7,14 +7,14 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-09-22 21:21+0200\n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" "PO-Revision-Date: 2026-09-22 21:21+0200\n" "Last-Translator: Automatically generated\n" "Language-Team: none\n" +"Language: de\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: de\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../../deprecations/pending-removal-in-3.18.rst:2 diff --git a/deprecations/pending-removal-in-3.20.po b/deprecations/pending-removal-in-3.20.po index e887d250..20d69d7f 100644 --- a/deprecations/pending-removal-in-3.20.po +++ b/deprecations/pending-removal-in-3.20.po @@ -7,14 +7,14 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-09-22 21:21+0200\n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" "PO-Revision-Date: 2026-09-22 21:21+0200\n" "Last-Translator: Automatically generated\n" "Language-Team: none\n" +"Language: de\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: de\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../../deprecations/pending-removal-in-3.20.rst:2 diff --git a/deprecations/soft-deprecations.po b/deprecations/soft-deprecations.po index 160d42a9..4432feab 100644 --- a/deprecations/soft-deprecations.po +++ b/deprecations/soft-deprecations.po @@ -7,14 +7,14 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-09-22 21:21+0200\n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" "PO-Revision-Date: 2026-09-22 21:21+0200\n" "Last-Translator: Automatically generated\n" "Language-Team: none\n" +"Language: de\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: de\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../../deprecations/soft-deprecations.rst:2 diff --git a/extending/first-extension-module.po b/extending/first-extension-module.po index 58a2f550..98638861 100644 --- a/extending/first-extension-module.po +++ b/extending/first-extension-module.po @@ -7,14 +7,14 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-09-22 21:21+0200\n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" "PO-Revision-Date: 2026-09-22 21:21+0200\n" "Last-Translator: Automatically generated\n" "Language-Team: none\n" +"Language: de\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: de\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../../extending/first-extension-module.rst:9 diff --git a/howto/abi3t-migration.po b/howto/abi3t-migration.po index 5b518122..acfccf06 100644 --- a/howto/abi3t-migration.po +++ b/howto/abi3t-migration.po @@ -7,14 +7,14 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-09-22 21:21+0200\n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" "PO-Revision-Date: 2026-09-22 21:21+0200\n" "Last-Translator: Automatically generated\n" "Language-Team: none\n" +"Language: de\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: de\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../../howto/abi3t-migration.rst:7 diff --git a/improve-page-nojs.po b/improve-page-nojs.po index 4fc2970e..cb74e124 100644 --- a/improve-page-nojs.po +++ b/improve-page-nojs.po @@ -7,14 +7,14 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-09-22 21:21+0200\n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" "PO-Revision-Date: 2026-09-22 21:21+0200\n" "Last-Translator: Automatically generated\n" "Language-Team: none\n" +"Language: de\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: de\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../../improve-page-nojs.rst:5 diff --git a/improve-page.po b/improve-page.po index 2b46dd86..9f141fc2 100644 --- a/improve-page.po +++ b/improve-page.po @@ -7,14 +7,14 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-09-22 21:21+0200\n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" "PO-Revision-Date: 2026-09-22 21:21+0200\n" "Last-Translator: Automatically generated\n" "Language-Team: none\n" +"Language: de\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: de\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../../improve-page.rst:5 diff --git a/library/asyncio-threading.po b/library/asyncio-threading.po index 0aa7c2b7..789d46e0 100644 --- a/library/asyncio-threading.po +++ b/library/asyncio-threading.po @@ -7,14 +7,14 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-09-22 21:21+0200\n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" "PO-Revision-Date: 2026-09-22 21:21+0200\n" "Last-Translator: Automatically generated\n" "Language-Team: none\n" +"Language: de\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: de\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../../library/asyncio-threading.rst:6 diff --git a/library/asyncio-tools.po b/library/asyncio-tools.po index c2da4bf3..38007056 100644 --- a/library/asyncio-tools.po +++ b/library/asyncio-tools.po @@ -7,14 +7,14 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-09-22 21:21+0200\n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" "PO-Revision-Date: 2026-09-22 21:21+0200\n" "Last-Translator: Automatically generated\n" "Language-Team: none\n" +"Language: de\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: de\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../../library/asyncio-tools.rst:7 diff --git a/library/codecs.po b/library/codecs.po index 61d7425b..c381bc99 100644 --- a/library/codecs.po +++ b/library/codecs.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-09-14 20:17+0000\n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" "PO-Revision-Date: 2025-09-16 00:00+0000\n" "Language-Team: German (https://app.transifex.com/python-doc/teams/5390/de/)\n" "Language: de\n" @@ -408,7 +408,7 @@ msgstr "" #: ../../library/codecs.rst:359 ../../library/codecs.rst:402 #: ../../library/codecs.rst:422 ../../library/codecs.rst:1379 -#: ../../library/codecs.rst:1459 ../../library/codecs.rst:1544 +#: ../../library/codecs.rst:1468 ../../library/codecs.rst:1553 msgid "Meaning" msgstr "" @@ -1430,12 +1430,12 @@ msgid "an IBM PC code page, which is ASCII compatible" msgstr "" #: ../../library/codecs.rst:1120 ../../library/codecs.rst:1379 -#: ../../library/codecs.rst:1459 ../../library/codecs.rst:1544 +#: ../../library/codecs.rst:1468 ../../library/codecs.rst:1553 msgid "Codec" msgstr "" #: ../../library/codecs.rst:1120 ../../library/codecs.rst:1379 -#: ../../library/codecs.rst:1459 ../../library/codecs.rst:1544 +#: ../../library/codecs.rst:1468 ../../library/codecs.rst:1553 msgid "Aliases" msgstr "" @@ -2396,225 +2396,231 @@ msgid "" "``errors='strict'`` is supported." msgstr "" -#: ../../library/codecs.rst:1387 +#: ../../library/codecs.rst:1389 +msgid "" +"This codec builds on ``punycode``, whose algorithms scale poorly, so limit " +"the length of untrusted input." +msgstr "" + +#: ../../library/codecs.rst:1396 msgid "mbcs" msgstr "" -#: ../../library/codecs.rst:1387 +#: ../../library/codecs.rst:1396 msgid "ansi, dbcs" msgstr "" -#: ../../library/codecs.rst:1387 +#: ../../library/codecs.rst:1396 msgid "" "Windows only: Encode the operand according to the ANSI codepage (CP_ACP)." msgstr "" -#: ../../library/codecs.rst:1391 +#: ../../library/codecs.rst:1400 msgid "oem" msgstr "" -#: ../../library/codecs.rst:1391 +#: ../../library/codecs.rst:1400 msgid "" "Windows only: Encode the operand according to the OEM codepage (CP_OEMCP)." msgstr "" -#: ../../library/codecs.rst:1397 +#: ../../library/codecs.rst:1406 msgid "palmos" msgstr "" -#: ../../library/codecs.rst:1397 +#: ../../library/codecs.rst:1406 msgid "Encoding of PalmOS 3.5." msgstr "" -#: ../../library/codecs.rst:1399 +#: ../../library/codecs.rst:1408 msgid "punycode" msgstr "" -#: ../../library/codecs.rst:1399 +#: ../../library/codecs.rst:1408 msgid "Implement :rfc:`3492`. Stateful codecs are not supported." msgstr "" -#: ../../library/codecs.rst:1405 +#: ../../library/codecs.rst:1414 msgid "" "The decoding and encoding algorithms scale poorly, so limit the length of " "untrusted input." msgstr "" -#: ../../library/codecs.rst:1411 +#: ../../library/codecs.rst:1420 msgid "raw_unicode_escape" msgstr "" -#: ../../library/codecs.rst:1411 +#: ../../library/codecs.rst:1420 msgid "" "Latin-1 encoding with :samp:`\\\\u{XXXX}` and :samp:`\\\\U{XXXXXXXX}` for " "other code points. Existing backslashes are not escaped in any way. It is " "used in the Python pickle protocol." msgstr "" -#: ../../library/codecs.rst:1421 +#: ../../library/codecs.rst:1430 msgid "undefined" msgstr "" -#: ../../library/codecs.rst:1421 +#: ../../library/codecs.rst:1430 msgid "This Codec should only be used for testing purposes." msgstr "" -#: ../../library/codecs.rst:1425 +#: ../../library/codecs.rst:1434 msgid "" "Raise an exception for all conversions, even empty strings. The error " "handler is ignored." msgstr "" -#: ../../library/codecs.rst:1430 +#: ../../library/codecs.rst:1439 msgid "unicode_escape" msgstr "" -#: ../../library/codecs.rst:1430 +#: ../../library/codecs.rst:1439 msgid "" "Encoding suitable as the contents of a Unicode literal in ASCII-encoded " "Python source code, except that quotes are not escaped. Decode from Latin-1 " "source code. Beware that Python source code actually uses UTF-8 by default." msgstr "" -#: ../../library/codecs.rst:1442 +#: ../../library/codecs.rst:1451 msgid "\"unicode_internal\" codec is removed." msgstr "" -#: ../../library/codecs.rst:1449 +#: ../../library/codecs.rst:1458 msgid "Binary Transforms" msgstr "" -#: ../../library/codecs.rst:1451 +#: ../../library/codecs.rst:1460 msgid "" "The following codecs provide binary transforms: :term:`bytes-like object` " "to :class:`bytes` mappings. They are not supported by :meth:`bytes.decode` " "(which only produces :class:`str` output)." msgstr "" -#: ../../library/codecs.rst:1459 +#: ../../library/codecs.rst:1468 msgid "Encoder / decoder" msgstr "" -#: ../../library/codecs.rst:1461 +#: ../../library/codecs.rst:1470 msgid "base64_codec [#b64]_" msgstr "" -#: ../../library/codecs.rst:1461 +#: ../../library/codecs.rst:1470 msgid "base64, base_64" msgstr "" -#: ../../library/codecs.rst:1461 +#: ../../library/codecs.rst:1470 msgid "" "Convert the operand to multiline MIME base64 (the result always includes a " "trailing ``'\\n'``)." msgstr "" -#: ../../library/codecs.rst:1466 +#: ../../library/codecs.rst:1475 msgid "" "accepts any :term:`bytes-like object` as input for encoding and decoding" msgstr "" -#: ../../library/codecs.rst:1461 +#: ../../library/codecs.rst:1470 msgid ":meth:`base64.encodebytes` / :meth:`base64.decodebytes`" msgstr "" -#: ../../library/codecs.rst:1472 +#: ../../library/codecs.rst:1481 msgid "bz2_codec" msgstr "" -#: ../../library/codecs.rst:1472 +#: ../../library/codecs.rst:1481 msgid "bz2" msgstr "" -#: ../../library/codecs.rst:1472 +#: ../../library/codecs.rst:1481 msgid "Compress the operand using bz2." msgstr "" -#: ../../library/codecs.rst:1472 +#: ../../library/codecs.rst:1481 msgid ":meth:`bz2.compress` / :meth:`bz2.decompress`" msgstr "" -#: ../../library/codecs.rst:1475 +#: ../../library/codecs.rst:1484 msgid "hex_codec" msgstr "" -#: ../../library/codecs.rst:1475 +#: ../../library/codecs.rst:1484 msgid "hex" msgstr "" -#: ../../library/codecs.rst:1475 +#: ../../library/codecs.rst:1484 msgid "" "Convert the operand to hexadecimal representation, with two digits per byte." msgstr "" -#: ../../library/codecs.rst:1475 +#: ../../library/codecs.rst:1484 msgid ":meth:`binascii.b2a_hex` / :meth:`binascii.a2b_hex`" msgstr "" -#: ../../library/codecs.rst:1480 +#: ../../library/codecs.rst:1489 msgid "quopri_codec" msgstr "" -#: ../../library/codecs.rst:1480 +#: ../../library/codecs.rst:1489 msgid "quopri, quotedprintable, quoted_printable" msgstr "" -#: ../../library/codecs.rst:1480 +#: ../../library/codecs.rst:1489 msgid "Convert the operand to MIME quoted printable." msgstr "" -#: ../../library/codecs.rst:1480 +#: ../../library/codecs.rst:1489 msgid ":meth:`quopri.encode` with ``quotetabs=True`` / :meth:`quopri.decode`" msgstr "" -#: ../../library/codecs.rst:1484 +#: ../../library/codecs.rst:1493 msgid "uu_codec" msgstr "" -#: ../../library/codecs.rst:1484 +#: ../../library/codecs.rst:1493 msgid "uu" msgstr "" -#: ../../library/codecs.rst:1484 +#: ../../library/codecs.rst:1493 msgid "Convert the operand using uuencode." msgstr "" -#: ../../library/codecs.rst:1487 +#: ../../library/codecs.rst:1496 msgid "zlib_codec" msgstr "" -#: ../../library/codecs.rst:1487 +#: ../../library/codecs.rst:1496 msgid "zip, zlib" msgstr "" -#: ../../library/codecs.rst:1487 +#: ../../library/codecs.rst:1496 msgid "Compress the operand using gzip." msgstr "" -#: ../../library/codecs.rst:1487 +#: ../../library/codecs.rst:1496 msgid ":meth:`zlib.compress` / :meth:`zlib.decompress`" msgstr "" -#: ../../library/codecs.rst:1491 +#: ../../library/codecs.rst:1500 msgid "" "In addition to :term:`bytes-like objects `, " "``'base64_codec'`` also accepts ASCII-only instances of :class:`str` for " "decoding" msgstr "" -#: ../../library/codecs.rst:1495 +#: ../../library/codecs.rst:1504 msgid "Restoration of the binary transforms." msgstr "" -#: ../../library/codecs.rst:1498 +#: ../../library/codecs.rst:1507 msgid "Restoration of the aliases for the binary transforms." msgstr "" -#: ../../library/codecs.rst:1505 +#: ../../library/codecs.rst:1514 msgid "Standalone Codec Functions" msgstr "" -#: ../../library/codecs.rst:1507 +#: ../../library/codecs.rst:1516 msgid "" "The following functions provide encoding and decoding functionality similar " "to codecs, but are not available as named codecs through :func:`codecs." @@ -2623,74 +2629,74 @@ msgid "" "removed in Python 3." msgstr "" -#: ../../library/codecs.rst:1514 +#: ../../library/codecs.rst:1523 msgid "" "Encode *input* using escape sequences. Similar to how :func:`repr` on bytes " "produces escaped byte values." msgstr "" -#: ../../library/codecs.rst:1517 +#: ../../library/codecs.rst:1526 msgid "*input* must be a :class:`bytes` object." msgstr "" -#: ../../library/codecs.rst:1519 ../../library/codecs.rst:1528 +#: ../../library/codecs.rst:1528 ../../library/codecs.rst:1537 msgid "" "Returns a tuple ``(output, length)`` where *output* is a :class:`bytes` " "object and *length* is the number of bytes consumed." msgstr "" -#: ../../library/codecs.rst:1524 +#: ../../library/codecs.rst:1533 msgid "Decode *input* from escape sequences back to the original bytes." msgstr "" -#: ../../library/codecs.rst:1526 +#: ../../library/codecs.rst:1535 msgid "*input* must be a :term:`bytes-like object`." msgstr "" -#: ../../library/codecs.rst:1535 +#: ../../library/codecs.rst:1544 msgid "Text Transforms" msgstr "" -#: ../../library/codecs.rst:1537 +#: ../../library/codecs.rst:1546 msgid "" "The following codec provides a text transform: a :class:`str` to :class:" "`str` mapping. It is not supported by :meth:`str.encode` (which only " "produces :class:`bytes` output)." msgstr "" -#: ../../library/codecs.rst:1546 +#: ../../library/codecs.rst:1555 msgid "rot_13" msgstr "" -#: ../../library/codecs.rst:1546 +#: ../../library/codecs.rst:1555 msgid "rot13" msgstr "" -#: ../../library/codecs.rst:1546 +#: ../../library/codecs.rst:1555 msgid "Return the Caesar-cypher encryption of the operand." msgstr "" -#: ../../library/codecs.rst:1551 +#: ../../library/codecs.rst:1560 msgid "Restoration of the ``rot_13`` text transform." msgstr "" -#: ../../library/codecs.rst:1554 +#: ../../library/codecs.rst:1563 msgid "Restoration of the ``rot13`` alias." msgstr "" -#: ../../library/codecs.rst:1559 +#: ../../library/codecs.rst:1568 msgid ":mod:`!encodings` --- Encodings package" msgstr "" -#: ../../library/codecs.rst:1564 +#: ../../library/codecs.rst:1573 msgid "This module implements the following functions:" msgstr "" -#: ../../library/codecs.rst:1568 +#: ../../library/codecs.rst:1577 msgid "Normalize encoding name *encoding*." msgstr "" -#: ../../library/codecs.rst:1570 +#: ../../library/codecs.rst:1579 msgid "" "Normalization works as follows: all non-alphanumeric characters except the " "dot used for Python package names are collapsed and replaced with a single " @@ -2698,23 +2704,23 @@ msgid "" "-;#'`` becomes ``'_'``." msgstr "" -#: ../../library/codecs.rst:1575 +#: ../../library/codecs.rst:1584 msgid "Note that *encoding* should be ASCII only." msgstr "" -#: ../../library/codecs.rst:1579 +#: ../../library/codecs.rst:1588 msgid "" "The following functions should not be used directly, except for testing " "purposes; :func:`codecs.lookup` should be used instead." msgstr "" -#: ../../library/codecs.rst:1585 +#: ../../library/codecs.rst:1594 msgid "" "Search for the codec module corresponding to the given encoding name " "*encoding*." msgstr "" -#: ../../library/codecs.rst:1588 +#: ../../library/codecs.rst:1597 msgid "" "This function first normalizes the *encoding* using :func:" "`normalize_encoding`, then looks for a corresponding alias. It attempts to " @@ -2724,41 +2730,41 @@ msgid "" "the codec is cached and returned." msgstr "" -#: ../../library/codecs.rst:1595 +#: ../../library/codecs.rst:1604 msgid "" "If the codec module defines a ``getaliases()`` function any returned aliases " "are registered for future use." msgstr "" -#: ../../library/codecs.rst:1601 +#: ../../library/codecs.rst:1610 msgid "" "Search for a Windows code page encoding *encoding* of the form ``cpXXXX``." msgstr "" -#: ../../library/codecs.rst:1603 +#: ../../library/codecs.rst:1612 msgid "" "If the code page is valid and supported, return a :class:`codecs.CodecInfo` " "object for it." msgstr "" -#: ../../library/codecs.rst:1606 ../../library/codecs.rst:1691 +#: ../../library/codecs.rst:1615 ../../library/codecs.rst:1705 msgid "Availability" msgstr "" -#: ../../library/codecs.rst:1611 +#: ../../library/codecs.rst:1620 msgid "This module implements the following exception:" msgstr "" -#: ../../library/codecs.rst:1615 +#: ../../library/codecs.rst:1624 msgid "Raised when a codec is invalid or incompatible." msgstr "" -#: ../../library/codecs.rst:1619 +#: ../../library/codecs.rst:1628 msgid "" ":mod:`!encodings.idna` --- Internationalized Domain Names in Applications" msgstr "" -#: ../../library/codecs.rst:1624 +#: ../../library/codecs.rst:1633 msgid "" "This module implements :rfc:`3490` (Internationalized Domain Names in " "Applications) and :rfc:`3492` (Nameprep: A Stringprep Profile for " @@ -2766,13 +2772,19 @@ msgid "" "encoding and :mod:`stringprep`." msgstr "" -#: ../../library/codecs.rst:1629 +#: ../../library/codecs.rst:1640 +msgid "" +"This module builds on ``punycode``, whose algorithms scale poorly, so limit " +"the length of untrusted input." +msgstr "" + +#: ../../library/codecs.rst:1643 msgid "" "If you need the IDNA 2008 standard from :rfc:`5891` and :rfc:`5895`, use the " "third-party :pypi:`idna` module." msgstr "" -#: ../../library/codecs.rst:1632 +#: ../../library/codecs.rst:1646 msgid "" "These RFCs together define a protocol to support non-ASCII characters in " "domain names. A domain name containing non-ASCII characters (such as ``www." @@ -2786,7 +2798,7 @@ msgid "" "presenting them to the user." msgstr "" -#: ../../library/codecs.rst:1643 +#: ../../library/codecs.rst:1657 msgid "" "Python supports this conversion in several ways: the ``idna`` codec " "performs conversion between Unicode and ACE, separating an input string into " @@ -2803,14 +2815,14 @@ msgid "" "sends that field at all)." msgstr "" -#: ../../library/codecs.rst:1656 +#: ../../library/codecs.rst:1670 msgid "" "When receiving host names from the wire (such as in reverse name lookup), no " "automatic conversion to Unicode is performed: applications wishing to " "present such host names to the user should decode them to Unicode." msgstr "" -#: ../../library/codecs.rst:1660 +#: ../../library/codecs.rst:1674 msgid "" "The module :mod:`!encodings.idna` also implements the nameprep procedure, " "which performs certain normalizations on host names, to achieve case-" @@ -2818,45 +2830,45 @@ msgid "" "characters. The nameprep functions can be used directly if desired." msgstr "" -#: ../../library/codecs.rst:1668 +#: ../../library/codecs.rst:1682 msgid "" "Return the nameprepped version of *label*. The implementation currently " "assumes query strings, so ``AllowUnassigned`` is true." msgstr "" -#: ../../library/codecs.rst:1674 +#: ../../library/codecs.rst:1688 msgid "" "Convert a label to ASCII, as specified in :rfc:`3490`. ``UseSTD3ASCIIRules`` " "is assumed to be false." msgstr "" -#: ../../library/codecs.rst:1680 +#: ../../library/codecs.rst:1694 msgid "Convert a label to Unicode, as specified in :rfc:`3490`." msgstr "" -#: ../../library/codecs.rst:1684 +#: ../../library/codecs.rst:1698 msgid ":mod:`!encodings.mbcs` --- Windows ANSI codepage" msgstr "" -#: ../../library/codecs.rst:1689 +#: ../../library/codecs.rst:1703 msgid "This module implements the ANSI codepage (CP_ACP)." msgstr "" -#: ../../library/codecs.rst:1693 +#: ../../library/codecs.rst:1707 msgid "" "Before 3.2, the *errors* argument was ignored; ``'replace'`` was always used " "to encode, and ``'ignore'`` to decode." msgstr "" -#: ../../library/codecs.rst:1697 +#: ../../library/codecs.rst:1711 msgid "Support any error handler." msgstr "" -#: ../../library/codecs.rst:1702 +#: ../../library/codecs.rst:1716 msgid ":mod:`!encodings.utf_8_sig` --- UTF-8 codec with BOM signature" msgstr "" -#: ../../library/codecs.rst:1707 +#: ../../library/codecs.rst:1721 msgid "" "This module implements a variant of the UTF-8 codec. On encoding, a UTF-8 " "encoded BOM will be prepended to the UTF-8 encoded bytes. For the stateful " diff --git a/library/csv.po b/library/csv.po index 86fd0502..d9baeede 100644 --- a/library/csv.po +++ b/library/csv.po @@ -11,14 +11,14 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-09-21 18:58+0000\n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: Swen Bachmann, 2026\n" "Language-Team: German (https://app.transifex.com/python-doc/teams/5390/de/)\n" +"Language: de\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: de\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../../library/csv.rst:2 @@ -308,8 +308,8 @@ msgid "" "preserves their original ordering." msgstr "" "Der Parameter *fieldnames* ist eine :term:`Sequenz `. Wird " -"*fieldnames* weggelassen, werden die Werte in der ersten Zeile der Datei " -"*f* als Feldnamen verwendet und in den Ergebnissen nicht aufgeführt. Wird " +"*fieldnames* weggelassen, werden die Werte in der ersten Zeile der Datei *f* " +"als Feldnamen verwendet und in den Ergebnissen nicht aufgeführt. Wird " "*fieldnames* angegeben, werden diese verwendet und die erste Zeile in die " "Ergebnisse aufgenommen. Unabhängig davon, wie die Feldnamen ermittelt " "werden, behält das Dictionary ihre ursprüngliche Reihenfolge bei." @@ -972,11 +972,11 @@ msgid "" "instance), parsed according to the current :class:`Dialect`. Usually you " "should call this as ``next(reader)``." msgstr "" -"Gibt die nächste Zeile des iterierbaren Objekts des Readers als Liste " -"(falls das Objekt von :func:`reader` zurückgegeben wurde) oder als " -"Dictionary (falls es sich um eine Instanz von :class:`DictReader` handelt) " -"zurück, geparst gemäß dem aktuellen :class:`Dialect`. Normalerweise rufst " -"du dies als ``next(reader)`` auf." +"Gibt die nächste Zeile des iterierbaren Objekts des Readers als Liste (falls " +"das Objekt von :func:`reader` zurückgegeben wurde) oder als Dictionary " +"(falls es sich um eine Instanz von :class:`DictReader` handelt) zurück, " +"geparst gemäß dem aktuellen :class:`Dialect`. Normalerweise rufst du dies " +"als ``next(reader)`` auf." #: ../../library/csv.rst:545 msgid "Reader objects have the following public attributes:" diff --git a/library/importlib.po b/library/importlib.po index e6e28cdc..64812d90 100644 --- a/library/importlib.po +++ b/library/importlib.po @@ -11,7 +11,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-22 12:07+0200\n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: python-doc bot, 2025\n" "Language-Team: German (https://app.transifex.com/python-doc/teams/5390/de/)\n" @@ -511,18 +511,18 @@ msgstr "" #: ../../library/importlib.rst:357 msgid "" -"Loaders that wish to support resource reading should implement a :meth:" -"`get_resource_reader` method as specified by :class:`importlib.resources.abc." +"Loaders that wish to support resource reading should implement a :meth:`!" +"get_resource_reader` method as specified by :class:`importlib.resources.abc." "ResourceReader`." msgstr "" #: ../../library/importlib.rst:361 -msgid "Introduced the optional :meth:`get_resource_reader` method." +msgid "Introduced the optional :meth:`!get_resource_reader` method." msgstr "" #: ../../library/importlib.rst:364 ../../library/importlib.rst:529 -#: ../../library/importlib.rst:571 ../../library/importlib.rst:884 -#: ../../library/importlib.rst:920 +#: ../../library/importlib.rst:571 ../../library/importlib.rst:886 +#: ../../library/importlib.rst:922 msgid "Removed the ``load_module()`` method." msgstr "" @@ -701,7 +701,7 @@ msgstr "" msgid "Path to the file of the module." msgstr "" -#: ../../library/importlib.rst:543 ../../library/importlib.rst:998 +#: ../../library/importlib.rst:543 ../../library/importlib.rst:1000 msgid "Returns :attr:`path`." msgstr "" @@ -887,8 +887,8 @@ msgid "" "`importlib.abc.MetaPathFinder` and :class:`importlib.abc.InspectLoader` ABCs." msgstr "" -#: ../../library/importlib.rst:715 ../../library/importlib.rst:729 -#: ../../library/importlib.rst:742 ../../library/importlib.rst:757 +#: ../../library/importlib.rst:715 ../../library/importlib.rst:730 +#: ../../library/importlib.rst:744 ../../library/importlib.rst:759 msgid "" "Only class methods are defined by this class to alleviate the need for " "instantiation." @@ -897,40 +897,42 @@ msgstr "" #: ../../library/importlib.rst:718 msgid "" "As part of :pep:`489`, the builtin importer now implements :meth:`Loader." -"create_module` and :meth:`Loader.exec_module`" +"create_module ` and :meth:`Loader." +"exec_module `" msgstr "" -#: ../../library/importlib.rst:725 +#: ../../library/importlib.rst:726 msgid "" "An :term:`importer` for frozen modules. This class implements the :class:" "`importlib.abc.MetaPathFinder` and :class:`importlib.abc.InspectLoader` ABCs." msgstr "" -#: ../../library/importlib.rst:732 +#: ../../library/importlib.rst:733 msgid "" -"Gained :meth:`~Loader.create_module` and :meth:`~Loader.exec_module` methods." +"Gained :meth:`~importlib.abc.Loader.create_module` and :meth:`~importlib.abc." +"Loader.exec_module` methods." msgstr "" -#: ../../library/importlib.rst:739 +#: ../../library/importlib.rst:741 msgid "" ":term:`Finder ` for modules declared in the Windows registry. This " "class implements the :class:`importlib.abc.MetaPathFinder` ABC." msgstr "" -#: ../../library/importlib.rst:747 +#: ../../library/importlib.rst:749 msgid "" "Use :mod:`site` configuration instead. Future versions of Python may not " "enable this finder by default." msgstr "" -#: ../../library/importlib.rst:754 +#: ../../library/importlib.rst:756 msgid "" "A :term:`Finder ` for :data:`sys.path` and package ``__path__`` " "attributes. This class implements the :class:`importlib.abc.MetaPathFinder` " "ABC." msgstr "" -#: ../../library/importlib.rst:762 +#: ../../library/importlib.rst:764 msgid "" "Class method that attempts to find a :term:`spec ` for the " "module specified by *fullname* on :data:`sys.path` or, if defined, on " @@ -944,43 +946,43 @@ msgid "" "cache and returned." msgstr "" -#: ../../library/importlib.rst:776 +#: ../../library/importlib.rst:778 msgid "" "If the current working directory -- represented by an empty string -- is no " "longer valid then ``None`` is returned but no value is cached in :data:`sys." "path_importer_cache`." msgstr "" -#: ../../library/importlib.rst:783 +#: ../../library/importlib.rst:785 msgid "" "Calls :meth:`importlib.abc.PathEntryFinder.invalidate_caches` on all finders " "stored in :data:`sys.path_importer_cache` that define the method. Otherwise " "entries in :data:`sys.path_importer_cache` set to ``None`` are deleted." msgstr "" -#: ../../library/importlib.rst:788 +#: ../../library/importlib.rst:790 msgid "Entries of ``None`` in :data:`sys.path_importer_cache` are deleted." msgstr "" -#: ../../library/importlib.rst:791 +#: ../../library/importlib.rst:793 msgid "" "Calls objects in :data:`sys.path_hooks` with the current working directory " "for ``''`` (i.e. the empty string)." msgstr "" -#: ../../library/importlib.rst:798 +#: ../../library/importlib.rst:800 msgid "" "A concrete implementation of :class:`importlib.abc.PathEntryFinder` which " "caches results from the file system." msgstr "" -#: ../../library/importlib.rst:801 +#: ../../library/importlib.rst:803 msgid "" "The *path* argument is the directory for which the finder is in charge of " "searching." msgstr "" -#: ../../library/importlib.rst:804 +#: ../../library/importlib.rst:806 msgid "" "The *loader_details* argument is a variable number of 2-item tuples each " "containing a loader and a sequence of file suffixes the loader recognizes. " @@ -988,7 +990,7 @@ msgid "" "module's name and the path to the file found." msgstr "" -#: ../../library/importlib.rst:809 +#: ../../library/importlib.rst:811 msgid "" "The finder will cache the directory contents as necessary, making stat calls " "for each module search to verify the cache is not outdated. Because cache " @@ -1001,204 +1003,204 @@ msgid "" "to call :func:`importlib.invalidate_caches`." msgstr "" -#: ../../library/importlib.rst:823 +#: ../../library/importlib.rst:825 msgid "The path the finder will search in." msgstr "" -#: ../../library/importlib.rst:827 +#: ../../library/importlib.rst:829 msgid "Attempt to find the spec to handle *fullname* within :attr:`path`." msgstr "" -#: ../../library/importlib.rst:833 +#: ../../library/importlib.rst:835 msgid "Clear out the internal cache." msgstr "" -#: ../../library/importlib.rst:837 +#: ../../library/importlib.rst:839 msgid "" "A class method which returns a closure for use on :data:`sys.path_hooks`. An " "instance of :class:`FileFinder` is returned by the closure using the path " "argument given to the closure directly and *loader_details* indirectly." msgstr "" -#: ../../library/importlib.rst:842 +#: ../../library/importlib.rst:844 msgid "" "If the argument to the closure is not an existing directory, :exc:" "`ImportError` is raised." msgstr "" -#: ../../library/importlib.rst:848 +#: ../../library/importlib.rst:850 msgid "" "Represents a :term:`namespace package`'s path (:attr:`module.__path__`)." msgstr "" -#: ../../library/importlib.rst:850 +#: ../../library/importlib.rst:852 msgid "" "When its ``__path__`` value is accessed it will be recomputed if necessary. " "This keeps it in-sync with the global state (:attr:`sys.modules`)." msgstr "" -#: ../../library/importlib.rst:853 +#: ../../library/importlib.rst:855 msgid "The *name* argument is the name of the namespace module." msgstr "" -#: ../../library/importlib.rst:855 +#: ../../library/importlib.rst:857 msgid "The *path* argument is the initial path value." msgstr "" -#: ../../library/importlib.rst:857 +#: ../../library/importlib.rst:859 msgid "" "The *path_finder* argument is the callable used to recompute the path value. " "The callable has the same signature as :meth:`importlib.abc.MetaPathFinder." "find_spec`." msgstr "" -#: ../../library/importlib.rst:860 +#: ../../library/importlib.rst:862 msgid "" "When the parent's :attr:`module.__path__` attribute is updated, the path " "value is recomputed." msgstr "" -#: ../../library/importlib.rst:863 +#: ../../library/importlib.rst:865 msgid "" "If the parent module is missing from :data:`sys.modules`, then :exc:" "`ModuleNotFoundError` will be raised." msgstr "" -#: ../../library/importlib.rst:866 +#: ../../library/importlib.rst:868 msgid "For top-level modules, the parent module's path is :data:`sys.path`." msgstr "" -#: ../../library/importlib.rst:870 +#: ../../library/importlib.rst:872 msgid "" ":meth:`PathFinder.invalidate_caches` invalidates :class:`NamespacePath`, " "forcing the path value to be recomputed next time it is accessed." msgstr "" -#: ../../library/importlib.rst:878 +#: ../../library/importlib.rst:880 msgid "" "A concrete implementation of :class:`importlib.abc.SourceLoader` by " "subclassing :class:`importlib.abc.FileLoader` and providing some concrete " "implementations of other methods." msgstr "" -#: ../../library/importlib.rst:889 +#: ../../library/importlib.rst:891 msgid "The name of the module that this loader will handle." msgstr "" -#: ../../library/importlib.rst:893 +#: ../../library/importlib.rst:895 msgid "The path to the source file." msgstr "" -#: ../../library/importlib.rst:897 +#: ../../library/importlib.rst:899 msgid "Return ``True`` if :attr:`path` appears to be for a package." msgstr "" -#: ../../library/importlib.rst:901 +#: ../../library/importlib.rst:903 msgid "" "Concrete implementation of :meth:`importlib.abc.SourceLoader.path_stats`." msgstr "" -#: ../../library/importlib.rst:905 +#: ../../library/importlib.rst:907 msgid "Concrete implementation of :meth:`importlib.abc.SourceLoader.set_data`." msgstr "" -#: ../../library/importlib.rst:910 +#: ../../library/importlib.rst:912 msgid "" "A concrete implementation of :class:`importlib.abc.FileLoader` which can " "import bytecode files (i.e. no source code files exist)." msgstr "" -#: ../../library/importlib.rst:913 +#: ../../library/importlib.rst:915 msgid "" "Please note that direct use of bytecode files (and thus not source code " "files) inhibits your modules from being usable by all Python implementations " "or new versions of Python which change the bytecode format." msgstr "" -#: ../../library/importlib.rst:925 +#: ../../library/importlib.rst:927 msgid "The name of the module the loader will handle." msgstr "" -#: ../../library/importlib.rst:929 +#: ../../library/importlib.rst:931 msgid "The path to the bytecode file." msgstr "" -#: ../../library/importlib.rst:933 +#: ../../library/importlib.rst:935 msgid "Determines if the module is a package based on :attr:`path`." msgstr "" -#: ../../library/importlib.rst:937 +#: ../../library/importlib.rst:939 msgid "Returns the code object for :attr:`name` created from :attr:`path`." msgstr "" -#: ../../library/importlib.rst:941 +#: ../../library/importlib.rst:943 msgid "" "Returns ``None`` as bytecode files have no source when this loader is used." msgstr "" -#: ../../library/importlib.rst:947 +#: ../../library/importlib.rst:949 msgid "" "A concrete implementation of :class:`importlib.abc.ExecutionLoader` for " "extension modules." msgstr "" -#: ../../library/importlib.rst:950 +#: ../../library/importlib.rst:952 msgid "" "The *fullname* argument specifies the name of the module the loader is to " "support. The *path* argument is the path to the extension module's file." msgstr "" -#: ../../library/importlib.rst:953 +#: ../../library/importlib.rst:955 msgid "" "Note that, by default, importing an extension module will fail in " "subinterpreters if it doesn't implement multi-phase init (see :pep:`489`), " "even if it would otherwise import successfully." msgstr "" -#: ../../library/importlib.rst:959 +#: ../../library/importlib.rst:961 msgid "Multi-phase init is now required for use in subinterpreters." msgstr "" -#: ../../library/importlib.rst:964 ../../library/importlib.rst:1149 +#: ../../library/importlib.rst:966 ../../library/importlib.rst:1151 msgid "Name of the module the loader supports." msgstr "" -#: ../../library/importlib.rst:968 +#: ../../library/importlib.rst:970 msgid "Path to the extension module." msgstr "" -#: ../../library/importlib.rst:972 +#: ../../library/importlib.rst:974 msgid "" "Creates the module object from the given specification in accordance with :" "pep:`489`." msgstr "" -#: ../../library/importlib.rst:979 +#: ../../library/importlib.rst:981 msgid "Initializes the given module object in accordance with :pep:`489`." msgstr "" -#: ../../library/importlib.rst:985 +#: ../../library/importlib.rst:987 msgid "" "Returns ``True`` if the file path points to a package's ``__init__`` module " "based on :const:`EXTENSION_SUFFIXES`." msgstr "" -#: ../../library/importlib.rst:990 +#: ../../library/importlib.rst:992 msgid "Returns ``None`` as extension modules lack a code object." msgstr "" -#: ../../library/importlib.rst:994 +#: ../../library/importlib.rst:996 msgid "Returns ``None`` as extension modules do not have source code." msgstr "" -#: ../../library/importlib.rst:1005 +#: ../../library/importlib.rst:1007 msgid "" "A concrete implementation of :class:`importlib.abc.InspectLoader` for " "namespace packages. This is an alias for a private class and is only made " "public for introspecting the ``__loader__`` attribute on namespace packages::" msgstr "" -#: ../../library/importlib.rst:1010 +#: ../../library/importlib.rst:1012 msgid "" ">>> from importlib.machinery import NamespaceLoader\n" ">>> import my_namespace\n" @@ -1209,7 +1211,7 @@ msgid "" "True" msgstr "" -#: ../../library/importlib.rst:1023 +#: ../../library/importlib.rst:1025 msgid "" "A specification for a module's import-system-related state. This is " "typically exposed as the module's :attr:`~module.__spec__` attribute. Many " @@ -1222,19 +1224,19 @@ msgid "" "origin>`, and vice versa." msgstr "" -#: ../../library/importlib.rst:1037 +#: ../../library/importlib.rst:1039 msgid "" "The module's fully qualified name (see :attr:`module.__name__`). The :term:" "`finder` should always set this attribute to a non-empty string." msgstr "" -#: ../../library/importlib.rst:1042 +#: ../../library/importlib.rst:1044 msgid "" "The :term:`loader` used to load the module (see :attr:`module.__loader__`). " "The :term:`finder` should always set this attribute." msgstr "" -#: ../../library/importlib.rst:1047 +#: ../../library/importlib.rst:1049 msgid "" "The location the :term:`loader` should use to load the module (see :attr:" "`module.__file__`). For example, for modules loaded from a ``.py`` file this " @@ -1243,14 +1245,14 @@ msgid "" "there is not one (like for namespace packages), it should be set to ``None``." msgstr "" -#: ../../library/importlib.rst:1056 +#: ../../library/importlib.rst:1058 msgid "" "A (possibly empty) :term:`sequence` of strings enumerating the locations in " "which a package's submodules will be found (see :attr:`module.__path__`). " "Most of the time there will only be a single directory in this list." msgstr "" -#: ../../library/importlib.rst:1061 +#: ../../library/importlib.rst:1063 msgid "" "The :term:`finder` should set this attribute to a sequence, even an empty " "one, to indicate to the import system that the module is a package. It " @@ -1258,41 +1260,41 @@ msgid "" "later to a special object for namespace packages." msgstr "" -#: ../../library/importlib.rst:1069 +#: ../../library/importlib.rst:1071 msgid "" "The :term:`finder` may set this attribute to an object containing " "additional, module-specific data to use when loading the module. Otherwise " "it should be set to ``None``." msgstr "" -#: ../../library/importlib.rst:1075 +#: ../../library/importlib.rst:1077 msgid "" "The filename of a compiled version of the module's code. The :term:`finder` " "should always set this attribute but it may be ``None`` for modules that do " "not need compiled code stored." msgstr "" -#: ../../library/importlib.rst:1081 +#: ../../library/importlib.rst:1083 msgid "" "(Read-only) The fully qualified name of the package the module is in (or the " "empty string for a top-level module). See :attr:`module.__package__`. If the " "module is a package then this is the same as :attr:`name`." msgstr "" -#: ../../library/importlib.rst:1088 +#: ../../library/importlib.rst:1090 msgid "" "``True`` if the spec's :attr:`origin` refers to a loadable location, " "``False`` otherwise. This value impacts how :attr:`!origin` is interpreted " "and how the module's :attr:`~module.__file__` is populated." msgstr "" -#: ../../library/importlib.rst:1095 +#: ../../library/importlib.rst:1097 msgid "" "A specialization of :class:`importlib.machinery.ExtensionFileLoader` that is " "able to load extension modules in Framework format." msgstr "" -#: ../../library/importlib.rst:1098 +#: ../../library/importlib.rst:1100 msgid "" "For compatibility with the iOS App Store, *all* binary modules in an iOS app " "must be dynamic libraries, contained in a framework with appropriate " @@ -1301,7 +1303,7 @@ msgid "" "material outside the Frameworks folder." msgstr "" -#: ../../library/importlib.rst:1104 +#: ../../library/importlib.rst:1106 msgid "" "To accommodate this requirement, when running on iOS, extension module " "binaries are *not* packaged as ``.so`` files on ``sys.path``, but as " @@ -1315,7 +1317,7 @@ msgid "" "fwork`` file, relative to the app bundle." msgstr "" -#: ../../library/importlib.rst:1115 +#: ../../library/importlib.rst:1117 msgid "" "For example, consider the case of an import ``from foo.bar import _whiz``, " "where ``_whiz`` is implemented with the binary module ``sources/foo/bar/" @@ -1331,7 +1333,7 @@ msgid "" "_whiz.origin``, containing the path to the ``.fwork`` file." msgstr "" -#: ../../library/importlib.rst:1129 +#: ../../library/importlib.rst:1131 msgid "" "When a module is loaded with this loader, the ``__file__`` for the module " "will report as the location of the ``.fwork`` file. This allows code to use " @@ -1340,7 +1342,7 @@ msgid "" "in the ``.framework`` folder." msgstr "" -#: ../../library/importlib.rst:1135 +#: ../../library/importlib.rst:1137 msgid "" "The Xcode project building the app is responsible for converting any ``.so`` " "files from wherever they exist in the ``PYTHONPATH`` into frameworks in the " @@ -1351,45 +1353,45 @@ msgid "" "details on how to construct this build step." msgstr "" -#: ../../library/importlib.rst:1145 +#: ../../library/importlib.rst:1147 msgid "Availability" msgstr "" -#: ../../library/importlib.rst:1153 +#: ../../library/importlib.rst:1155 msgid "Path to the ``.fwork`` file for the extension module." msgstr "" -#: ../../library/importlib.rst:1157 +#: ../../library/importlib.rst:1159 msgid ":mod:`!importlib.util` -- Utility code for importers" msgstr "" -#: ../../library/importlib.rst:1163 +#: ../../library/importlib.rst:1165 msgid "**Source code:** :source:`Lib/importlib/util.py`" msgstr "" -#: ../../library/importlib.rst:1167 +#: ../../library/importlib.rst:1169 msgid "" "This module contains the various objects that help in the construction of " "an :term:`importer`." msgstr "" -#: ../../library/importlib.rst:1172 +#: ../../library/importlib.rst:1174 msgid "" "The bytes which represent the bytecode version number. If you need help with " "loading/writing bytecode then consider :class:`importlib.abc.SourceLoader`." msgstr "" -#: ../../library/importlib.rst:1179 +#: ../../library/importlib.rst:1181 msgid "" "Return the :pep:`3147`/:pep:`488` path to the byte-compiled file associated " "with the source *path*. For example, if *path* is ``/foo/bar/baz.py`` the " "return value would be ``/foo/bar/__pycache__/baz.cpython-32.pyc`` for Python " -"3.2. The ``cpython-32`` string comes from the current magic tag (see :func:" -"`get_tag`; if :attr:`sys.implementation.cache_tag` is not defined then :exc:" -"`NotImplementedError` will be raised)." +"3.2. The ``cpython-32`` string comes from the current magic tag (see :attr:" +"`sys.implementation.cache_tag `; if it is not defined " +"then :exc:`NotImplementedError` will be raised)." msgstr "" -#: ../../library/importlib.rst:1186 +#: ../../library/importlib.rst:1188 msgid "" "The *optimization* parameter is used to specify the optimization level of " "the bytecode file. An empty string represents no optimization, so ``/foo/bar/" @@ -1402,50 +1404,51 @@ msgid "" "be alphanumeric, else :exc:`ValueError` is raised." msgstr "" -#: ../../library/importlib.rst:1198 +#: ../../library/importlib.rst:1200 msgid "" "The *optimization* parameter was added and the *debug_override* parameter " "was deprecated." msgstr "" -#: ../../library/importlib.rst:1202 ../../library/importlib.rst:1221 -#: ../../library/importlib.rst:1310 +#: ../../library/importlib.rst:1204 ../../library/importlib.rst:1223 +#: ../../library/importlib.rst:1314 msgid "Accepts a :term:`path-like object`." msgstr "" -#: ../../library/importlib.rst:1205 +#: ../../library/importlib.rst:1207 msgid "The *debug_override* parameter was removed." msgstr "" -#: ../../library/importlib.rst:1211 +#: ../../library/importlib.rst:1213 msgid "" "Given the *path* to a :pep:`3147` file name, return the associated source " "code file path. For example, if *path* is ``/foo/bar/__pycache__/baz." "cpython-32.pyc`` the returned path would be ``/foo/bar/baz.py``. *path* " "need not exist, however if it does not conform to :pep:`3147` or :pep:`488` " "format, a :exc:`ValueError` is raised. If :attr:`sys.implementation." -"cache_tag` is not defined, :exc:`NotImplementedError` is raised." +"cache_tag ` is not defined, :exc:`NotImplementedError` " +"is raised." msgstr "" -#: ../../library/importlib.rst:1226 +#: ../../library/importlib.rst:1228 msgid "" "Decode the given bytes representing source code and return it as a string " "with universal newlines (as required by :meth:`importlib.abc.InspectLoader." "get_source`)." msgstr "" -#: ../../library/importlib.rst:1234 +#: ../../library/importlib.rst:1236 msgid "Resolve a relative module name to an absolute one." msgstr "" -#: ../../library/importlib.rst:1236 +#: ../../library/importlib.rst:1238 msgid "" "If **name** has no leading dots, then **name** is simply returned. This " "allows for usage such as ``importlib.util.resolve_name('sys', __spec__." "parent)`` without doing a check to see if the **package** argument is needed." msgstr "" -#: ../../library/importlib.rst:1241 +#: ../../library/importlib.rst:1243 msgid "" ":exc:`ImportError` is raised if **name** is a relative module name but " "**package** is a false value (e.g. ``None`` or the empty string). :exc:" @@ -1453,13 +1456,13 @@ msgid "" "package (e.g. requesting ``..bacon`` from within the ``spam`` package)." msgstr "" -#: ../../library/importlib.rst:1249 +#: ../../library/importlib.rst:1251 msgid "" "To improve consistency with import statements, raise :exc:`ImportError` " "instead of :exc:`ValueError` for invalid relative import attempts." msgstr "" -#: ../../library/importlib.rst:1256 +#: ../../library/importlib.rst:1258 msgid "" "Find the :term:`spec ` for a module, optionally relative to the " "specified **package** name. If the module is in :data:`sys.modules`, then " @@ -1469,30 +1472,32 @@ msgid "" "if no spec is found." msgstr "" -#: ../../library/importlib.rst:1263 +#: ../../library/importlib.rst:1265 msgid "" "If **name** is for a submodule (contains a dot), the parent module is " "automatically imported." msgstr "" -#: ../../library/importlib.rst:1266 -msgid "**name** and **package** work the same as for :func:`import_module`." +#: ../../library/importlib.rst:1268 +msgid "" +"**name** and **package** work the same as for :func:`importlib." +"import_module`." msgstr "" -#: ../../library/importlib.rst:1270 +#: ../../library/importlib.rst:1273 msgid "" "Raises :exc:`ModuleNotFoundError` instead of :exc:`AttributeError` if " "**package** is in fact not a package (i.e. lacks a :attr:`~module.__path__` " "attribute)." msgstr "" -#: ../../library/importlib.rst:1277 +#: ../../library/importlib.rst:1280 msgid "" "Create a new module based on **spec** and :meth:`spec.loader.create_module " "`." msgstr "" -#: ../../library/importlib.rst:1280 +#: ../../library/importlib.rst:1283 msgid "" "If :meth:`spec.loader.create_module ` " "does not return ``None``, then any pre-existing attributes will not be " @@ -1500,23 +1505,23 @@ msgid "" "accessing **spec** or setting an attribute on the module." msgstr "" -#: ../../library/importlib.rst:1285 +#: ../../library/importlib.rst:1288 msgid "" "This function is preferred over using :class:`types.ModuleType` to create a " "new module as **spec** is used to set as many import-controlled attributes " "on the module as possible." msgstr "" -#: ../../library/importlib.rst:1293 +#: ../../library/importlib.rst:1296 msgid "" "A factory function for creating a :class:`~importlib.machinery.ModuleSpec` " "instance based on a loader. The parameters have the same meaning as they do " "for ModuleSpec. The function uses available :term:`loader` APIs, such as :" -"meth:`InspectLoader.is_package`, to fill in any missing information on the " -"spec." +"meth:`InspectLoader.is_package `, to " +"fill in any missing information on the spec." msgstr "" -#: ../../library/importlib.rst:1303 +#: ../../library/importlib.rst:1307 msgid "" "A factory function for creating a :class:`~importlib.machinery.ModuleSpec` " "instance based on the path to a file. Missing information will be filled in " @@ -1524,14 +1529,14 @@ msgid "" "module will be file-based." msgstr "" -#: ../../library/importlib.rst:1315 +#: ../../library/importlib.rst:1319 msgid "" "Return the hash of *source_bytes* as bytes. A hash-based ``.pyc`` file " "embeds the :func:`source_hash` of the corresponding source file's contents " "in its header." msgstr "" -#: ../../library/importlib.rst:1323 +#: ../../library/importlib.rst:1327 msgid "" "A context manager that can temporarily skip the compatibility check for " "extension modules. By default the check is enabled and will fail when a " @@ -1540,33 +1545,33 @@ msgid "" "interpreter GIL, when imported in an interpreter with its own GIL." msgstr "" -#: ../../library/importlib.rst:1330 +#: ../../library/importlib.rst:1334 msgid "" "Note that this function is meant to accommodate an unusual case; one which " "is likely to eventually go away. There's is a pretty good chance this is " "not what you were looking for." msgstr "" -#: ../../library/importlib.rst:1334 +#: ../../library/importlib.rst:1338 msgid "" "You can get the same effect as this function by implementing the basic " "interface of multi-phase init (:pep:`489`) and lying about support for " "multiple interpreters (or per-interpreter GIL)." msgstr "" -#: ../../library/importlib.rst:1339 +#: ../../library/importlib.rst:1343 msgid "" "Using this function to disable the check can lead to unexpected behavior and " "even crashes. It should only be used during extension module development." msgstr "" -#: ../../library/importlib.rst:1347 +#: ../../library/importlib.rst:1351 msgid "" "A class which postpones the execution of the loader of a module until the " "module has an attribute accessed." msgstr "" -#: ../../library/importlib.rst:1350 +#: ../../library/importlib.rst:1354 msgid "" "This class **only** works with loaders that define :meth:`~importlib.abc." "Loader.exec_module` as control over what module type is used for the module " @@ -1579,7 +1584,7 @@ msgid "" "raised if such a substitution is detected." msgstr "" -#: ../../library/importlib.rst:1361 +#: ../../library/importlib.rst:1365 msgid "" "For projects where startup time is critical, this class allows for " "potentially minimizing the cost of loading a module if it is never used. For " @@ -1588,21 +1593,21 @@ msgid "" "postponed and thus occurring out of context." msgstr "" -#: ../../library/importlib.rst:1369 +#: ../../library/importlib.rst:1373 msgid "" "Began calling :meth:`~importlib.abc.Loader.create_module`, removing the " "compatibility warning for :class:`importlib.machinery.BuiltinImporter` and :" "class:`importlib.machinery.ExtensionFileLoader`." msgstr "" -#: ../../library/importlib.rst:1376 +#: ../../library/importlib.rst:1380 msgid "" "A class method which returns a callable that creates a lazy loader. This is " "meant to be used in situations where the loader is passed by class instead " "of by instance. ::" msgstr "" -#: ../../library/importlib.rst:1381 +#: ../../library/importlib.rst:1385 msgid "" "suffixes = importlib.machinery.SOURCE_SUFFIXES\n" "loader = importlib.machinery.SourceFileLoader\n" @@ -1610,43 +1615,43 @@ msgid "" "finder = importlib.machinery.FileFinder(path, (lazy_loader, suffixes))" msgstr "" -#: ../../library/importlib.rst:1389 +#: ../../library/importlib.rst:1393 msgid "Examples" msgstr "" -#: ../../library/importlib.rst:1392 +#: ../../library/importlib.rst:1396 msgid "Importing programmatically" msgstr "" -#: ../../library/importlib.rst:1394 +#: ../../library/importlib.rst:1398 msgid "" "To programmatically import a module, use :func:`importlib.import_module`. ::" msgstr "" -#: ../../library/importlib.rst:1397 +#: ../../library/importlib.rst:1401 msgid "" "import importlib\n" "\n" "itertools = importlib.import_module('itertools')" msgstr "" -#: ../../library/importlib.rst:1403 +#: ../../library/importlib.rst:1407 msgid "Checking if a module can be imported" msgstr "" -#: ../../library/importlib.rst:1405 +#: ../../library/importlib.rst:1409 msgid "" "If you need to find out if a module can be imported without actually doing " "the import, then you should use :func:`importlib.util.find_spec`." msgstr "" -#: ../../library/importlib.rst:1408 +#: ../../library/importlib.rst:1412 msgid "" "Note that if ``name`` is a submodule (contains a dot), :func:`importlib.util." "find_spec` will import the parent module. ::" msgstr "" -#: ../../library/importlib.rst:1412 +#: ../../library/importlib.rst:1416 msgid "" "import importlib.util\n" "import sys\n" @@ -1666,11 +1671,11 @@ msgid "" " print(f\"can't find the {name!r} module\")" msgstr "" -#: ../../library/importlib.rst:1431 +#: ../../library/importlib.rst:1435 msgid "Importing a source file directly" msgstr "" -#: ../../library/importlib.rst:1433 +#: ../../library/importlib.rst:1437 msgid "" "This recipe should be used with caution: it is an approximation of an import " "statement where the file path is specified directly, rather than :data:`sys." @@ -1680,13 +1685,13 @@ msgid "" "file is appropriate." msgstr "" -#: ../../library/importlib.rst:1440 +#: ../../library/importlib.rst:1444 msgid "" "To import a Python source file directly from a path, use the following " "recipe::" msgstr "" -#: ../../library/importlib.rst:1442 +#: ../../library/importlib.rst:1446 msgid "" "import importlib.util\n" "import sys\n" @@ -1709,15 +1714,15 @@ msgid "" "json = import_from_path(module_name, file_path)" msgstr "" -#: ../../library/importlib.rst:1464 +#: ../../library/importlib.rst:1468 msgid "Implementing lazy imports" msgstr "" -#: ../../library/importlib.rst:1466 +#: ../../library/importlib.rst:1470 msgid "The example below shows how to implement lazy imports::" msgstr "" -#: ../../library/importlib.rst:1468 +#: ../../library/importlib.rst:1472 msgid "" ">>> import importlib.util\n" ">>> import sys\n" @@ -1737,11 +1742,11 @@ msgid "" "False" msgstr "" -#: ../../library/importlib.rst:1487 +#: ../../library/importlib.rst:1491 msgid "Setting up an importer" msgstr "" -#: ../../library/importlib.rst:1489 +#: ../../library/importlib.rst:1493 msgid "" "For deep customizations of import, you typically want to implement an :term:" "`importer`. This means managing both the :term:`finder` and :term:`loader` " @@ -1755,7 +1760,7 @@ msgid "" "for the appropriate classes defined within this package)::" msgstr "" -#: ../../library/importlib.rst:1500 +#: ../../library/importlib.rst:1504 msgid "" "import importlib.machinery\n" "import sys\n" @@ -1779,11 +1784,11 @@ msgid "" "sys.path_hooks.append(SpamPathEntryFinder.path_hook(loader_details))" msgstr "" -#: ../../library/importlib.rst:1521 +#: ../../library/importlib.rst:1525 msgid "Approximating :func:`importlib.import_module`" msgstr "" -#: ../../library/importlib.rst:1523 +#: ../../library/importlib.rst:1527 msgid "" "Import itself is implemented in Python code, making it possible to expose " "most of the import machinery through importlib. The following helps " @@ -1791,7 +1796,7 @@ msgid "" "approximate implementation of :func:`importlib.import_module`::" msgstr "" -#: ../../library/importlib.rst:1529 +#: ../../library/importlib.rst:1533 msgid "" "import importlib.util\n" "import sys\n" diff --git a/library/io.po b/library/io.po index d43d92b6..68769f46 100644 --- a/library/io.po +++ b/library/io.po @@ -11,7 +11,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-22 12:07+0200\n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: python-doc bot, 2025\n" "Language-Team: German (https://app.transifex.com/python-doc/teams/5390/de/)\n" @@ -66,7 +66,7 @@ msgid "" "since :exc:`IOError` is now an alias of :exc:`OSError`." msgstr "" -#: ../../library/io.rst:44 ../../library/io.rst:894 ../../library/io.rst:1244 +#: ../../library/io.rst:44 ../../library/io.rst:881 ../../library/io.rst:1231 msgid "Text I/O" msgstr "" @@ -110,7 +110,7 @@ msgid "" "`TextIOBase`." msgstr "" -#: ../../library/io.rst:72 ../../library/io.rst:1232 +#: ../../library/io.rst:72 ../../library/io.rst:1219 msgid "Binary I/O" msgstr "" @@ -186,73 +186,50 @@ msgid "" msgstr "" #: ../../library/io.rst:119 -msgid "Text Encoding" +msgid "Text encoding" msgstr "" #: ../../library/io.rst:121 msgid "" -"The default encoding of :class:`TextIOWrapper` and :func:`open` is locale-" -"specific (:func:`locale.getencoding`)." +"The default encoding of :class:`TextIOWrapper` and :func:`open` is UTF-8. " +"If :ref:`Python UTF-8 Mode ` is disabled, the default encoding is " +"locale-specific (:func:`locale.getencoding`)." msgstr "" -#: ../../library/io.rst:124 -msgid "" -"However, many developers forget to specify the encoding when opening text " -"files encoded in UTF-8 (e.g. JSON, TOML, Markdown, etc...) since most Unix " -"platforms use UTF-8 locale by default. This causes bugs because the locale " -"encoding is not UTF-8 for most Windows users. For example::" -msgstr "" - -#: ../../library/io.rst:129 -msgid "" -"# May not work on Windows when non-ASCII characters in the file.\n" -"with open(\"README.md\") as f:\n" -" long_description = f.read()" -msgstr "" - -#: ../../library/io.rst:133 -msgid "" -"Accordingly, it is highly recommended that you specify the encoding " -"explicitly when opening text files. If you want to use UTF-8, pass " -"``encoding=\"utf-8\"``. To use the current locale encoding, " -"``encoding=\"locale\"`` is supported since Python 3.10." -msgstr "" - -#: ../../library/io.rst:140 +#: ../../library/io.rst:127 msgid ":ref:`utf8-mode`" msgstr "" -#: ../../library/io.rst:141 +#: ../../library/io.rst:128 msgid "" -"Python UTF-8 Mode can be used to change the default encoding to UTF-8 from " -"locale-specific encoding." +"Python UTF-8 Mode ignores the locale encoding and forces the use of UTF-8." msgstr "" -#: ../../library/io.rst:144 +#: ../../library/io.rst:131 msgid ":pep:`686`" msgstr "" -#: ../../library/io.rst:145 -msgid "Python 3.15 will make :ref:`utf8-mode` default." +#: ../../library/io.rst:132 +msgid "Python 3.15 made :ref:`utf8-mode` the default." msgstr "" -#: ../../library/io.rst:150 +#: ../../library/io.rst:137 msgid "Opt-in EncodingWarning" msgstr "" -#: ../../library/io.rst:152 +#: ../../library/io.rst:139 msgid "See :pep:`597` for more details." msgstr "" -#: ../../library/io.rst:155 +#: ../../library/io.rst:142 msgid "" -"To find where the default locale encoding is used, you can enable the :" -"option:`-X warn_default_encoding <-X>` command line option or set the :" -"envvar:`PYTHONWARNDEFAULTENCODING` environment variable, which will emit an :" -"exc:`EncodingWarning` when the default encoding is used." +"To find where the default encoding is used, you can enable the :option:`-X " +"warn_default_encoding <-X>` command line option or set the :envvar:" +"`PYTHONWARNDEFAULTENCODING` environment variable, which will emit an :exc:" +"`EncodingWarning` when the default encoding is used." msgstr "" -#: ../../library/io.rst:160 +#: ../../library/io.rst:147 msgid "" "If you are providing an API that uses :func:`open` or :class:`TextIOWrapper` " "and passes ``encoding=None`` as a parameter, you can use :func:" @@ -261,39 +238,39 @@ msgid "" "consider using UTF-8 by default (i.e. ``encoding=\"utf-8\"``) for new APIs." msgstr "" -#: ../../library/io.rst:169 -msgid "High-level Module Interface" +#: ../../library/io.rst:156 +msgid "High-level module interface" msgstr "" -#: ../../library/io.rst:173 +#: ../../library/io.rst:160 msgid "" "An int containing the default buffer size used by the module's buffered I/O " "classes. :func:`open` uses the file's blksize (as obtained by :func:`os." "stat`) if possible." msgstr "" -#: ../../library/io.rst:180 +#: ../../library/io.rst:167 msgid "This is an alias for the builtin :func:`open` function." msgstr "" -#: ../../library/io.rst:182 ../../library/io.rst:184 +#: ../../library/io.rst:169 ../../library/io.rst:171 msgid "" "This function raises an :ref:`auditing event ` ``open`` with " "arguments *path*, *mode* and *flags*. The *mode* and *flags* arguments may " "have been modified or inferred from the original call." msgstr "" -#: ../../library/io.rst:191 +#: ../../library/io.rst:178 msgid "" "Opens the provided file with mode ``'rb'``. This function should be used " "when the intent is to treat the contents as executable code." msgstr "" -#: ../../library/io.rst:194 +#: ../../library/io.rst:181 msgid "*path* should be a :class:`str` and an absolute path." msgstr "" -#: ../../library/io.rst:196 +#: ../../library/io.rst:183 msgid "" "The behavior of this function may be overridden by an earlier call to the :c:" "func:`PyFile_SetOpenCodeHook`. However, assuming that *path* is a :class:" @@ -302,27 +279,27 @@ msgid "" "additional validation or preprocessing of the file." msgstr "" -#: ../../library/io.rst:207 +#: ../../library/io.rst:194 msgid "" "This is a helper function for callables that use :func:`open` or :class:" "`TextIOWrapper` and have an ``encoding=None`` parameter." msgstr "" -#: ../../library/io.rst:210 +#: ../../library/io.rst:197 msgid "" "This function returns *encoding* if it is not ``None``. Otherwise, it " "returns ``\"locale\"`` or ``\"utf-8\"`` depending on :ref:`UTF-8 Mode `." msgstr "" -#: ../../library/io.rst:214 +#: ../../library/io.rst:201 msgid "" "This function emits an :class:`EncodingWarning` if :data:`sys.flags." "warn_default_encoding ` is true and *encoding* is ``None``. " "*stacklevel* specifies where the warning is emitted. For example::" msgstr "" -#: ../../library/io.rst:219 +#: ../../library/io.rst:206 msgid "" "def read_text(path, encoding=None):\n" " encoding = io.text_encoding(encoding) # stacklevel=2\n" @@ -330,49 +307,49 @@ msgid "" " return f.read()" msgstr "" -#: ../../library/io.rst:224 +#: ../../library/io.rst:211 msgid "" "In this example, an :class:`EncodingWarning` is emitted for the caller of " "``read_text()``." msgstr "" -#: ../../library/io.rst:227 +#: ../../library/io.rst:214 msgid "See :ref:`io-text-encoding` for more information." msgstr "" -#: ../../library/io.rst:231 +#: ../../library/io.rst:218 msgid "" ":func:`text_encoding` returns \"utf-8\" when UTF-8 mode is enabled and " "*encoding* is ``None``." msgstr "" -#: ../../library/io.rst:238 +#: ../../library/io.rst:225 msgid "" "This is a compatibility alias for the builtin :exc:`BlockingIOError` " "exception." msgstr "" -#: ../../library/io.rst:244 +#: ../../library/io.rst:231 msgid "" "An exception inheriting :exc:`OSError` and :exc:`ValueError` that is raised " "when an unsupported operation is called on a stream." msgstr "" -#: ../../library/io.rst:250 +#: ../../library/io.rst:237 msgid ":mod:`sys`" msgstr "" -#: ../../library/io.rst:251 +#: ../../library/io.rst:238 msgid "" "contains the standard IO streams: :data:`sys.stdin`, :data:`sys.stdout`, " "and :data:`sys.stderr`." msgstr "" -#: ../../library/io.rst:256 +#: ../../library/io.rst:243 msgid "Class hierarchy" msgstr "" -#: ../../library/io.rst:258 +#: ../../library/io.rst:245 msgid "" "The implementation of I/O streams is organized as a hierarchy of classes. " "First :term:`abstract base classes ` (ABCs), which are " @@ -380,7 +357,7 @@ msgid "" "providing the standard stream implementations." msgstr "" -#: ../../library/io.rst:265 +#: ../../library/io.rst:252 msgid "" "The abstract base classes also provide default implementations of some " "methods in order to help implementation of concrete stream classes. For " @@ -388,7 +365,7 @@ msgid "" "meth:`!readinto` and :meth:`!readline`." msgstr "" -#: ../../library/io.rst:270 +#: ../../library/io.rst:257 msgid "" "At the top of the I/O hierarchy is the abstract base class :class:`IOBase`. " "It defines the basic interface to a stream. Note, however, that there is no " @@ -397,14 +374,14 @@ msgid "" "operation." msgstr "" -#: ../../library/io.rst:275 +#: ../../library/io.rst:262 msgid "" "The :class:`RawIOBase` ABC extends :class:`IOBase`. It deals with the " "reading and writing of bytes to a stream. :class:`FileIO` subclasses :class:" "`RawIOBase` to provide an interface to files in the machine's file system." msgstr "" -#: ../../library/io.rst:279 +#: ../../library/io.rst:266 msgid "" "The :class:`BufferedIOBase` ABC extends :class:`IOBase`. It deals with " "buffering on a raw binary stream (:class:`RawIOBase`). Its subclasses, :" @@ -415,7 +392,7 @@ msgid "" "class:`BytesIO`, is a stream of in-memory bytes." msgstr "" -#: ../../library/io.rst:287 +#: ../../library/io.rst:274 msgid "" "The :class:`TextIOBase` ABC extends :class:`IOBase`. It deals with streams " "whose bytes represent text, and handles encoding and decoding to and from " @@ -424,102 +401,102 @@ msgid "" "Finally, :class:`StringIO` is an in-memory stream for text." msgstr "" -#: ../../library/io.rst:293 +#: ../../library/io.rst:280 msgid "" "Argument names are not part of the specification, and only the arguments of :" "func:`open` are intended to be used as keyword arguments." msgstr "" -#: ../../library/io.rst:296 +#: ../../library/io.rst:283 msgid "" "The following table summarizes the ABCs provided by the :mod:`!io` module:" msgstr "" -#: ../../library/io.rst:301 +#: ../../library/io.rst:288 msgid "ABC" msgstr "" -#: ../../library/io.rst:301 +#: ../../library/io.rst:288 msgid "Inherits" msgstr "" -#: ../../library/io.rst:301 +#: ../../library/io.rst:288 msgid "Stub Methods" msgstr "" -#: ../../library/io.rst:301 +#: ../../library/io.rst:288 msgid "Mixin Methods and Properties" msgstr "" -#: ../../library/io.rst:303 ../../library/io.rst:308 ../../library/io.rst:310 -#: ../../library/io.rst:312 +#: ../../library/io.rst:290 ../../library/io.rst:295 ../../library/io.rst:297 +#: ../../library/io.rst:299 msgid ":class:`IOBase`" msgstr "" -#: ../../library/io.rst:303 +#: ../../library/io.rst:290 msgid "``fileno``, ``seek``, and ``truncate``" msgstr "" -#: ../../library/io.rst:303 +#: ../../library/io.rst:290 msgid "" "``close``, ``closed``, ``__enter__``, ``__exit__``, ``flush``, ``isatty``, " "``__iter__``, ``__next__``, ``readable``, ``readline``, ``readlines``, " "``seekable``, ``tell``, ``writable``, and ``writelines``" msgstr "" -#: ../../library/io.rst:308 +#: ../../library/io.rst:295 msgid ":class:`RawIOBase`" msgstr "" -#: ../../library/io.rst:308 +#: ../../library/io.rst:295 msgid "``readinto`` and ``write``" msgstr "" -#: ../../library/io.rst:308 +#: ../../library/io.rst:295 msgid "Inherited :class:`IOBase` methods, ``read``, and ``readall``" msgstr "" -#: ../../library/io.rst:310 +#: ../../library/io.rst:297 msgid ":class:`BufferedIOBase`" msgstr "" -#: ../../library/io.rst:310 +#: ../../library/io.rst:297 msgid "``detach``, ``read``, ``read1``, and ``write``" msgstr "" -#: ../../library/io.rst:310 +#: ../../library/io.rst:297 msgid "Inherited :class:`IOBase` methods, ``readinto``, and ``readinto1``" msgstr "" -#: ../../library/io.rst:312 +#: ../../library/io.rst:299 msgid ":class:`TextIOBase`" msgstr "" -#: ../../library/io.rst:312 +#: ../../library/io.rst:299 msgid "``detach``, ``read``, ``readline``, and ``write``" msgstr "" -#: ../../library/io.rst:312 +#: ../../library/io.rst:299 msgid "" "Inherited :class:`IOBase` methods, ``encoding``, ``errors``, and ``newlines``" msgstr "" -#: ../../library/io.rst:319 -msgid "I/O Base Classes" +#: ../../library/io.rst:306 +msgid "I/O base classes" msgstr "" -#: ../../library/io.rst:323 +#: ../../library/io.rst:310 msgid "The abstract base class for all I/O classes." msgstr "" -#: ../../library/io.rst:325 +#: ../../library/io.rst:312 msgid "" "This class provides empty abstract implementations for many methods that " "derived classes can override selectively; the default implementations " "represent a file that cannot be read, written or seeked." msgstr "" -#: ../../library/io.rst:330 +#: ../../library/io.rst:317 msgid "" "Even though :class:`IOBase` does not declare :meth:`!read` or :meth:`!write` " "because their signatures will vary, implementations and clients should " @@ -528,20 +505,20 @@ msgid "" "they do not support are called." msgstr "" -#: ../../library/io.rst:336 +#: ../../library/io.rst:323 msgid "" "The basic type used for binary data read from or written to a file is :class:" "`bytes`. Other :term:`bytes-like objects ` are accepted " "as method arguments too. Text I/O classes work with :class:`str` data." msgstr "" -#: ../../library/io.rst:340 +#: ../../library/io.rst:327 msgid "" "Note that calling any method (even inquiries) on a closed stream is " "undefined. Implementations may raise :exc:`ValueError` in this case." msgstr "" -#: ../../library/io.rst:343 +#: ../../library/io.rst:330 msgid "" ":class:`IOBase` (and its subclasses) supports the iterator protocol, meaning " "that an :class:`IOBase` object can be iterated over yielding the lines in a " @@ -550,143 +527,143 @@ msgid "" "character strings). See :meth:`~IOBase.readline` below." msgstr "" -#: ../../library/io.rst:349 +#: ../../library/io.rst:336 msgid "" ":class:`IOBase` is also a context manager and therefore supports the :" "keyword:`with` statement. In this example, *file* is closed after the :" "keyword:`!with` statement's suite is finished---even if an exception occurs::" msgstr "" -#: ../../library/io.rst:353 +#: ../../library/io.rst:340 msgid "" "with open('spam.txt', 'w') as file:\n" " file.write('Spam and eggs!')" msgstr "" -#: ../../library/io.rst:356 +#: ../../library/io.rst:343 msgid ":class:`IOBase` provides these data attributes and methods:" msgstr "" -#: ../../library/io.rst:360 +#: ../../library/io.rst:347 msgid "" "Flush and close this stream. This method has no effect if the file is " "already closed. Once the file is closed, any operation on the file (e.g. " "reading or writing) will raise a :exc:`ValueError`." msgstr "" -#: ../../library/io.rst:364 +#: ../../library/io.rst:351 msgid "" "As a convenience, it is allowed to call this method more than once; only the " "first call, however, will have an effect." msgstr "" -#: ../../library/io.rst:369 +#: ../../library/io.rst:356 msgid "``True`` if the stream is closed." msgstr "" -#: ../../library/io.rst:373 +#: ../../library/io.rst:360 msgid "" "Return the underlying file descriptor (an integer) of the stream if it " "exists. An :exc:`OSError` is raised if the IO object does not use a file " "descriptor." msgstr "" -#: ../../library/io.rst:379 +#: ../../library/io.rst:366 msgid "" "Flush the write buffers of the stream if applicable. This does nothing for " "read-only and non-blocking streams." msgstr "" -#: ../../library/io.rst:384 +#: ../../library/io.rst:371 msgid "" "Return ``True`` if the stream is interactive (i.e., connected to a terminal/" "tty device)." msgstr "" -#: ../../library/io.rst:389 +#: ../../library/io.rst:376 msgid "" "Return ``True`` if the stream can be read from. If ``False``, :meth:`!read` " "will raise :exc:`OSError`." msgstr "" -#: ../../library/io.rst:394 +#: ../../library/io.rst:381 msgid "" "Read and return one line from the stream. If *size* is specified, at most " "*size* bytes will be read." msgstr "" -#: ../../library/io.rst:397 +#: ../../library/io.rst:384 msgid "" "The line terminator is always ``b'\\n'`` for binary files; for text files, " "the *newline* argument to :func:`open` can be used to select the line " "terminator(s) recognized." msgstr "" -#: ../../library/io.rst:403 +#: ../../library/io.rst:390 msgid "" "Read and return a list of lines from the stream. *hint* can be specified to " "control the number of lines read: no more lines will be read if the total " "size (in bytes/characters) of all lines so far exceeds *hint*." msgstr "" -#: ../../library/io.rst:407 +#: ../../library/io.rst:394 msgid "" "*hint* values of ``0`` or less, as well as ``None``, are treated as no hint." msgstr "" -#: ../../library/io.rst:410 +#: ../../library/io.rst:397 msgid "" "Note that it's already possible to iterate on file objects using ``for line " "in file: ...`` without calling :meth:`!file.readlines`." msgstr "" -#: ../../library/io.rst:415 +#: ../../library/io.rst:402 msgid "" "Change the stream position to the given byte *offset*, interpreted relative " "to the position indicated by *whence*, and return the new absolute position. " "Values for *whence* are:" msgstr "" -#: ../../library/io.rst:420 +#: ../../library/io.rst:407 msgid "" ":data:`os.SEEK_SET` or ``0`` -- start of the stream (the default); *offset* " "should be zero or positive" msgstr "" -#: ../../library/io.rst:422 +#: ../../library/io.rst:409 msgid "" ":data:`os.SEEK_CUR` or ``1`` -- current stream position; *offset* may be " "negative" msgstr "" -#: ../../library/io.rst:424 +#: ../../library/io.rst:411 msgid "" ":data:`os.SEEK_END` or ``2`` -- end of the stream; *offset* is usually " "negative" msgstr "" -#: ../../library/io.rst:427 ../../library/io.rst:970 +#: ../../library/io.rst:414 ../../library/io.rst:957 msgid "The :data:`!SEEK_*` constants." msgstr "" -#: ../../library/io.rst:430 +#: ../../library/io.rst:417 msgid "" "Some operating systems could support additional values, like :const:`os." "SEEK_HOLE` or :const:`os.SEEK_DATA`. The valid values for a file could " "depend on it being open in text or binary mode." msgstr "" -#: ../../library/io.rst:437 +#: ../../library/io.rst:424 msgid "" "Return ``True`` if the stream supports random access. If ``False``, :meth:" "`seek`, :meth:`tell` and :meth:`truncate` will raise :exc:`OSError`." msgstr "" -#: ../../library/io.rst:442 +#: ../../library/io.rst:429 msgid "Return the current stream position." msgstr "" -#: ../../library/io.rst:446 +#: ../../library/io.rst:433 msgid "" "Resize the stream to the given *size* in bytes (or the current position if " "*size* is not specified). The current stream position isn't changed. This " @@ -695,34 +672,34 @@ msgid "" "additional bytes are zero-filled). The new file size is returned." msgstr "" -#: ../../library/io.rst:453 +#: ../../library/io.rst:440 msgid "Windows will now zero-fill files when extending." msgstr "" -#: ../../library/io.rst:458 +#: ../../library/io.rst:445 msgid "" "Return ``True`` if the stream supports writing. If ``False``, :meth:`!" "write` and :meth:`truncate` will raise :exc:`OSError`." msgstr "" -#: ../../library/io.rst:463 +#: ../../library/io.rst:450 msgid "" "Write a list of lines to the stream. Line separators are not added, so it " "is usual for each of the lines provided to have a line separator at the end." msgstr "" -#: ../../library/io.rst:469 +#: ../../library/io.rst:456 msgid "" "Prepare for object destruction. :class:`IOBase` provides a default " "implementation of this method that calls the instance's :meth:`~IOBase." "close` method." msgstr "" -#: ../../library/io.rst:476 +#: ../../library/io.rst:463 msgid "Base class for raw binary streams. It inherits from :class:`IOBase`." msgstr "" -#: ../../library/io.rst:478 +#: ../../library/io.rst:465 msgid "" "Raw binary streams typically provide low-level access to an underlying OS " "device or API, and do not try to encapsulate it in high-level primitives " @@ -730,19 +707,19 @@ msgid "" "text streams, described later in this page)." msgstr "" -#: ../../library/io.rst:483 +#: ../../library/io.rst:470 msgid "" ":class:`RawIOBase` provides these methods in addition to those from :class:" "`IOBase`:" msgstr "" -#: ../../library/io.rst:488 +#: ../../library/io.rst:475 msgid "" "Read up to *size* bytes from the object and return them. As a convenience, " "if *size* is unspecified or -1, all bytes until EOF are returned." msgstr "" -#: ../../library/io.rst:491 +#: ../../library/io.rst:478 msgid "" "Attempts to make only one system call but will retry if interrupted and the " "signal handler does not raise an exception (see :pep:`475` for the " @@ -750,46 +727,46 @@ msgid "" "operating system call returns fewer than *size* bytes." msgstr "" -#: ../../library/io.rst:496 +#: ../../library/io.rst:483 msgid "" "If 0 bytes are returned, and *size* was not 0, this indicates end of file. " "If the object is in non-blocking mode and no bytes are available, ``None`` " "is returned." msgstr "" -#: ../../library/io.rst:500 +#: ../../library/io.rst:487 msgid "" "The default implementation defers to :meth:`readall` and :meth:`readinto`." msgstr "" -#: ../../library/io.rst:505 +#: ../../library/io.rst:492 msgid "" "Read and return all the bytes from the stream until EOF, using multiple " "calls to the stream if necessary." msgstr "" -#: ../../library/io.rst:508 +#: ../../library/io.rst:495 msgid "" "If ``0`` bytes are returned this indicates end of file. If the object is in " "non-blocking mode and the underlying :meth:`read` returns ``None`` " "indicating no bytes are available, ``None`` is returned." msgstr "" -#: ../../library/io.rst:514 +#: ../../library/io.rst:501 msgid "" "Read bytes into a pre-allocated, writable :term:`bytes-like object` *b*, and " "return the number of bytes read. For example, *b* might be a :class:" "`bytearray`." msgstr "" -#: ../../library/io.rst:518 +#: ../../library/io.rst:505 msgid "" "If ``0`` is returned and ``len(b)`` is not ``0``, this indicates end of " "file. If the object is in non-blocking mode and no bytes are available, " "``None`` is returned." msgstr "" -#: ../../library/io.rst:524 +#: ../../library/io.rst:511 msgid "" "Write the given :term:`bytes-like object`, *b*, to the underlying raw " "stream, and return the number of bytes written. This can be less than the " @@ -800,7 +777,7 @@ msgid "" "the implementation should only access *b* during the method call." msgstr "" -#: ../../library/io.rst:536 +#: ../../library/io.rst:523 msgid "" "This function does not ensure all bytes are written or an exception is " "thrown. Callers may implement that behavior by checking the return value " @@ -809,20 +786,20 @@ msgid "" "ref:`binary-io` and :ref:`text-io` implement retry behavior." msgstr "" -#: ../../library/io.rst:544 +#: ../../library/io.rst:531 msgid "" "Base class for binary streams that support some kind of buffering. It " "inherits from :class:`IOBase`." msgstr "" -#: ../../library/io.rst:547 +#: ../../library/io.rst:534 msgid "" "The main difference with :class:`RawIOBase` is that methods :meth:`read`, :" "meth:`readinto` and :meth:`write` will try (respectively) to read as much " "input as requested or to emit all provided data." msgstr "" -#: ../../library/io.rst:551 +#: ../../library/io.rst:538 msgid "" "In addition, if the underlying raw stream is in non-blocking mode, when the " "system returns would block :meth:`write` will raise :exc:`BlockingIOError` " @@ -830,54 +807,54 @@ msgid "" "data read so far or ``None`` if no data is available." msgstr "" -#: ../../library/io.rst:556 +#: ../../library/io.rst:543 msgid "" "Besides, the :meth:`read` method does not have a default implementation that " "defers to :meth:`readinto`." msgstr "" -#: ../../library/io.rst:559 +#: ../../library/io.rst:546 msgid "" "A typical :class:`BufferedIOBase` implementation should not inherit from a :" "class:`RawIOBase` implementation, but wrap one, like :class:`BufferedWriter` " "and :class:`BufferedReader` do." msgstr "" -#: ../../library/io.rst:563 +#: ../../library/io.rst:550 msgid "" ":class:`BufferedIOBase` provides or overrides these data attributes and " "methods in addition to those from :class:`IOBase`:" msgstr "" -#: ../../library/io.rst:568 +#: ../../library/io.rst:555 msgid "" "The underlying raw stream (a :class:`RawIOBase` instance) that :class:" "`BufferedIOBase` deals with. This is not part of the :class:" "`BufferedIOBase` API and may not exist on some implementations." msgstr "" -#: ../../library/io.rst:574 +#: ../../library/io.rst:561 msgid "Separate the underlying raw stream from the buffer and return it." msgstr "" -#: ../../library/io.rst:576 +#: ../../library/io.rst:563 msgid "" "After the raw stream has been detached, the buffer is in an unusable state." msgstr "" -#: ../../library/io.rst:579 +#: ../../library/io.rst:566 msgid "" "Some buffers, like :class:`BytesIO`, do not have the concept of a single raw " "stream to return from this method. They raise :exc:`UnsupportedOperation`." msgstr "" -#: ../../library/io.rst:587 +#: ../../library/io.rst:574 msgid "" "Read and return up to *size* bytes. If the argument is omitted, ``None``, or " "negative read as much as possible." msgstr "" -#: ../../library/io.rst:590 +#: ../../library/io.rst:577 msgid "" "Fewer bytes may be returned than requested. An empty :class:`bytes` object " "is returned if the stream is already at EOF. More than one read may be made " @@ -886,7 +863,7 @@ msgid "" "does not imply that EOF is imminent." msgstr "" -#: ../../library/io.rst:596 +#: ../../library/io.rst:583 msgid "" "When reading as much as possible the default implementation will use ``raw." "readall`` if available (which should implement :meth:`RawIOBase.readall`), " @@ -895,14 +872,14 @@ msgid "" "non-blocking streams more data may become available." msgstr "" -#: ../../library/io.rst:605 ../../library/io.rst:618 +#: ../../library/io.rst:592 ../../library/io.rst:605 msgid "" "When the underlying raw stream is non-blocking, implementations may either " "raise :exc:`BlockingIOError` or return ``None`` if no data is available. :" "mod:`!io` implementations return ``None``." msgstr "" -#: ../../library/io.rst:611 +#: ../../library/io.rst:598 msgid "" "Read and return up to *size* bytes, calling :meth:`~RawIOBase.readinto` " "which may retry if :py:const:`~errno.EINTR` is encountered per :pep:`475`. " @@ -910,26 +887,26 @@ msgid "" "arbitrary value for *size*." msgstr "" -#: ../../library/io.rst:624 +#: ../../library/io.rst:611 msgid "" "Read bytes into a pre-allocated, writable :term:`bytes-like object` *b* and " "return the number of bytes read. For example, *b* might be a :class:" "`bytearray`." msgstr "" -#: ../../library/io.rst:628 +#: ../../library/io.rst:615 msgid "" "Like :meth:`read`, multiple reads may be issued to the underlying raw " "stream, unless the latter is interactive." msgstr "" -#: ../../library/io.rst:631 ../../library/io.rst:641 +#: ../../library/io.rst:618 ../../library/io.rst:628 msgid "" "A :exc:`BlockingIOError` is raised if the underlying raw stream is in non " "blocking-mode, and has no data available at the moment." msgstr "" -#: ../../library/io.rst:636 +#: ../../library/io.rst:623 msgid "" "Read bytes into a pre-allocated, writable :term:`bytes-like object` *b*, " "using at most one call to the underlying raw stream's :meth:`~RawIOBase." @@ -937,7 +914,7 @@ msgid "" "read." msgstr "" -#: ../../library/io.rst:648 +#: ../../library/io.rst:635 msgid "" "Write the given :term:`bytes-like object`, *b*, and return the number of " "bytes written (always equal to the length of *b* in bytes, since if the " @@ -946,24 +923,24 @@ msgid "" "or held in a buffer for performance and latency reasons." msgstr "" -#: ../../library/io.rst:655 +#: ../../library/io.rst:642 msgid "" "When in non-blocking mode, a :exc:`BlockingIOError` is raised if the data " "needed to be written to the raw stream but it couldn't accept all the data " "without blocking." msgstr "" -#: ../../library/io.rst:659 +#: ../../library/io.rst:646 msgid "" "The caller may release or mutate *b* after this method returns, so the " "implementation should only access *b* during the method call." msgstr "" -#: ../../library/io.rst:664 -msgid "Raw File I/O" +#: ../../library/io.rst:651 +msgid "Raw file I/O" msgstr "" -#: ../../library/io.rst:668 +#: ../../library/io.rst:655 msgid "" "A raw binary stream representing an OS-level file containing bytes data. It " "inherits from :class:`RawIOBase` and implements its low-level access design. " @@ -973,18 +950,18 @@ msgid "" "\"read at least\" behavior, use :ref:`binary-io`." msgstr "" -#: ../../library/io.rst:675 +#: ../../library/io.rst:662 msgid "The *name* can be one of two things:" msgstr "" -#: ../../library/io.rst:677 +#: ../../library/io.rst:664 msgid "" "a character string or :class:`bytes` object representing the path to the " "file which will be opened. In this case closefd must be ``True`` (the " "default) otherwise an error will be raised." msgstr "" -#: ../../library/io.rst:680 +#: ../../library/io.rst:667 msgid "" "an integer representing the number of an existing OS-level file descriptor " "to which the resulting :class:`FileIO` object will give access. When the " @@ -992,7 +969,7 @@ msgid "" "set to ``False``." msgstr "" -#: ../../library/io.rst:685 +#: ../../library/io.rst:672 msgid "" "The *mode* can be ``'r'``, ``'w'``, ``'x'`` or ``'a'`` for reading " "(default), writing, exclusive creation or appending. The file will be " @@ -1003,7 +980,7 @@ msgid "" "``'+'`` to the mode to allow simultaneous reading and writing." msgstr "" -#: ../../library/io.rst:693 +#: ../../library/io.rst:680 msgid "" "A custom opener can be used by passing a callable as *opener*. The " "underlying file descriptor for the file object is then obtained by calling " @@ -1012,17 +989,17 @@ msgid "" "similar to passing ``None``)." msgstr "" -#: ../../library/io.rst:699 +#: ../../library/io.rst:686 msgid "The newly created file is :ref:`non-inheritable `." msgstr "" -#: ../../library/io.rst:701 +#: ../../library/io.rst:688 msgid "" "See the :func:`open` built-in function for examples on using the *opener* " "parameter." msgstr "" -#: ../../library/io.rst:705 +#: ../../library/io.rst:692 msgid "" ":class:`FileIO` is a low-level I/O object and members, such as :meth:" "`~RawIOBase.read` and :meth:`~RawIOBase.write`, need to have their return " @@ -1031,73 +1008,73 @@ msgid "" "`text-io` implement retry behavior." msgstr "" -#: ../../library/io.rst:711 +#: ../../library/io.rst:698 msgid "The *opener* parameter was added. The ``'x'`` mode was added." msgstr "" -#: ../../library/io.rst:715 +#: ../../library/io.rst:702 msgid "The file is now non-inheritable." msgstr "" -#: ../../library/io.rst:718 +#: ../../library/io.rst:705 msgid "" ":class:`FileIO` provides these data attributes in addition to those from :" "class:`RawIOBase` and :class:`IOBase`:" msgstr "" -#: ../../library/io.rst:723 +#: ../../library/io.rst:710 msgid "The mode as given in the constructor." msgstr "" -#: ../../library/io.rst:727 +#: ../../library/io.rst:714 msgid "" "The file name. This is the file descriptor of the file when no name is " "given in the constructor." msgstr "" -#: ../../library/io.rst:732 -msgid "Buffered Streams" +#: ../../library/io.rst:719 +msgid "Buffered streams" msgstr "" -#: ../../library/io.rst:734 +#: ../../library/io.rst:721 msgid "" "Buffered I/O streams provide a higher-level interface to an I/O device than " "raw I/O does." msgstr "" -#: ../../library/io.rst:739 +#: ../../library/io.rst:726 msgid "" "A binary stream using an in-memory bytes buffer. It inherits from :class:" "`BufferedIOBase`. The buffer is discarded when the :meth:`~IOBase.close` " "method is called." msgstr "" -#: ../../library/io.rst:743 +#: ../../library/io.rst:730 msgid "" "The optional argument *initial_bytes* is a :term:`bytes-like object` that " "contains initial data." msgstr "" -#: ../../library/io.rst:746 +#: ../../library/io.rst:733 msgid "" "Methods may be used from multiple threads without external locking in :term:" "`free-threaded builds `." msgstr "" -#: ../../library/io.rst:749 +#: ../../library/io.rst:736 msgid "" ":class:`BytesIO` provides or overrides these methods in addition to those " "from :class:`BufferedIOBase` and :class:`IOBase`:" msgstr "" -#: ../../library/io.rst:754 +#: ../../library/io.rst:741 msgid "" "Return a readable and writable view over the contents of the buffer without " "copying them. Also, mutating the view will transparently update the " "contents of the buffer::" msgstr "" -#: ../../library/io.rst:758 +#: ../../library/io.rst:745 msgid "" ">>> b = io.BytesIO(b\"abcdef\")\n" ">>> view = b.getbuffer()\n" @@ -1106,126 +1083,126 @@ msgid "" "b'ab56ef'" msgstr "" -#: ../../library/io.rst:765 +#: ../../library/io.rst:752 msgid "" "As long as the view exists, the :class:`BytesIO` object cannot be resized or " "closed." msgstr "" -#: ../../library/io.rst:772 +#: ../../library/io.rst:759 msgid "Return :class:`bytes` containing the entire contents of the buffer." msgstr "" -#: ../../library/io.rst:777 +#: ../../library/io.rst:764 msgid "In :class:`BytesIO`, this is the same as :meth:`~BufferedIOBase.read`." msgstr "" -#: ../../library/io.rst:779 ../../library/io.rst:819 +#: ../../library/io.rst:766 ../../library/io.rst:806 msgid "The *size* argument is now optional." msgstr "" -#: ../../library/io.rst:784 +#: ../../library/io.rst:771 msgid "" "In :class:`BytesIO`, this is the same as :meth:`~BufferedIOBase.readinto`." msgstr "" -#: ../../library/io.rst:790 +#: ../../library/io.rst:777 msgid "" "A buffered binary stream providing higher-level access to a readable, non " "seekable :class:`RawIOBase` raw binary stream. It inherits from :class:" "`BufferedIOBase`." msgstr "" -#: ../../library/io.rst:794 +#: ../../library/io.rst:781 msgid "" "When reading data from this object, a larger amount of data may be requested " "from the underlying raw stream, and kept in an internal buffer. The buffered " "data can then be returned directly on subsequent reads." msgstr "" -#: ../../library/io.rst:798 +#: ../../library/io.rst:785 msgid "" "The constructor creates a :class:`BufferedReader` for the given readable " "*raw* stream and *buffer_size*. If *buffer_size* is omitted, :data:" "`DEFAULT_BUFFER_SIZE` is used." msgstr "" -#: ../../library/io.rst:802 +#: ../../library/io.rst:789 msgid "" ":class:`BufferedReader` provides or overrides these methods in addition to " "those from :class:`BufferedIOBase` and :class:`IOBase`:" msgstr "" -#: ../../library/io.rst:807 +#: ../../library/io.rst:794 msgid "" "Return bytes from the stream without advancing the position. The number of " "bytes returned may be less or more than requested. If the underlying raw " "stream is non-blocking and the operation would block, returns empty bytes." msgstr "" -#: ../../library/io.rst:813 +#: ../../library/io.rst:800 msgid "" "In :class:`BufferedReader` this is the same as :meth:`io.BufferedIOBase.read`" msgstr "" -#: ../../library/io.rst:817 +#: ../../library/io.rst:804 msgid "" "In :class:`BufferedReader` this is the same as :meth:`io.BufferedIOBase." "read1`" msgstr "" -#: ../../library/io.rst:824 +#: ../../library/io.rst:811 msgid "" "A buffered binary stream providing higher-level access to a writeable, non " "seekable :class:`RawIOBase` raw binary stream. It inherits from :class:" "`BufferedIOBase`." msgstr "" -#: ../../library/io.rst:828 +#: ../../library/io.rst:815 msgid "" "When writing to this object, data is normally placed into an internal " "buffer. The buffer will be written out to the underlying :class:`RawIOBase` " "object under various conditions, including:" msgstr "" -#: ../../library/io.rst:832 +#: ../../library/io.rst:819 msgid "when the buffer gets too small for all pending data;" msgstr "" -#: ../../library/io.rst:833 +#: ../../library/io.rst:820 msgid "when :meth:`flush` is called;" msgstr "" -#: ../../library/io.rst:834 +#: ../../library/io.rst:821 msgid "" "when a :meth:`~IOBase.seek` is requested (for :class:`BufferedRandom` " "objects);" msgstr "" -#: ../../library/io.rst:835 +#: ../../library/io.rst:822 msgid "when the :class:`BufferedWriter` object is closed or destroyed." msgstr "" -#: ../../library/io.rst:837 +#: ../../library/io.rst:824 msgid "" "The constructor creates a :class:`BufferedWriter` for the given writeable " "*raw* stream. If the *buffer_size* is not given, it defaults to :data:" "`DEFAULT_BUFFER_SIZE`." msgstr "" -#: ../../library/io.rst:841 +#: ../../library/io.rst:828 msgid "" ":class:`BufferedWriter` provides or overrides these methods in addition to " "those from :class:`BufferedIOBase` and :class:`IOBase`:" msgstr "" -#: ../../library/io.rst:846 +#: ../../library/io.rst:833 msgid "" "Force bytes held in the buffer into the raw stream. A :exc:" "`BlockingIOError` should be raised if the raw stream blocks." msgstr "" -#: ../../library/io.rst:851 +#: ../../library/io.rst:838 msgid "" "Write the :term:`bytes-like object`, *b*, and return the number of bytes " "written. When in non-blocking mode, a :exc:`BlockingIOError` with :attr:" @@ -1233,184 +1210,184 @@ msgid "" "written out but the raw stream blocks." msgstr "" -#: ../../library/io.rst:859 +#: ../../library/io.rst:846 msgid "" "A buffered binary stream implementing :class:`BufferedIOBase` interfaces " "providing higher-level access to a seekable :class:`RawIOBase` raw binary " "stream." msgstr "" -#: ../../library/io.rst:863 +#: ../../library/io.rst:850 msgid "" "The constructor creates a reader and writer for a seekable raw stream, given " "in the first argument. If the *buffer_size* is omitted it defaults to :data:" "`DEFAULT_BUFFER_SIZE`." msgstr "" -#: ../../library/io.rst:867 +#: ../../library/io.rst:854 msgid "" ":class:`BufferedRandom` is capable of anything :class:`BufferedReader` or :" "class:`BufferedWriter` can do. In addition, :meth:`~IOBase.seek` and :meth:" "`~IOBase.tell` are guaranteed to be implemented." msgstr "" -#: ../../library/io.rst:874 +#: ../../library/io.rst:861 msgid "" "A buffered binary stream providing higher-level access to two non seekable :" "class:`RawIOBase` raw binary streams---one readable, the other writeable. It " "inherits from :class:`BufferedIOBase`." msgstr "" -#: ../../library/io.rst:878 +#: ../../library/io.rst:865 msgid "" "*reader* and *writer* are :class:`RawIOBase` objects that are readable and " "writeable respectively. If the *buffer_size* is omitted it defaults to :" "data:`DEFAULT_BUFFER_SIZE`." msgstr "" -#: ../../library/io.rst:882 +#: ../../library/io.rst:869 msgid "" ":class:`BufferedRWPair` implements all of :class:`BufferedIOBase`\\'s " "methods except for :meth:`~BufferedIOBase.detach`, which raises :exc:" "`UnsupportedOperation`." msgstr "" -#: ../../library/io.rst:888 +#: ../../library/io.rst:875 msgid "" ":class:`BufferedRWPair` does not attempt to synchronize accesses to its " "underlying raw streams. You should not pass it the same object as reader " "and writer; use :class:`BufferedRandom` instead." msgstr "" -#: ../../library/io.rst:898 +#: ../../library/io.rst:885 msgid "" "Base class for text streams. This class provides a character and line based " "interface to stream I/O. It inherits from :class:`IOBase`." msgstr "" -#: ../../library/io.rst:901 +#: ../../library/io.rst:888 msgid "" ":class:`TextIOBase` provides or overrides these data attributes and methods " "in addition to those from :class:`IOBase`:" msgstr "" -#: ../../library/io.rst:906 +#: ../../library/io.rst:893 msgid "" "The name of the encoding used to decode the stream's bytes into strings, and " "to encode strings into bytes." msgstr "" -#: ../../library/io.rst:911 +#: ../../library/io.rst:898 msgid "The error setting of the decoder or encoder." msgstr "" -#: ../../library/io.rst:915 +#: ../../library/io.rst:902 msgid "" "A string, a tuple of strings, or ``None``, indicating the newlines " "translated so far. Depending on the implementation and the initial " "constructor flags, this may not be available." msgstr "" -#: ../../library/io.rst:921 +#: ../../library/io.rst:908 msgid "" "The underlying binary buffer (a :class:`BufferedIOBase` or :class:" "`RawIOBase` instance) that :class:`TextIOBase` deals with. This is not part " "of the :class:`TextIOBase` API and may not exist in some implementations." msgstr "" -#: ../../library/io.rst:928 +#: ../../library/io.rst:915 msgid "" "Separate the underlying binary buffer from the :class:`TextIOBase` and " "return it." msgstr "" -#: ../../library/io.rst:931 +#: ../../library/io.rst:918 msgid "" "After the underlying buffer has been detached, the :class:`TextIOBase` is in " "an unusable state." msgstr "" -#: ../../library/io.rst:934 +#: ../../library/io.rst:921 msgid "" "Some :class:`TextIOBase` implementations, like :class:`StringIO`, may not " "have the concept of an underlying buffer and calling this method will raise :" "exc:`UnsupportedOperation`." msgstr "" -#: ../../library/io.rst:942 +#: ../../library/io.rst:929 msgid "" "Read and return at most *size* characters from the stream as a single :class:" "`str`. If *size* is negative or ``None``, reads until EOF." msgstr "" -#: ../../library/io.rst:947 +#: ../../library/io.rst:934 msgid "" "Read until newline or EOF and return a single :class:`str`. If the stream " "is already at EOF, an empty string is returned." msgstr "" -#: ../../library/io.rst:950 +#: ../../library/io.rst:937 msgid "If *size* is specified, at most *size* characters will be read." msgstr "" -#: ../../library/io.rst:954 +#: ../../library/io.rst:941 msgid "" "Change the stream position to the given *offset*. Behaviour depends on the " "*whence* parameter. The default value for *whence* is :data:`!SEEK_SET`." msgstr "" -#: ../../library/io.rst:958 +#: ../../library/io.rst:945 msgid "" ":data:`!SEEK_SET` or ``0``: seek from the start of the stream (the default); " "*offset* must either be a number returned by :meth:`TextIOBase.tell`, or " "zero. Any other *offset* value produces undefined behaviour." msgstr "" -#: ../../library/io.rst:962 +#: ../../library/io.rst:949 msgid "" ":data:`!SEEK_CUR` or ``1``: \"seek\" to the current position; *offset* must " "be zero, which is a no-operation (all other values are unsupported)." msgstr "" -#: ../../library/io.rst:965 +#: ../../library/io.rst:952 msgid "" ":data:`!SEEK_END` or ``2``: seek to the end of the stream; *offset* must be " "zero (all other values are unsupported)." msgstr "" -#: ../../library/io.rst:968 +#: ../../library/io.rst:955 msgid "Return the new absolute position as an opaque number." msgstr "" -#: ../../library/io.rst:975 +#: ../../library/io.rst:962 msgid "" "Return the current stream position as an opaque number. The number does not " "usually represent a number of bytes in the underlying binary storage." msgstr "" -#: ../../library/io.rst:981 +#: ../../library/io.rst:968 msgid "" "Write the string *s* to the stream and return the number of characters " "written." msgstr "" -#: ../../library/io.rst:988 +#: ../../library/io.rst:975 msgid "" "A buffered text stream providing higher-level access to a :class:" "`BufferedIOBase` buffered binary stream. It inherits from :class:" "`TextIOBase`." msgstr "" -#: ../../library/io.rst:992 +#: ../../library/io.rst:979 msgid "" "*encoding* gives the name of the encoding that the stream will be decoded or " -"encoded with. In :ref:`UTF-8 Mode `, this defaults to UTF-8. " -"Otherwise, it defaults to :func:`locale.getencoding`. " -"``encoding=\"locale\"`` can be used to specify the current locale's encoding " -"explicitly. See :ref:`io-text-encoding` for more information." +"encoded with. This defaults to UTF-8; if :ref:`UTF-8 Mode ` is " +"disabled, it defaults to :func:`locale.getencoding`. ``encoding=\"locale\"`` " +"can be used to specify the current locale's encoding explicitly. See :ref:" +"`io-text-encoding` for more information." msgstr "" -#: ../../library/io.rst:998 +#: ../../library/io.rst:985 msgid "" "*errors* is an optional string that specifies how encoding and decoding " "errors are to be handled. Pass ``'strict'`` to raise a :exc:`ValueError` " @@ -1425,13 +1402,13 @@ msgid "" "that has been registered with :func:`codecs.register_error` is also valid." msgstr "" -#: ../../library/io.rst:1014 +#: ../../library/io.rst:1001 msgid "" "*newline* controls how line endings are handled. It can be ``None``, " "``''``, ``'\\n'``, ``'\\r'``, and ``'\\r\\n'``. It works as follows:" msgstr "" -#: ../../library/io.rst:1017 +#: ../../library/io.rst:1004 msgid "" "When reading input from the stream, if *newline* is ``None``, :term:" "`universal newlines` mode is enabled. Lines in the input can end in " @@ -1443,7 +1420,7 @@ msgid "" "returned to the caller untranslated." msgstr "" -#: ../../library/io.rst:1026 +#: ../../library/io.rst:1013 msgid "" "When writing output to the stream, if *newline* is ``None``, any ``'\\n'`` " "characters written are translated to the system default line separator, :" @@ -1452,13 +1429,13 @@ msgid "" "characters written are translated to the given string." msgstr "" -#: ../../library/io.rst:1032 +#: ../../library/io.rst:1019 msgid "" "If *line_buffering* is ``True``, :meth:`~IOBase.flush` is implied when a " "call to write contains a newline character or a carriage return." msgstr "" -#: ../../library/io.rst:1035 +#: ../../library/io.rst:1022 msgid "" "If *write_through* is ``True``, calls to :meth:`~BufferedIOBase.write` are " "guaranteed not to be buffered: any data written on the :class:" @@ -1466,11 +1443,11 @@ msgid "" "*buffer*." msgstr "" -#: ../../library/io.rst:1039 +#: ../../library/io.rst:1026 msgid "The *write_through* argument has been added." msgstr "" -#: ../../library/io.rst:1042 +#: ../../library/io.rst:1029 msgid "" "The default *encoding* is now ``locale.getpreferredencoding(False)`` instead " "of ``locale.getpreferredencoding()``. Don't change temporary the locale " @@ -1478,114 +1455,114 @@ msgid "" "instead of the user preferred encoding." msgstr "" -#: ../../library/io.rst:1048 +#: ../../library/io.rst:1035 msgid "" "The *encoding* argument now supports the ``\"locale\"`` dummy encoding name." msgstr "" -#: ../../library/io.rst:1053 +#: ../../library/io.rst:1040 msgid "" "When the underlying raw stream is non-blocking, a :exc:`BlockingIOError` may " "be raised if a read operation cannot be completed immediately." msgstr "" -#: ../../library/io.rst:1056 +#: ../../library/io.rst:1043 msgid "" ":class:`TextIOWrapper` provides these data attributes and methods in " "addition to those from :class:`TextIOBase` and :class:`IOBase`:" msgstr "" -#: ../../library/io.rst:1061 +#: ../../library/io.rst:1048 msgid "Whether line buffering is enabled." msgstr "" -#: ../../library/io.rst:1065 +#: ../../library/io.rst:1052 msgid "Whether writes are passed immediately to the underlying binary buffer." msgstr "" -#: ../../library/io.rst:1073 +#: ../../library/io.rst:1060 msgid "" "Reconfigure this text stream using new settings for *encoding*, *errors*, " "*newline*, *line_buffering* and *write_through*." msgstr "" -#: ../../library/io.rst:1076 +#: ../../library/io.rst:1063 msgid "" "Parameters not specified keep current settings, except ``errors='strict'`` " "is used when *encoding* is specified but *errors* is not specified." msgstr "" -#: ../../library/io.rst:1080 +#: ../../library/io.rst:1067 msgid "" "It is not possible to change the encoding or newline if some data has " "already been read from the stream. On the other hand, changing encoding " "after write is possible." msgstr "" -#: ../../library/io.rst:1084 +#: ../../library/io.rst:1071 msgid "" "This method does an implicit stream flush before setting the new parameters." msgstr "" -#: ../../library/io.rst:1089 +#: ../../library/io.rst:1076 msgid "The method supports ``encoding=\"locale\"`` option." msgstr "" -#: ../../library/io.rst:1094 +#: ../../library/io.rst:1081 msgid "" "Set the stream position. Return the new stream position as an :class:`int`." msgstr "" -#: ../../library/io.rst:1097 +#: ../../library/io.rst:1084 msgid "" "Four operations are supported, given by the following argument combinations:" msgstr "" -#: ../../library/io.rst:1100 +#: ../../library/io.rst:1087 msgid "``seek(0, SEEK_SET)``: Rewind to the start of the stream." msgstr "" -#: ../../library/io.rst:1101 +#: ../../library/io.rst:1088 msgid "" "``seek(cookie, SEEK_SET)``: Restore a previous position; *cookie* **must " "be** a number returned by :meth:`tell`." msgstr "" -#: ../../library/io.rst:1103 +#: ../../library/io.rst:1090 msgid "``seek(0, SEEK_END)``: Fast-forward to the end of the stream." msgstr "" -#: ../../library/io.rst:1104 +#: ../../library/io.rst:1091 msgid "``seek(0, SEEK_CUR)``: Leave the current stream position unchanged." msgstr "" -#: ../../library/io.rst:1106 +#: ../../library/io.rst:1093 msgid "Any other argument combinations are invalid, and may raise exceptions." msgstr "" -#: ../../library/io.rst:1111 +#: ../../library/io.rst:1098 msgid ":data:`os.SEEK_SET`, :data:`os.SEEK_CUR`, and :data:`os.SEEK_END`." msgstr "" -#: ../../library/io.rst:1115 +#: ../../library/io.rst:1102 msgid "" "Return the stream position as an opaque number. The return value of :meth:`!" "tell` can be given as input to :meth:`seek`, to restore a previous stream " "position." msgstr "" -#: ../../library/io.rst:1122 +#: ../../library/io.rst:1109 msgid "" "A text stream using an in-memory text buffer. It inherits from :class:" "`TextIOBase`." msgstr "" -#: ../../library/io.rst:1125 +#: ../../library/io.rst:1112 msgid "" "The text buffer is discarded when the :meth:`~IOBase.close` method is called." msgstr "" -#: ../../library/io.rst:1128 +#: ../../library/io.rst:1115 msgid "" "The initial value of the buffer can be set by providing *initial_value*. If " "newline translation is enabled, newlines will be encoded as if by :meth:" @@ -1597,31 +1574,31 @@ msgid "" "at the end of the buffer." msgstr "" -#: ../../library/io.rst:1137 +#: ../../library/io.rst:1124 msgid "" "The *newline* argument works like that of :class:`TextIOWrapper`, except " "that when writing output to the stream, if *newline* is ``None``, newlines " "are written as ``\\n`` on all platforms." msgstr "" -#: ../../library/io.rst:1141 +#: ../../library/io.rst:1128 msgid "" ":class:`StringIO` provides this method in addition to those from :class:" "`TextIOBase` and :class:`IOBase`:" msgstr "" -#: ../../library/io.rst:1146 +#: ../../library/io.rst:1133 msgid "" "Return a :class:`str` containing the entire contents of the buffer. Newlines " "are decoded as if by :meth:`~TextIOBase.read`, although the stream position " "is not changed." msgstr "" -#: ../../library/io.rst:1150 +#: ../../library/io.rst:1137 msgid "Example usage::" msgstr "" -#: ../../library/io.rst:1152 +#: ../../library/io.rst:1139 msgid "" "import io\n" "\n" @@ -1638,84 +1615,84 @@ msgid "" "output.close()" msgstr "" -#: ../../library/io.rst:1172 +#: ../../library/io.rst:1159 msgid "" "A helper codec that decodes newlines for :term:`universal newlines` mode. It " "inherits from :class:`codecs.IncrementalDecoder`." msgstr "" -#: ../../library/io.rst:1177 -msgid "Static Typing" +#: ../../library/io.rst:1164 +msgid "Static typing" msgstr "" -#: ../../library/io.rst:1179 +#: ../../library/io.rst:1166 msgid "" "The following protocols can be used for annotating function and method " "arguments for simple stream reading or writing operations. They are " "decorated with :deco:`typing.runtime_checkable`." msgstr "" -#: ../../library/io.rst:1185 +#: ../../library/io.rst:1172 msgid "" "Generic protocol for reading from a file or other input stream. ``T`` will " "usually be :class:`str` or :class:`bytes`, but can be any type that is read " "from the stream." msgstr "" -#: ../../library/io.rst:1194 +#: ../../library/io.rst:1181 msgid "" "Read data from the input stream and return it. If *size* is specified, it " "should be an integer, and at most *size* items (bytes/characters) will be " "read." msgstr "" -#: ../../library/io.rst:1198 ../../library/io.rst:1217 +#: ../../library/io.rst:1185 ../../library/io.rst:1204 msgid "For example::" msgstr "Zum Beispiel::" -#: ../../library/io.rst:1200 +#: ../../library/io.rst:1187 msgid "" "def read_it(reader: Reader[str]):\n" " data = reader.read(11)\n" " assert isinstance(data, str)" msgstr "" -#: ../../library/io.rst:1206 +#: ../../library/io.rst:1193 msgid "" "Generic protocol for writing to a file or other output stream. ``T`` will " "usually be :class:`str` or :class:`bytes`, but can be any type that can be " "written to the stream." msgstr "" -#: ../../library/io.rst:1214 +#: ../../library/io.rst:1201 msgid "" "Write *data* to the output stream and return the number of items (bytes/" "characters) written." msgstr "" -#: ../../library/io.rst:1219 +#: ../../library/io.rst:1206 msgid "" "def write_binary(writer: Writer[bytes]):\n" " writer.write(b\"Hello world!\\n\")" msgstr "" -#: ../../library/io.rst:1222 +#: ../../library/io.rst:1209 msgid "" "See :ref:`typing-io` for other I/O related protocols and classes that can be " "used for static type checking." msgstr "" -#: ../../library/io.rst:1226 +#: ../../library/io.rst:1213 msgid "Performance" msgstr "" -#: ../../library/io.rst:1228 +#: ../../library/io.rst:1215 msgid "" "This section discusses the performance of the provided concrete I/O " "implementations." msgstr "" -#: ../../library/io.rst:1234 +#: ../../library/io.rst:1221 msgid "" "By reading and writing only large chunks of data even when the user asks for " "a single byte, buffered I/O hides any inefficiency in calling and executing " @@ -1728,7 +1705,7 @@ msgid "" "data." msgstr "" -#: ../../library/io.rst:1246 +#: ../../library/io.rst:1233 msgid "" "Text I/O over a binary storage (such as a file) is significantly slower than " "binary I/O over the same storage, because it requires conversions between " @@ -1738,24 +1715,24 @@ msgid "" "the reconstruction algorithm used." msgstr "" -#: ../../library/io.rst:1253 +#: ../../library/io.rst:1240 msgid "" ":class:`StringIO`, however, is a native in-memory unicode container and will " "exhibit similar speed to :class:`BytesIO`." msgstr "" -#: ../../library/io.rst:1257 +#: ../../library/io.rst:1244 msgid "Multi-threading" msgstr "" -#: ../../library/io.rst:1259 +#: ../../library/io.rst:1246 msgid "" ":class:`FileIO` objects are thread-safe to the extent that the operating " "system calls (such as :manpage:`read(2)` under Unix) they wrap are thread-" "safe too." msgstr "" -#: ../../library/io.rst:1262 +#: ../../library/io.rst:1249 msgid "" "Binary buffered objects (instances of :class:`BufferedReader`, :class:" "`BufferedWriter`, :class:`BufferedRandom` and :class:`BufferedRWPair`) " @@ -1763,15 +1740,15 @@ msgid "" "them from multiple threads at once." msgstr "" -#: ../../library/io.rst:1267 +#: ../../library/io.rst:1254 msgid ":class:`TextIOWrapper` objects are not thread-safe." msgstr "" -#: ../../library/io.rst:1270 +#: ../../library/io.rst:1257 msgid "Reentrancy" msgstr "" -#: ../../library/io.rst:1272 +#: ../../library/io.rst:1259 msgid "" "Binary buffered objects (instances of :class:`BufferedReader`, :class:" "`BufferedWriter`, :class:`BufferedRandom` and :class:`BufferedRWPair`) are " @@ -1782,7 +1759,7 @@ msgid "" "from entering the buffered object." msgstr "" -#: ../../library/io.rst:1280 +#: ../../library/io.rst:1267 msgid "" "The above implicitly extends to text files, since the :func:`open` function " "will wrap a buffered object inside a :class:`TextIOWrapper`. This includes " @@ -1798,14 +1775,14 @@ msgstr "" msgid "io module" msgstr "" -#: ../../library/io.rst:1011 ../../library/io.rst:1167 +#: ../../library/io.rst:998 ../../library/io.rst:1154 msgid "universal newlines" msgstr "" -#: ../../library/io.rst:1011 +#: ../../library/io.rst:998 msgid "io.TextIOWrapper class" msgstr "" -#: ../../library/io.rst:1167 +#: ../../library/io.rst:1154 msgid "io.IncrementalNewlineDecoder class" msgstr "" diff --git a/library/json.po b/library/json.po index c5b78c76..a5b495ae 100644 --- a/library/json.po +++ b/library/json.po @@ -11,7 +11,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-22 12:07+0200\n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: python-doc bot, 2025\n" "Language-Team: German (https://app.transifex.com/python-doc/teams/5390/de/)\n" @@ -316,55 +316,57 @@ msgid "" "If ``True``, dictionaries will be outputted sorted by key. Default ``False``." msgstr "" -#: ../../library/json.rst:237 ../../library/json.rst:547 +#: ../../library/json.rst:239 +msgid "" +"Keys in key/value pairs of JSON are always of the type :class:`str`. When a " +"dictionary is converted into JSON, all the keys of the dictionary are " +"converted to strings. As a result of this, if a dictionary is converted into " +"JSON and then back into a dictionary, the dictionary may not equal the " +"original one. That is, ``loads(dumps(x)) != x`` if x has non-string keys. " +"*sort_keys* sorts the keys before they are converted to strings, so numeric " +"keys are sorted by value, not by their string representation." +msgstr "" + +#: ../../library/json.rst:247 ../../library/json.rst:548 msgid "Allow strings for *indent* in addition to integers." msgstr "" -#: ../../library/json.rst:240 ../../library/json.rst:555 +#: ../../library/json.rst:250 ../../library/json.rst:556 msgid "Use ``(',', ': ')`` as default if *indent* is not ``None``." msgstr "" -#: ../../library/json.rst:243 ../../library/json.rst:351 +#: ../../library/json.rst:253 ../../library/json.rst:352 msgid "" "All optional parameters are now :ref:`keyword-only `." msgstr "" -#: ../../library/json.rst:252 +#: ../../library/json.rst:262 msgid "" "Serialize *obj* to a JSON formatted :class:`str` using this :ref:`conversion " "table `. The arguments have the same meaning as in :func:" "`dump`." msgstr "" -#: ../../library/json.rst:258 -msgid "" -"Keys in key/value pairs of JSON are always of the type :class:`str`. When a " -"dictionary is converted into JSON, all the keys of the dictionary are " -"coerced to strings. As a result of this, if a dictionary is converted into " -"JSON and then back into a dictionary, the dictionary may not equal the " -"original one. That is, ``loads(dumps(x)) != x`` if x has non-string keys." -msgstr "" - -#: ../../library/json.rst:269 +#: ../../library/json.rst:270 msgid "" "Deserialize *fp* to a Python object using the :ref:`JSON-to-Python " "conversion table `." msgstr "" -#: ../../library/json.rst:272 +#: ../../library/json.rst:273 msgid "" "A ``.read()``-supporting :term:`text file` or :term:`binary file` containing " "the JSON document to be deserialized." msgstr "" -#: ../../library/json.rst:277 +#: ../../library/json.rst:278 msgid "" "If set, a custom JSON decoder. Additional keyword arguments to :func:`!load` " "will be passed to the constructor of *cls*. If ``None`` (the default), :" "class:`!JSONDecoder` is used." msgstr "" -#: ../../library/json.rst:284 +#: ../../library/json.rst:285 msgid "" "If set, a function that is called with the result of any JSON object literal " "decoded (a :class:`dict`). The return value of this function will be used " @@ -373,7 +375,7 @@ msgid "" "Default ``None``." msgstr "" -#: ../../library/json.rst:294 +#: ../../library/json.rst:295 msgid "" "If set, a function that is called with the result of any JSON object literal " "decoded with an ordered list of pairs. The return value of this function " @@ -382,7 +384,7 @@ msgid "" "takes priority. Default ``None``." msgstr "" -#: ../../library/json.rst:304 +#: ../../library/json.rst:305 msgid "" "If set, a function that is called with the result of any JSON array literal " "decoded with as a Python list. The return value of this function will be " @@ -390,7 +392,7 @@ msgid "" "custom decoders. Default ``None``." msgstr "" -#: ../../library/json.rst:313 +#: ../../library/json.rst:314 msgid "" "If set, a function that is called with the string of every JSON float to be " "decoded. If ``None`` (the default), it is equivalent to ``float(num_str)``. " @@ -398,7 +400,7 @@ msgid "" "class:`decimal.Decimal`." msgstr "" -#: ../../library/json.rst:321 +#: ../../library/json.rst:322 msgid "" "If set, a function that is called with the string of every JSON int to be " "decoded. If ``None`` (the default), it is equivalent to ``int(num_str)``. " @@ -406,7 +408,7 @@ msgid "" "class:`float`." msgstr "" -#: ../../library/json.rst:329 +#: ../../library/json.rst:330 msgid "" "If set, a function that is called with one of the following strings: ``'-" "Infinity'``, ``'Infinity'``, or ``'NaN'``. This can be used to raise an " @@ -417,42 +419,42 @@ msgstr "" msgid "Raises" msgstr "" -#: ../../library/json.rst:337 +#: ../../library/json.rst:338 msgid "When the data being deserialized is not a valid JSON document." msgstr "" -#: ../../library/json.rst:340 +#: ../../library/json.rst:341 msgid "" "When the data being deserialized does not contain UTF-8, UTF-16 or UTF-32 " "encoded data." msgstr "" -#: ../../library/json.rst:346 +#: ../../library/json.rst:347 msgid "Added the optional *object_pairs_hook* parameter." msgstr "" -#: ../../library/json.rst:347 +#: ../../library/json.rst:348 msgid "*parse_constant* doesn't get called on 'null', 'true', 'false' anymore." msgstr "" -#: ../../library/json.rst:352 +#: ../../library/json.rst:353 msgid "" "*fp* can now be a :term:`binary file`. The input encoding should be UTF-8, " "UTF-16 or UTF-32." msgstr "" -#: ../../library/json.rst:355 +#: ../../library/json.rst:356 msgid "" "The default *parse_int* of :func:`int` now limits the maximum length of the " "integer string via the interpreter's :ref:`integer string conversion length " "limitation ` to help avoid denial of service attacks." msgstr "" -#: ../../library/json.rst:361 +#: ../../library/json.rst:362 msgid "Added the optional *array_hook* parameter." msgstr "" -#: ../../library/json.rst:366 +#: ../../library/json.rst:367 msgid "" "Identical to :func:`load`, but instead of a file-like object, deserialize " "*s* (a :class:`str`, :class:`bytes` or :class:`bytearray` instance " @@ -460,107 +462,107 @@ msgid "" "table `." msgstr "" -#: ../../library/json.rst:371 +#: ../../library/json.rst:372 msgid "" "*s* can now be of type :class:`bytes` or :class:`bytearray`. The input " "encoding should be UTF-8, UTF-16 or UTF-32." msgstr "" -#: ../../library/json.rst:375 +#: ../../library/json.rst:376 msgid "The keyword argument *encoding* has been removed." msgstr "" -#: ../../library/json.rst:380 +#: ../../library/json.rst:381 msgid "Encoders and Decoders" msgstr "" -#: ../../library/json.rst:384 +#: ../../library/json.rst:385 msgid "Simple JSON decoder." msgstr "" -#: ../../library/json.rst:386 +#: ../../library/json.rst:387 msgid "Performs the following translations in decoding by default:" msgstr "" -#: ../../library/json.rst:391 ../../library/json.rst:487 +#: ../../library/json.rst:392 ../../library/json.rst:488 msgid "JSON" msgstr "" -#: ../../library/json.rst:391 ../../library/json.rst:487 +#: ../../library/json.rst:392 ../../library/json.rst:488 msgid "Python" msgstr "" -#: ../../library/json.rst:393 ../../library/json.rst:489 +#: ../../library/json.rst:394 ../../library/json.rst:490 msgid "object" msgstr "" -#: ../../library/json.rst:393 +#: ../../library/json.rst:394 msgid "dict" msgstr "" -#: ../../library/json.rst:395 ../../library/json.rst:491 +#: ../../library/json.rst:396 ../../library/json.rst:492 msgid "array" msgstr "Array" -#: ../../library/json.rst:395 +#: ../../library/json.rst:396 msgid "list" msgstr "" -#: ../../library/json.rst:397 ../../library/json.rst:493 +#: ../../library/json.rst:398 ../../library/json.rst:494 msgid "string" msgstr "" -#: ../../library/json.rst:397 ../../library/json.rst:493 +#: ../../library/json.rst:398 ../../library/json.rst:494 msgid "str" msgstr "" -#: ../../library/json.rst:399 +#: ../../library/json.rst:400 msgid "number (int)" msgstr "" -#: ../../library/json.rst:399 +#: ../../library/json.rst:400 msgid "int" msgstr "" -#: ../../library/json.rst:401 +#: ../../library/json.rst:402 msgid "number (real)" msgstr "" -#: ../../library/json.rst:401 +#: ../../library/json.rst:402 msgid "float" msgstr "" -#: ../../library/json.rst:403 ../../library/json.rst:497 +#: ../../library/json.rst:404 ../../library/json.rst:498 msgid "true" msgstr "Wahr" -#: ../../library/json.rst:403 ../../library/json.rst:497 +#: ../../library/json.rst:404 ../../library/json.rst:498 msgid "True" msgstr "" -#: ../../library/json.rst:405 ../../library/json.rst:499 +#: ../../library/json.rst:406 ../../library/json.rst:500 msgid "false" msgstr "Falsch" -#: ../../library/json.rst:405 ../../library/json.rst:499 +#: ../../library/json.rst:406 ../../library/json.rst:500 msgid "False" msgstr "" -#: ../../library/json.rst:407 ../../library/json.rst:501 +#: ../../library/json.rst:408 ../../library/json.rst:502 msgid "null" msgstr "" -#: ../../library/json.rst:407 ../../library/json.rst:501 +#: ../../library/json.rst:408 ../../library/json.rst:502 msgid "None" msgstr "" -#: ../../library/json.rst:410 +#: ../../library/json.rst:411 msgid "" "It also understands ``NaN``, ``Infinity``, and ``-Infinity`` as their " "corresponding ``float`` values, which is outside the JSON spec." msgstr "" -#: ../../library/json.rst:413 +#: ../../library/json.rst:414 msgid "" "*object_hook* is an optional function that will be called with the result of " "every JSON object decoded and its return value will be used in place of the " @@ -568,7 +570,7 @@ msgid "" "g. to support `JSON-RPC `_ class hinting)." msgstr "" -#: ../../library/json.rst:418 +#: ../../library/json.rst:419 msgid "" "*object_pairs_hook* is an optional function that will be called with the " "result of every JSON object decoded with an ordered list of pairs. The " @@ -577,11 +579,11 @@ msgid "" "*object_hook* is also defined, the *object_pairs_hook* takes priority." msgstr "" -#: ../../library/json.rst:424 +#: ../../library/json.rst:425 msgid "Added support for *object_pairs_hook*." msgstr "" -#: ../../library/json.rst:427 +#: ../../library/json.rst:428 msgid "" "*array_hook* is an optional function that will be called with the result of " "every JSON array decoded as a list. The return value of *array_hook* will be " @@ -589,11 +591,11 @@ msgid "" "custom decoders." msgstr "" -#: ../../library/json.rst:432 +#: ../../library/json.rst:433 msgid "Added support for *array_hook*." msgstr "" -#: ../../library/json.rst:435 +#: ../../library/json.rst:436 msgid "" "*parse_float* is an optional function that will be called with the string of " "every JSON float to be decoded. By default, this is equivalent to " @@ -601,7 +603,7 @@ msgid "" "JSON floats (e.g. :class:`decimal.Decimal`)." msgstr "" -#: ../../library/json.rst:440 +#: ../../library/json.rst:441 msgid "" "*parse_int* is an optional function that will be called with the string of " "every JSON int to be decoded. By default, this is equivalent to " @@ -609,14 +611,14 @@ msgid "" "JSON integers (e.g. :class:`float`)." msgstr "" -#: ../../library/json.rst:445 +#: ../../library/json.rst:446 msgid "" "*parse_constant* is an optional function that will be called with one of the " "following strings: ``'-Infinity'``, ``'Infinity'``, ``'NaN'``. This can be " "used to raise an exception if invalid JSON numbers are encountered." msgstr "" -#: ../../library/json.rst:449 +#: ../../library/json.rst:450 msgid "" "If *strict* is false (``True`` is the default), then control characters will " "be allowed inside strings. Control characters in this context are those " @@ -624,74 +626,74 @@ msgid "" "``'\\n'``, ``'\\r'`` and ``'\\0'``." msgstr "" -#: ../../library/json.rst:454 +#: ../../library/json.rst:455 msgid "" "If the data being deserialized is not a valid JSON document, a :exc:" "`JSONDecodeError` will be raised." msgstr "" -#: ../../library/json.rst:457 ../../library/json.rst:563 +#: ../../library/json.rst:458 ../../library/json.rst:564 msgid "All parameters are now :ref:`keyword-only `." msgstr "" -#: ../../library/json.rst:462 +#: ../../library/json.rst:463 msgid "" "Return the Python representation of *s* (a :class:`str` instance containing " "a JSON document)." msgstr "" -#: ../../library/json.rst:465 +#: ../../library/json.rst:466 msgid "" ":exc:`JSONDecodeError` will be raised if the given JSON document is not " "valid." msgstr "" -#: ../../library/json.rst:470 +#: ../../library/json.rst:471 msgid "" "Decode a JSON document from *s* (a :class:`str` beginning with a JSON " "document) and return a 2-tuple of the Python representation and the index in " "*s* where the document ended." msgstr "" -#: ../../library/json.rst:474 +#: ../../library/json.rst:475 msgid "" "This can be used to decode a JSON document from a string that may have " "extraneous data at the end." msgstr "" -#: ../../library/json.rst:480 +#: ../../library/json.rst:481 msgid "Extensible JSON encoder for Python data structures." msgstr "" -#: ../../library/json.rst:482 +#: ../../library/json.rst:483 msgid "Supports the following objects and types by default:" msgstr "" -#: ../../library/json.rst:489 +#: ../../library/json.rst:490 msgid "dict, frozendict" msgstr "" -#: ../../library/json.rst:491 +#: ../../library/json.rst:492 msgid "list, tuple" msgstr "" -#: ../../library/json.rst:495 +#: ../../library/json.rst:496 msgid "int, float, int- & float-derived Enums" msgstr "" -#: ../../library/json.rst:495 +#: ../../library/json.rst:496 msgid "number" msgstr "" -#: ../../library/json.rst:504 +#: ../../library/json.rst:505 msgid "Added support for int- and float-derived Enum classes." msgstr "" -#: ../../library/json.rst:507 +#: ../../library/json.rst:508 msgid "Added support for :class:`frozendict`." msgstr "" -#: ../../library/json.rst:510 +#: ../../library/json.rst:511 msgid "" "To extend this to recognize other objects, subclass and implement a :meth:" "`~JSONEncoder.default` method with another method that returns a " @@ -699,7 +701,7 @@ msgid "" "superclass implementation (to raise :exc:`TypeError`)." msgstr "" -#: ../../library/json.rst:515 +#: ../../library/json.rst:516 msgid "" "If *skipkeys* is false (the default), a :exc:`TypeError` will be raised when " "trying to encode keys that are not :class:`str`, :class:`int`, :class:" @@ -707,7 +709,7 @@ msgid "" "simply skipped." msgstr "" -#: ../../library/json.rst:519 +#: ../../library/json.rst:520 msgid "" "If *ensure_ascii* is true (the default), the output is guaranteed to have " "all incoming non-ASCII and non-printable characters escaped. If " @@ -716,7 +718,7 @@ msgid "" "control characters U+0000 through U+001F." msgstr "" -#: ../../library/json.rst:525 +#: ../../library/json.rst:526 msgid "" "If *check_circular* is true (the default), then lists, dicts, and custom " "encoded objects will be checked for circular references during encoding to " @@ -724,7 +726,7 @@ msgid "" "Otherwise, no such check takes place." msgstr "" -#: ../../library/json.rst:530 +#: ../../library/json.rst:531 msgid "" "If *allow_nan* is true (the default), then ``NaN``, ``Infinity``, and ``-" "Infinity`` will be encoded as such. This behavior is not JSON specification " @@ -732,14 +734,14 @@ msgid "" "decoders. Otherwise, it will be a :exc:`ValueError` to encode such floats." msgstr "" -#: ../../library/json.rst:536 +#: ../../library/json.rst:537 msgid "" "If *sort_keys* is true (default: ``False``), then the output of dictionaries " "will be sorted by key; this is useful for regression tests to ensure that " "JSON serializations can be compared on a day-to-day basis." msgstr "" -#: ../../library/json.rst:540 +#: ../../library/json.rst:541 msgid "" "If *indent* is a non-negative integer or string, then JSON array elements " "and object members will be pretty-printed with that indent level. An indent " @@ -749,7 +751,7 @@ msgid "" "``\"\\t\"``), that string is used to indent each level." msgstr "" -#: ../../library/json.rst:550 +#: ../../library/json.rst:551 msgid "" "If specified, *separators* should be an ``(item_separator, key_separator)`` " "tuple. The default is ``(', ', ': ')`` if *indent* is ``None`` and ``(',', " @@ -757,7 +759,7 @@ msgid "" "specify ``(',', ':')`` to eliminate whitespace." msgstr "" -#: ../../library/json.rst:558 +#: ../../library/json.rst:559 msgid "" "If specified, *default* should be a function that gets called for objects " "that can't otherwise be serialized. It should return a JSON encodable " @@ -765,20 +767,20 @@ msgid "" "`TypeError` is raised." msgstr "" -#: ../../library/json.rst:569 +#: ../../library/json.rst:570 msgid "" "Implement this method in a subclass such that it returns a serializable " "object for *o*, or calls the base implementation (to raise a :exc:" "`TypeError`)." msgstr "" -#: ../../library/json.rst:573 +#: ../../library/json.rst:574 msgid "" "For example, to support arbitrary iterators, you could implement :meth:" "`~JSONEncoder.default` like this::" msgstr "" -#: ../../library/json.rst:576 +#: ../../library/json.rst:577 msgid "" "def default(self, o):\n" " try:\n" @@ -791,63 +793,63 @@ msgid "" " return super().default(o)" msgstr "" -#: ../../library/json.rst:589 +#: ../../library/json.rst:590 msgid "" "Return a JSON string representation of a Python data structure, *o*. For " "example::" msgstr "" -#: ../../library/json.rst:592 +#: ../../library/json.rst:593 msgid "" ">>> json.JSONEncoder().encode({\"foo\": [\"bar\", \"baz\"]})\n" "'{\"foo\": [\"bar\", \"baz\"]}'" msgstr "" -#: ../../library/json.rst:598 +#: ../../library/json.rst:599 msgid "" "Encode the given object, *o*, and yield each string representation as " "available. For example::" msgstr "" -#: ../../library/json.rst:601 +#: ../../library/json.rst:602 msgid "" "for chunk in json.JSONEncoder().iterencode(bigobject):\n" " mysocket.write(chunk)" msgstr "" -#: ../../library/json.rst:606 +#: ../../library/json.rst:607 msgid "Exceptions" msgstr "Ausnahmen" -#: ../../library/json.rst:610 +#: ../../library/json.rst:611 msgid "Subclass of :exc:`ValueError` with the following additional attributes:" msgstr "" -#: ../../library/json.rst:614 +#: ../../library/json.rst:615 msgid "The unformatted error message." msgstr "" -#: ../../library/json.rst:618 +#: ../../library/json.rst:619 msgid "The JSON document being parsed." msgstr "" -#: ../../library/json.rst:622 +#: ../../library/json.rst:623 msgid "The start index of *doc* where parsing failed." msgstr "" -#: ../../library/json.rst:626 +#: ../../library/json.rst:627 msgid "The line corresponding to *pos*." msgstr "" -#: ../../library/json.rst:630 +#: ../../library/json.rst:631 msgid "The column corresponding to *pos*." msgstr "" -#: ../../library/json.rst:636 +#: ../../library/json.rst:637 msgid "Standard Compliance and Interoperability" msgstr "" -#: ../../library/json.rst:638 +#: ../../library/json.rst:639 msgid "" "The JSON format is specified by :rfc:`7159` and by `ECMA-404 `_. This " @@ -856,48 +858,48 @@ msgid "" "parameters other than those explicitly mentioned, are not considered." msgstr "" -#: ../../library/json.rst:644 +#: ../../library/json.rst:645 msgid "" "This module does not comply with the RFC in a strict fashion, implementing " "some extensions that are valid JavaScript but not valid JSON. In particular:" msgstr "" -#: ../../library/json.rst:647 +#: ../../library/json.rst:648 msgid "Infinite and NaN number values are accepted and output;" msgstr "" -#: ../../library/json.rst:648 +#: ../../library/json.rst:649 msgid "" "Repeated names within an object are accepted, and only the value of the last " "name-value pair is used." msgstr "" -#: ../../library/json.rst:651 +#: ../../library/json.rst:652 msgid "" "Since the RFC permits RFC-compliant parsers to accept input texts that are " "not RFC-compliant, this module's deserializer is technically RFC-compliant " "under default settings." msgstr "" -#: ../../library/json.rst:656 +#: ../../library/json.rst:657 msgid "Character Encodings" msgstr "" -#: ../../library/json.rst:658 +#: ../../library/json.rst:659 msgid "" "The RFC requires that JSON be represented using either UTF-8, UTF-16, or " "UTF-32, with UTF-8 being the recommended default for maximum " "interoperability." msgstr "" -#: ../../library/json.rst:661 +#: ../../library/json.rst:662 msgid "" "As permitted, though not required, by the RFC, this module's serializer sets " "*ensure_ascii=True* by default, thus escaping the output so that the " "resulting strings only contain printable ASCII characters." msgstr "" -#: ../../library/json.rst:665 +#: ../../library/json.rst:666 msgid "" "Other than the *ensure_ascii* parameter, this module is defined strictly in " "terms of conversion between Python objects and :class:`Unicode strings " @@ -905,7 +907,7 @@ msgid "" "encodings." msgstr "" -#: ../../library/json.rst:670 +#: ../../library/json.rst:671 msgid "" "The RFC prohibits adding a byte order mark (BOM) to the start of a JSON " "text, and this module's serializer does not add a BOM to its output. The RFC " @@ -914,7 +916,7 @@ msgid "" "an initial BOM is present." msgstr "" -#: ../../library/json.rst:676 +#: ../../library/json.rst:677 msgid "" "The RFC does not explicitly forbid JSON strings which contain byte sequences " "that don't correspond to valid Unicode characters (e.g. unpaired UTF-16 " @@ -923,18 +925,18 @@ msgid "" "class:`str`) code points for such sequences." msgstr "" -#: ../../library/json.rst:684 +#: ../../library/json.rst:685 msgid "Infinite and NaN Number Values" msgstr "" -#: ../../library/json.rst:686 +#: ../../library/json.rst:687 msgid "" "The RFC does not permit the representation of infinite or NaN number values. " "Despite that, by default, this module accepts and outputs ``Infinity``, ``-" "Infinity``, and ``NaN`` as if they were valid JSON number literal values::" msgstr "" -#: ../../library/json.rst:690 +#: ../../library/json.rst:691 msgid "" ">>> # Neither of these calls raises an exception, but the results are not " "valid JSON\n" @@ -949,18 +951,18 @@ msgid "" "nan" msgstr "" -#: ../../library/json.rst:701 +#: ../../library/json.rst:702 msgid "" "In the serializer, the *allow_nan* parameter can be used to alter this " "behavior. In the deserializer, the *parse_constant* parameter can be used " "to alter this behavior." msgstr "" -#: ../../library/json.rst:707 +#: ../../library/json.rst:708 msgid "Repeated Names Within an Object" msgstr "" -#: ../../library/json.rst:709 +#: ../../library/json.rst:710 msgid "" "The RFC specifies that the names within a JSON object should be unique, but " "does not mandate how repeated names in JSON objects should be handled. By " @@ -968,22 +970,22 @@ msgid "" "but the last name-value pair for a given name::" msgstr "" -#: ../../library/json.rst:714 +#: ../../library/json.rst:715 msgid "" ">>> weird_json = '{\"x\": 1, \"x\": 2, \"x\": 3}'\n" ">>> json.loads(weird_json)\n" "{'x': 3}" msgstr "" -#: ../../library/json.rst:718 +#: ../../library/json.rst:719 msgid "The *object_pairs_hook* parameter can be used to alter this behavior." msgstr "" -#: ../../library/json.rst:722 +#: ../../library/json.rst:723 msgid "Top-level Non-Object, Non-Array Values" msgstr "" -#: ../../library/json.rst:724 +#: ../../library/json.rst:725 msgid "" "The old version of JSON specified by the obsolete :rfc:`4627` required that " "the top-level value of a JSON text must be either a JSON object or array " @@ -993,43 +995,43 @@ msgid "" "its serializer or its deserializer." msgstr "" -#: ../../library/json.rst:731 +#: ../../library/json.rst:732 msgid "" "Regardless, for maximum interoperability, you may wish to voluntarily adhere " "to the restriction yourself." msgstr "" -#: ../../library/json.rst:736 +#: ../../library/json.rst:737 msgid "Implementation Limitations" msgstr "" -#: ../../library/json.rst:738 +#: ../../library/json.rst:739 msgid "Some JSON deserializer implementations may set limits on:" msgstr "" -#: ../../library/json.rst:740 +#: ../../library/json.rst:741 msgid "the size of accepted JSON texts" msgstr "" -#: ../../library/json.rst:741 +#: ../../library/json.rst:742 msgid "the maximum level of nesting of JSON objects and arrays" msgstr "" -#: ../../library/json.rst:742 +#: ../../library/json.rst:743 msgid "the range and precision of JSON numbers" msgstr "" -#: ../../library/json.rst:743 +#: ../../library/json.rst:744 msgid "the content and maximum length of JSON strings" msgstr "" -#: ../../library/json.rst:745 +#: ../../library/json.rst:746 msgid "" "This module does not impose any such limits beyond those of the relevant " "Python datatypes themselves or the Python interpreter itself." msgstr "" -#: ../../library/json.rst:748 +#: ../../library/json.rst:749 msgid "" "When serializing to JSON, beware any such limitations in applications that " "may consume your JSON. In particular, it is common for JSON numbers to be " @@ -1040,28 +1042,28 @@ msgid "" "as :class:`decimal.Decimal`." msgstr "" -#: ../../library/json.rst:761 +#: ../../library/json.rst:762 msgid "Command-line interface" msgstr "" -#: ../../library/json.rst:766 +#: ../../library/json.rst:767 msgid "**Source code:** :source:`Lib/json/tool.py`" msgstr "" -#: ../../library/json.rst:770 +#: ../../library/json.rst:771 msgid "" "The :mod:`!json` module can be invoked as a script via ``python -m json`` to " "validate and pretty-print JSON objects. The :mod:`!json.tool` submodule " "implements this interface." msgstr "" -#: ../../library/json.rst:774 +#: ../../library/json.rst:775 msgid "" "If the optional ``infile`` and ``outfile`` arguments are not specified, :" "data:`sys.stdin` and :data:`sys.stdout` will be used respectively:" msgstr "" -#: ../../library/json.rst:777 +#: ../../library/json.rst:778 msgid "" "$ echo '{\"json\": \"obj\"}' | python -m json\n" "{\n" @@ -1071,28 +1073,28 @@ msgid "" "Expecting property name enclosed in double quotes: line 1 column 2 (char 1)" msgstr "" -#: ../../library/json.rst:786 +#: ../../library/json.rst:787 msgid "" "The output is now in the same order as the input. Use the :option:`--sort-" "keys` option to sort the output of dictionaries alphabetically by key." msgstr "" -#: ../../library/json.rst:791 +#: ../../library/json.rst:792 msgid "" "The :mod:`!json` module may now be directly executed as ``python -m json``. " "For backwards compatibility, invoking the CLI as ``python -m json.tool`` " "remains supported." msgstr "" -#: ../../library/json.rst:798 +#: ../../library/json.rst:799 msgid "Command-line options" msgstr "" -#: ../../library/json.rst:802 +#: ../../library/json.rst:803 msgid "The JSON file to be validated or pretty-printed:" msgstr "" -#: ../../library/json.rst:804 +#: ../../library/json.rst:805 msgid "" "$ python -m json mp_films.json\n" "[\n" @@ -1107,43 +1109,43 @@ msgid "" "]" msgstr "" -#: ../../library/json.rst:818 +#: ../../library/json.rst:819 msgid "If *infile* is not specified, read from :data:`sys.stdin`." msgstr "" -#: ../../library/json.rst:822 +#: ../../library/json.rst:823 msgid "" "Write the output of the *infile* to the given *outfile*. Otherwise, write it " "to :data:`sys.stdout`." msgstr "" -#: ../../library/json.rst:827 +#: ../../library/json.rst:828 msgid "Sort the output of dictionaries alphabetically by key." msgstr "" -#: ../../library/json.rst:833 +#: ../../library/json.rst:834 msgid "" "Disable escaping of non-ascii characters, see :func:`json.dumps` for more " "information." msgstr "" -#: ../../library/json.rst:839 +#: ../../library/json.rst:840 msgid "Parse every input line as separate JSON object." msgstr "" -#: ../../library/json.rst:845 +#: ../../library/json.rst:846 msgid "Mutually exclusive options for whitespace control." msgstr "" -#: ../../library/json.rst:851 +#: ../../library/json.rst:852 msgid "Show the help message." msgstr "" -#: ../../library/json.rst:855 +#: ../../library/json.rst:856 msgid "Footnotes" msgstr "Fußnoten" -#: ../../library/json.rst:856 +#: ../../library/json.rst:857 msgid "" "As noted in `the errata for RFC 7159 `_, JSON permits literal U+2028 (LINE SEPARATOR) " diff --git a/library/math.integer.po b/library/math.integer.po index ba026290..f85e0c6c 100644 --- a/library/math.integer.po +++ b/library/math.integer.po @@ -7,14 +7,14 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-09-22 21:21+0200\n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" "PO-Revision-Date: 2026-09-22 21:21+0200\n" "Last-Translator: Automatically generated\n" "Language-Team: none\n" +"Language: de\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: de\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../../library/math.integer.rst:2 diff --git a/library/profiling.po b/library/profiling.po index 37baec90..00c74f76 100644 --- a/library/profiling.po +++ b/library/profiling.po @@ -7,14 +7,14 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-09-22 21:21+0200\n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" "PO-Revision-Date: 2026-09-22 21:21+0200\n" "Last-Translator: Automatically generated\n" "Language-Team: none\n" +"Language: de\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: de\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../../library/profiling.rst:7 diff --git a/library/profiling.sampling.po b/library/profiling.sampling.po index de6c7216..19222cce 100644 --- a/library/profiling.sampling.po +++ b/library/profiling.sampling.po @@ -7,14 +7,14 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-09-22 21:21+0200\n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" "PO-Revision-Date: 2026-09-22 21:21+0200\n" "Last-Translator: Automatically generated\n" "Language-Team: none\n" +"Language: de\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: de\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../../library/profiling.sampling.rst:7 diff --git a/library/profiling.tracing.po b/library/profiling.tracing.po index 2f166ee9..4c1be144 100644 --- a/library/profiling.tracing.po +++ b/library/profiling.tracing.po @@ -7,14 +7,14 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-09-22 21:21+0200\n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" "PO-Revision-Date: 2026-09-22 21:21+0200\n" "Last-Translator: Automatically generated\n" "Language-Team: none\n" +"Language: de\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: de\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../../library/profiling.tracing.rst:5 diff --git a/library/pstats.po b/library/pstats.po index 21d96b6a..4c7458ea 100644 --- a/library/pstats.po +++ b/library/pstats.po @@ -7,14 +7,14 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-09-22 21:21+0200\n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" "PO-Revision-Date: 2026-09-22 21:21+0200\n" "Last-Translator: Automatically generated\n" "Language-Team: none\n" +"Language: de\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: de\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../../library/pstats.rst:5 diff --git a/library/socket.po b/library/socket.po index 2c83cde0..ef02117b 100644 --- a/library/socket.po +++ b/library/socket.po @@ -11,7 +11,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-22 12:07+0200\n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" "PO-Revision-Date: 2025-09-16 00:01+0000\n" "Last-Translator: python-doc bot, 2025\n" "Language-Team: German (https://app.transifex.com/python-doc/teams/5390/de/)\n" @@ -1682,7 +1682,7 @@ msgid "" "arguments. This only affects how Python represents e.g. the return value " "of :meth:`socket.getpeername` but not the actual OS resource. Unlike :func:" "`socket.fromfd`, *fileno* will return the same socket and not a duplicate. " -"This may help close a detached socket using :meth:`socket.close`." +"This may help close a detached socket using :meth:`~socket.socket.close`." msgstr "" #: ../../library/socket.rst:1501 @@ -1740,7 +1740,7 @@ msgstr "" #: ../../library/socket.rst:1542 msgid "" "Support for the :term:`context manager` protocol was added. Exiting the " -"context manager is equivalent to calling :meth:`~socket.close`." +"context manager is equivalent to calling :meth:`~socket.socket.close`." msgstr "" #: ../../library/socket.rst:1549 @@ -1974,7 +1974,7 @@ msgstr "" msgid "" "Closing the file object returned by :meth:`makefile` won't close the " "original socket unless all other file objects have been closed and :meth:" -"`socket.close` has been called on the socket object." +"`~socket.socket.close` has been called on the socket object." msgstr "" #: ../../library/socket.rst:1773 diff --git a/library/turtle.po b/library/turtle.po index 1d151065..a3edbdc0 100644 --- a/library/turtle.po +++ b/library/turtle.po @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-09-14 17:22+0000\n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: python-doc bot, 2025\n" "Language-Team: German (https://app.transifex.com/python-doc/teams/5390/de/)\n" @@ -724,7 +724,7 @@ msgstr ":func:`setheading` | :func:`seth`" msgid ":func:`home`" msgstr ":func:`home`" -#: ../../library/turtle.rst:351 ../../library/turtle.rst:2880 +#: ../../library/turtle.rst:351 ../../library/turtle.rst:2899 msgid ":func:`circle`" msgstr ":func:`circle`" @@ -732,7 +732,7 @@ msgstr ":func:`circle`" msgid ":func:`dot`" msgstr ":func:`dot`" -#: ../../library/turtle.rst:353 ../../library/turtle.rst:2858 +#: ../../library/turtle.rst:353 ../../library/turtle.rst:2877 msgid ":func:`stamp`" msgstr ":func:`stamp`" @@ -928,7 +928,7 @@ msgstr ":func:`get_shapepoly`" msgid "Using events" msgstr "Ereignisse verwenden" -#: ../../library/turtle.rst:412 ../../library/turtle.rst:2852 +#: ../../library/turtle.rst:412 ../../library/turtle.rst:2871 msgid ":func:`onclick`" msgstr ":func:`onclick`" @@ -936,7 +936,7 @@ msgstr ":func:`onclick`" msgid ":func:`onrelease`" msgstr ":func:`onrelease`" -#: ../../library/turtle.rst:414 ../../library/turtle.rst:2835 +#: ../../library/turtle.rst:414 ../../library/turtle.rst:2854 msgid ":func:`ondrag`" msgstr ":func:`ondrag`" @@ -960,7 +960,7 @@ msgstr ":func:`end_poly`" msgid ":func:`get_poly`" msgstr ":func:`get_poly`" -#: ../../library/turtle.rst:421 ../../library/turtle.rst:2874 +#: ../../library/turtle.rst:421 ../../library/turtle.rst:2893 msgid ":func:`clone`" msgstr ":func:`clone`" @@ -4358,11 +4358,34 @@ msgstr "``abs(a)`` Absolutwert von a" msgid "``a.rotate(angle)`` rotation" msgstr "``a.rotate(angle)`` Rotation" +#: ../../library/turtle.rst:2575 +#, fuzzy +msgid "Exceptions" +msgstr "Erklärung" + #: ../../library/turtle.rst:2577 +msgid "The :mod:`!turtle` module defines the following exception:" +msgstr "" + +#: ../../library/turtle.rst:2581 +msgid "" +"Raised for invalid arguments or operations. For example, a malformed color " +"string:" +msgstr "" + +#: ../../library/turtle.rst:2584 +msgid "" +">>> turtle.color(\"blau\")\n" +"Traceback (most recent call last):\n" +" ...\n" +"turtle.TurtleGraphicsError: bad color string: blau" +msgstr "" + +#: ../../library/turtle.rst:2596 msgid "Explanation" msgstr "Erklärung" -#: ../../library/turtle.rst:2579 +#: ../../library/turtle.rst:2598 msgid "" "A turtle object draws on a screen object, and there a number of key classes " "in the turtle object-oriented interface that can be used to create them and " @@ -4372,7 +4395,7 @@ msgstr "" "zentraler Klassen in der objektorientierten Turtle-Schnittstelle, mit denen " "man diese erstellen und miteinander in Beziehung setzen kann." -#: ../../library/turtle.rst:2583 +#: ../../library/turtle.rst:2602 msgid "" "A :class:`Turtle` instance will automatically create a :class:`Screen` " "instance if one is not already present." @@ -4380,7 +4403,7 @@ msgstr "" "Eine :class:`Turtle`-Instanz erstellt automatisch eine :class:`Screen`-" "Instanz, falls noch keine vorhanden ist." -#: ../../library/turtle.rst:2586 +#: ../../library/turtle.rst:2605 msgid "" "``Turtle`` is a subclass of :class:`RawTurtle`, which *doesn't* " "automatically create a drawing surface - a *canvas* will need to be provided " @@ -4392,7 +4415,7 @@ msgstr "" "oder erstellt werden. Die *canvas* kann ein :class:`!tkinter.Canvas`, :class:" "`ScrolledCanvas` oder :class:`TurtleScreen` sein." -#: ../../library/turtle.rst:2592 +#: ../../library/turtle.rst:2611 msgid "" ":class:`TurtleScreen` is the basic drawing surface for a turtle. :class:" "`Screen` is a subclass of ``TurtleScreen``, and includes :ref:`some " @@ -4407,7 +4430,7 @@ msgstr "" "Konstruktor von ``TurtleScreen`` benötigt ein :class:`!tkinter.Canvas` oder " "ein :class:`ScrolledCanvas` als Argument." -#: ../../library/turtle.rst:2599 +#: ../../library/turtle.rst:2618 msgid "" "The functional interface for turtle graphics uses the various methods of " "``Turtle`` and ``TurtleScreen``/``Screen``. Behind the scenes, a screen " @@ -4422,7 +4445,7 @@ msgstr "" "Turtle-Objekt erstellt, sobald eine der von einer Turtle-Methode " "abgeleiteten Funktionen aufgerufen wird." -#: ../../library/turtle.rst:2605 +#: ../../library/turtle.rst:2624 msgid "" "To use multiple turtles on a screen, the object-oriented interface must be " "used." @@ -4430,15 +4453,15 @@ msgstr "" "Um mehrere Turtles auf einem Screen zu verwenden, muss die objektorientierte " "Schnittstelle genutzt werden." -#: ../../library/turtle.rst:2610 +#: ../../library/turtle.rst:2629 msgid "Help and configuration" msgstr "Hilfe und Konfiguration" -#: ../../library/turtle.rst:2613 +#: ../../library/turtle.rst:2632 msgid "How to use help" msgstr "Wie man die Hilfe verwendet" -#: ../../library/turtle.rst:2615 +#: ../../library/turtle.rst:2634 msgid "" "The public methods of the Screen and Turtle classes are documented " "extensively via docstrings. So these can be used as online-help via the " @@ -4448,7 +4471,7 @@ msgstr "" "über Docstrings dokumentiert. Diese können daher über die Python-" "Hilfefunktionen als Online-Hilfe verwendet werden:" -#: ../../library/turtle.rst:2619 +#: ../../library/turtle.rst:2638 msgid "" "When using IDLE, tooltips show the signatures and first lines of the " "docstrings of typed in function-/method calls." @@ -4456,13 +4479,13 @@ msgstr "" "Bei Verwendung von IDLE zeigen Tooltips die Signaturen und die ersten Zeilen " "der Docstrings eingetippter Funktions-/Methodenaufrufe." -#: ../../library/turtle.rst:2622 +#: ../../library/turtle.rst:2641 msgid "Calling :func:`help` on methods or functions displays the docstrings::" msgstr "" "Der Aufruf von :func:`help` für Methoden oder Funktionen zeigt die " "Docstrings an::" -#: ../../library/turtle.rst:2624 +#: ../../library/turtle.rst:2643 msgid "" ">>> help(Screen.bgcolor)\n" "Help on method bgcolor in module turtle:\n" @@ -4522,7 +4545,7 @@ msgstr "" "\n" " >>> turtle.penup()" -#: ../../library/turtle.rst:2653 +#: ../../library/turtle.rst:2672 msgid "" "The docstrings of the functions which are derived from methods have a " "modified form::" @@ -4530,7 +4553,7 @@ msgstr "" "Die Docstrings der Funktionen, die von Methoden abgeleitet sind, haben eine " "abgewandelte Form::" -#: ../../library/turtle.rst:2656 +#: ../../library/turtle.rst:2675 msgid "" ">>> help(bgcolor)\n" "Help on function bgcolor in module turtle:\n" @@ -4594,7 +4617,7 @@ msgstr "" " Example:\n" " >>> penup()" -#: ../../library/turtle.rst:2687 +#: ../../library/turtle.rst:2706 msgid "" "These modified docstrings are created automatically together with the " "function definitions that are derived from the methods at import time." @@ -4603,11 +4626,11 @@ msgstr "" "Funktionsdefinitionen erstellt, die zur Importzeit von den Methoden " "abgeleitet werden." -#: ../../library/turtle.rst:2692 +#: ../../library/turtle.rst:2711 msgid "Translation of docstrings into different languages" msgstr "Übersetzung von Docstrings in verschiedene Sprachen" -#: ../../library/turtle.rst:2694 +#: ../../library/turtle.rst:2713 msgid "" "There is a utility to create a dictionary the keys of which are the method " "names and the values of which are the docstrings of the public methods of " @@ -4617,11 +4640,11 @@ msgstr "" "die Methodennamen und dessen Werte die Docstrings der öffentlichen Methoden " "der Klassen Screen und Turtle sind." -#: ../../library/turtle.rst:2700 +#: ../../library/turtle.rst:2719 msgid "a string, used as filename" msgstr "eine Zeichenkette, verwendet als Dateiname" -#: ../../library/turtle.rst:2702 +#: ../../library/turtle.rst:2721 msgid "" "Create and write docstring-dictionary to a Python script with the given " "filename. This function has to be called explicitly (it is not used by the " @@ -4636,7 +4659,7 @@ msgstr "" "ist als Vorlage für die Übersetzung der Docstrings in verschiedene Sprachen " "gedacht." -#: ../../library/turtle.rst:2708 +#: ../../library/turtle.rst:2727 msgid "" "If you (or your students) want to use :mod:`!turtle` with online help in " "your native language, you have to translate the docstrings and save the " @@ -4646,7 +4669,7 @@ msgstr "" "Muttersprache verwenden möchtest, musst du die Docstrings übersetzen und die " "entstehende Datei z. B. als :file:`turtle_docstringdict_german.py` speichern." -#: ../../library/turtle.rst:2712 +#: ../../library/turtle.rst:2731 msgid "" "If you have an appropriate entry in your :file:`turtle.cfg` file this " "dictionary will be read in at import time and will replace the original " @@ -4656,7 +4679,7 @@ msgstr "" "hast, wird dieses Dictionary zur Importzeit eingelesen und ersetzt die " "ursprünglichen englischen Docstrings." -#: ../../library/turtle.rst:2715 +#: ../../library/turtle.rst:2734 msgid "" "At the time of this writing there are docstring dictionaries in German and " "in Italian. (Requests please to glingl@aon.at.)" @@ -4664,11 +4687,11 @@ msgstr "" "Zum Zeitpunkt der Erstellung dieses Textes gibt es Docstring-Dictionaries " "auf Deutsch und auf Italienisch. (Anfragen bitte an glingl@aon.at.)" -#: ../../library/turtle.rst:2721 +#: ../../library/turtle.rst:2740 msgid "How to configure Screen and Turtles" msgstr "Wie man Screen und Turtles konfiguriert" -#: ../../library/turtle.rst:2723 +#: ../../library/turtle.rst:2742 msgid "" "The built-in default configuration mimics the appearance and behaviour of " "the old turtle module in order to retain best possible compatibility with it." @@ -4677,7 +4700,7 @@ msgstr "" "des alten turtle-Moduls nach, um eine möglichst gute Kompatibilität damit zu " "bewahren." -#: ../../library/turtle.rst:2726 +#: ../../library/turtle.rst:2745 msgid "" "If you want to use a different configuration which better reflects the " "features of this module or which better fits to your needs, e.g. for use in " @@ -4691,13 +4714,13 @@ msgstr "" "``turtle.cfg`` vorbereiten, die zur Importzeit eingelesen wird und die " "Konfiguration entsprechend ihrer Einstellungen ändert." -#: ../../library/turtle.rst:2731 +#: ../../library/turtle.rst:2750 msgid "" "The built in configuration would correspond to the following ``turtle.cfg``:" msgstr "" "Die eingebaute Konfiguration würde der folgenden ``turtle.cfg`` entsprechen:" -#: ../../library/turtle.rst:2733 +#: ../../library/turtle.rst:2752 msgid "" "width = 0.5\n" "height = 0.75\n" @@ -4741,11 +4764,11 @@ msgstr "" "title = Python Turtle Graphics\n" "using_IDLE = False" -#: ../../library/turtle.rst:2756 +#: ../../library/turtle.rst:2775 msgid "Short explanation of selected entries:" msgstr "Kurze Erklärung ausgewählter Einträge:" -#: ../../library/turtle.rst:2758 +#: ../../library/turtle.rst:2777 msgid "" "The first four lines correspond to the arguments of the :func:`Screen.setup " "` method." @@ -4753,7 +4776,7 @@ msgstr "" "Die ersten vier Zeilen entsprechen den Argumenten der Methode :func:`Screen." "setup `." -#: ../../library/turtle.rst:2760 +#: ../../library/turtle.rst:2779 msgid "" "Line 5 and 6 correspond to the arguments of the method :func:`Screen." "screensize `." @@ -4761,7 +4784,7 @@ msgstr "" "Zeile 5 und 6 entsprechen den Argumenten der Methode :func:`Screen." "screensize `." -#: ../../library/turtle.rst:2762 +#: ../../library/turtle.rst:2781 msgid "" "*shape* can be any of the built-in shapes, e.g: arrow, turtle, etc. For " "more info try ``help(shape)``." @@ -4769,7 +4792,7 @@ msgstr "" "*shape* kann eine der eingebauten Formen sein, z. B.: arrow, turtle usw. Für " "weitere Informationen versuche ``help(shape)``." -#: ../../library/turtle.rst:2764 +#: ../../library/turtle.rst:2783 msgid "" "If you want to use no fill color (i.e. make the turtle transparent), you " "have to write ``fillcolor = \"\"`` (but all nonempty strings must not have " @@ -4780,7 +4803,7 @@ msgstr "" "nichtleeren Zeichenketten dürfen in der cfg-Datei keine Anführungszeichen " "haben)." -#: ../../library/turtle.rst:2767 +#: ../../library/turtle.rst:2786 msgid "" "If you want to reflect the turtle its state, you have to use ``resizemode = " "auto``." @@ -4788,7 +4811,7 @@ msgstr "" "Wenn die Turtle ihren Zustand widerspiegeln soll, musst du ``resizemode = " "auto`` verwenden." -#: ../../library/turtle.rst:2769 +#: ../../library/turtle.rst:2788 msgid "" "If you set e.g. ``language = italian`` the docstringdict :file:" "`turtle_docstringdict_italian.py` will be loaded at import time (if present " @@ -4798,7 +4821,7 @@ msgstr "" "`turtle_docstringdict_italian.py` zur Importzeit geladen (sofern es im " "Importpfad vorhanden ist, z. B. im selben Verzeichnis wie :mod:`!turtle`)." -#: ../../library/turtle.rst:2772 +#: ../../library/turtle.rst:2791 msgid "" "The entries *exampleturtle* and *examplescreen* define the names of these " "objects as they occur in the docstrings. The transformation of method-" @@ -4810,7 +4833,7 @@ msgstr "" "Methoden-Docstrings in Funktions-Docstrings werden diese Namen aus den " "Docstrings entfernt." -#: ../../library/turtle.rst:2776 +#: ../../library/turtle.rst:2795 msgid "" "*using_IDLE*: Set this to ``True`` if you regularly work with IDLE and its " "``-n`` switch (\"no subprocess\"). This will prevent :func:`exitonclick` to " @@ -4820,7 +4843,7 @@ msgstr "" "dessen Schalter ``-n`` (\"no subprocess\") arbeitest. Dies verhindert, dass :" "func:`exitonclick` die mainloop aufruft." -#: ../../library/turtle.rst:2780 +#: ../../library/turtle.rst:2799 msgid "" "There can be a :file:`turtle.cfg` file in the directory where :mod:`!turtle` " "is stored and an additional one in the current working directory. The " @@ -4830,7 +4853,7 @@ msgstr "" "turtle` gespeichert ist, sowie eine zusätzliche im aktuellen " "Arbeitsverzeichnis. Letztere überschreibt die Einstellungen der ersten." -#: ../../library/turtle.rst:2784 +#: ../../library/turtle.rst:2803 msgid "" "The :file:`Lib/turtledemo` directory contains a :file:`turtle.cfg` file. " "You can study it as an example and see its effects when running the demos " @@ -4840,11 +4863,11 @@ msgstr "" "Datei. Du kannst sie als Beispiel studieren und ihre Auswirkungen beim " "Ausführen der Demos sehen (vorzugsweise nicht innerhalb des Demo-Viewers)." -#: ../../library/turtle.rst:2790 +#: ../../library/turtle.rst:2809 msgid ":mod:`!turtledemo` --- Demo scripts" msgstr ":mod:`!turtledemo` --- Demo-Skripte" -#: ../../library/turtle.rst:2795 +#: ../../library/turtle.rst:2814 msgid "" "The :mod:`!turtledemo` package includes a set of demo scripts. These " "scripts can be run and viewed using the supplied demo viewer as follows::" @@ -4853,26 +4876,26 @@ msgstr "" "Skripte können mit dem mitgelieferten Demo-Viewer wie folgt ausgeführt und " "betrachtet werden::" -#: ../../library/turtle.rst:2798 +#: ../../library/turtle.rst:2817 msgid "python -m turtledemo" msgstr "python -m turtledemo" -#: ../../library/turtle.rst:2800 +#: ../../library/turtle.rst:2819 msgid "" "Alternatively, you can run the demo scripts individually. For example, ::" msgstr "" "Alternativ kannst du die Demo-Skripte auch einzeln ausführen. Zum " "Beispiel: ::" -#: ../../library/turtle.rst:2802 +#: ../../library/turtle.rst:2821 msgid "python -m turtledemo.bytedesign" msgstr "python -m turtledemo.bytedesign" -#: ../../library/turtle.rst:2804 +#: ../../library/turtle.rst:2823 msgid "The :mod:`!turtledemo` package directory contains:" msgstr "Das Paketverzeichnis :mod:`!turtledemo` enthält:" -#: ../../library/turtle.rst:2806 +#: ../../library/turtle.rst:2825 msgid "" "A demo viewer :file:`__main__.py` which can be used to view the sourcecode " "of the scripts and run them at the same time." @@ -4880,7 +4903,7 @@ msgstr "" "Einen Demo-Viewer :file:`__main__.py`, mit dem der Quellcode der Skripte " "betrachtet und gleichzeitig ausgeführt werden kann." -#: ../../library/turtle.rst:2808 +#: ../../library/turtle.rst:2827 msgid "" "Multiple scripts demonstrating different features of the :mod:`!turtle` " "module. Examples can be accessed via the Examples menu. They can also be " @@ -4890,7 +4913,7 @@ msgstr "" "demonstrieren. Auf die Beispiele kann über das Menü Examples zugegriffen " "werden. Sie können auch eigenständig ausgeführt werden." -#: ../../library/turtle.rst:2811 +#: ../../library/turtle.rst:2830 msgid "" "A :file:`turtle.cfg` file which serves as an example of how to write and use " "such files." @@ -4898,39 +4921,39 @@ msgstr "" "Eine :file:`turtle.cfg`-Datei, die als Beispiel dient, wie solche Dateien " "geschrieben und verwendet werden." -#: ../../library/turtle.rst:2814 +#: ../../library/turtle.rst:2833 msgid "The demo scripts are:" msgstr "Die Demo-Skripte sind:" -#: ../../library/turtle.rst:2821 +#: ../../library/turtle.rst:2840 msgid "Name" msgstr "Name" -#: ../../library/turtle.rst:2821 +#: ../../library/turtle.rst:2840 msgid "Description" msgstr "Beschreibung" -#: ../../library/turtle.rst:2821 +#: ../../library/turtle.rst:2840 msgid "Features" msgstr "Feature" -#: ../../library/turtle.rst:2823 +#: ../../library/turtle.rst:2842 msgid "``bytedesign``" msgstr "``bytedesign``" -#: ../../library/turtle.rst:2823 +#: ../../library/turtle.rst:2842 msgid "complex classical turtle graphics pattern" msgstr "komplexes klassisches Turtle-Grafik-Muster" -#: ../../library/turtle.rst:2823 +#: ../../library/turtle.rst:2842 msgid ":func:`tracer`, :func:`delay`, :func:`update`" msgstr ":func:`tracer`, :func:`delay`, :func:`update`" -#: ../../library/turtle.rst:2826 +#: ../../library/turtle.rst:2845 msgid "``chaos``" msgstr "``chaos``" -#: ../../library/turtle.rst:2826 +#: ../../library/turtle.rst:2845 msgid "" "graphs Verhulst dynamics, shows that computer's computations can generate " "results sometimes against the common sense expectations" @@ -4939,156 +4962,156 @@ msgstr "" "Computerberechnungen manchmal Ergebnisse liefern können, die dem gesunden " "Menschenverstand widersprechen" -#: ../../library/turtle.rst:2826 +#: ../../library/turtle.rst:2845 msgid "world coordinates" msgstr "Welt Koordinaten" -#: ../../library/turtle.rst:2832 +#: ../../library/turtle.rst:2851 msgid "``clock``" msgstr "``clock``" -#: ../../library/turtle.rst:2832 +#: ../../library/turtle.rst:2851 msgid "analog clock showing time of your computer" msgstr "analoge Uhr, die die Zeit deines Computers anzeigt" -#: ../../library/turtle.rst:2832 +#: ../../library/turtle.rst:2851 msgid "turtles as clock's hands, :func:`ontimer`" msgstr "Turtles als Uhrzeiger, :func:`ontimer`" -#: ../../library/turtle.rst:2835 +#: ../../library/turtle.rst:2854 msgid "``colormixer``" msgstr "``colormixer``" -#: ../../library/turtle.rst:2835 +#: ../../library/turtle.rst:2854 msgid "experiment with r, g, b" msgstr "Experiment mit r, g, b" -#: ../../library/turtle.rst:2837 +#: ../../library/turtle.rst:2856 msgid "``forest``" msgstr "``forest``" -#: ../../library/turtle.rst:2837 +#: ../../library/turtle.rst:2856 msgid "3 breadth-first trees" msgstr "3 Breitensuche-Bäume" -#: ../../library/turtle.rst:2837 +#: ../../library/turtle.rst:2856 msgid "randomization" msgstr "Zufallsgenerierung" -#: ../../library/turtle.rst:2839 +#: ../../library/turtle.rst:2858 msgid "``fractalcurves``" msgstr "``fractalcurves``" -#: ../../library/turtle.rst:2839 +#: ../../library/turtle.rst:2858 msgid "Hilbert & Koch curves" msgstr "Hilbert & Koch Kurven" -#: ../../library/turtle.rst:2839 +#: ../../library/turtle.rst:2858 msgid "recursion" msgstr "Rekursion" -#: ../../library/turtle.rst:2841 +#: ../../library/turtle.rst:2860 msgid "``lindenmayer``" msgstr "``lindenmayer``" -#: ../../library/turtle.rst:2841 +#: ../../library/turtle.rst:2860 msgid "ethnomathematics (indian kolams)" msgstr "Ethnomathematik (indische Kolams)" -#: ../../library/turtle.rst:2841 +#: ../../library/turtle.rst:2860 msgid "L-System" msgstr "L-System" -#: ../../library/turtle.rst:2844 +#: ../../library/turtle.rst:2863 msgid "``minimal_hanoi``" msgstr "``minimal_hanoi``" -#: ../../library/turtle.rst:2844 +#: ../../library/turtle.rst:2863 msgid "Towers of Hanoi" msgstr "Türme von Hannoi" -#: ../../library/turtle.rst:2844 +#: ../../library/turtle.rst:2863 msgid "Rectangular Turtles as Hanoi discs (:func:`shape`, :func:`shapesize`)" msgstr "" "Rechteckige Turtles als Hanoi-Scheiben (:func:`shape`, :func:`shapesize`)" -#: ../../library/turtle.rst:2848 +#: ../../library/turtle.rst:2867 msgid "``nim``" msgstr "``nim``" -#: ../../library/turtle.rst:2848 +#: ../../library/turtle.rst:2867 msgid "" "play the classical nim game with three heaps of sticks against the computer." msgstr "" "spiele das klassische Nim-Spiel mit drei Stapeln aus Stäbchen gegen den " "Computer." -#: ../../library/turtle.rst:2848 +#: ../../library/turtle.rst:2867 msgid "turtles as nimsticks, event driven (mouse, keyboard)" msgstr "Turtles als Nim-Stäbchen, ereignisgesteuert (Maus, Tastatur)" -#: ../../library/turtle.rst:2852 +#: ../../library/turtle.rst:2871 msgid "``paint``" msgstr "``paint``" -#: ../../library/turtle.rst:2852 +#: ../../library/turtle.rst:2871 msgid "super minimalistic drawing program" msgstr "super minimalistisches Zeichenprogramm" -#: ../../library/turtle.rst:2855 +#: ../../library/turtle.rst:2874 msgid "``peace``" msgstr "``peace``" -#: ../../library/turtle.rst:2855 +#: ../../library/turtle.rst:2874 msgid "elementary" msgstr "Elementar" -#: ../../library/turtle.rst:2855 +#: ../../library/turtle.rst:2874 msgid "turtle: appearance and animation" msgstr "Turtle: Erscheinungsbild und Animation" -#: ../../library/turtle.rst:2858 +#: ../../library/turtle.rst:2877 msgid "``penrose``" msgstr "``penrose``" -#: ../../library/turtle.rst:2858 +#: ../../library/turtle.rst:2877 msgid "aperiodic tiling with kites and darts" msgstr "aperiodische Kachelung mit Drachen und Pfeilen" -#: ../../library/turtle.rst:2861 +#: ../../library/turtle.rst:2880 msgid "``planet_and_moon``" msgstr "``planet_and_moon``" -#: ../../library/turtle.rst:2861 +#: ../../library/turtle.rst:2880 msgid "simulation of gravitational system" msgstr "Simulation eines Gravitationssystems" -#: ../../library/turtle.rst:2861 +#: ../../library/turtle.rst:2880 msgid "compound shapes, :class:`Vec2D`" msgstr "zusammengesetzte Formen, :class:`Vec2D`" -#: ../../library/turtle.rst:2864 +#: ../../library/turtle.rst:2883 msgid "``rosette``" msgstr "``rosette``" -#: ../../library/turtle.rst:2864 +#: ../../library/turtle.rst:2883 msgid "a pattern from the wikipedia article on turtle graphics" msgstr "ein Muster aus dem Wikipedia-Artikel über Turtle-Grafik" -#: ../../library/turtle.rst:2864 +#: ../../library/turtle.rst:2883 msgid ":func:`clone`, :func:`undo`" msgstr ":func:`clone`, :func:`undo`" -#: ../../library/turtle.rst:2867 +#: ../../library/turtle.rst:2886 msgid "``round_dance``" msgstr "``round_dance``" -#: ../../library/turtle.rst:2867 +#: ../../library/turtle.rst:2886 msgid "dancing turtles rotating pairwise in opposite direction" msgstr "" "tanzende Turtles, die sich paarweise in entgegengesetzter Richtung drehen" -#: ../../library/turtle.rst:2867 +#: ../../library/turtle.rst:2886 msgid "" "compound shapes, :func:`clone` :func:`shapesize`, :func:`tilt`, :func:" "`get_shapepoly`, :func:`update`" @@ -5096,139 +5119,132 @@ msgstr "" "zusammengesetzte Formen, :func:`clone` :func:`shapesize`, :func:`tilt`, :" "func:`get_shapepoly`, :func:`update`" -#: ../../library/turtle.rst:2871 +#: ../../library/turtle.rst:2890 msgid "``sorting_animate``" msgstr "``sorting_animate``" -#: ../../library/turtle.rst:2871 +#: ../../library/turtle.rst:2890 msgid "visual demonstration of different sorting methods" msgstr "visuelle Demonstration verschiedener Sortiermethoden" -#: ../../library/turtle.rst:2871 +#: ../../library/turtle.rst:2890 msgid "simple alignment, randomization" msgstr "einfache Ausrichtung, Zufallsgenerierung" -#: ../../library/turtle.rst:2874 +#: ../../library/turtle.rst:2893 msgid "``tree``" msgstr "``tree``" -#: ../../library/turtle.rst:2874 +#: ../../library/turtle.rst:2893 msgid "a (graphical) breadth first tree (using generators)" msgstr "ein (grafischer) Breitensuche-Baum (unter Verwendung von Generatoren)" -#: ../../library/turtle.rst:2877 +#: ../../library/turtle.rst:2896 msgid "``two_canvases``" msgstr "``two_canvases``" -#: ../../library/turtle.rst:2877 +#: ../../library/turtle.rst:2896 msgid "simple design" msgstr "einfaches Design" -#: ../../library/turtle.rst:2877 +#: ../../library/turtle.rst:2896 msgid "turtles on two canvases" msgstr "Turtles auf zwei Canvas" -#: ../../library/turtle.rst:2880 +#: ../../library/turtle.rst:2899 msgid "``yinyang``" msgstr "``yinyang``" -#: ../../library/turtle.rst:2880 +#: ../../library/turtle.rst:2899 msgid "another elementary example" msgstr "ein weiteres elementares Beispiel" -#: ../../library/turtle.rst:2883 +#: ../../library/turtle.rst:2902 msgid "Have fun!" msgstr "Viel Spaß!" -#: ../../library/turtle.rst:2887 -msgid "Changes since Python 2.6" -msgstr "Änderungen seit Python 2.6" - -#: ../../library/turtle.rst:2889 -msgid "" -"The methods :func:`Turtle.tracer `, :func:`Turtle.window_width " -"` and :func:`Turtle.window_height ` have been " -"eliminated. Methods with these names and functionality are now available " -"only as methods of :class:`Screen`. The functions derived from these remain " -"available. (In fact already in Python 2.6 these methods were merely " -"duplications of the corresponding :class:`TurtleScreen`/:class:`Screen` " -"methods.)" -msgstr "" -"Die Methoden :func:`Turtle.tracer `, :func:`Turtle.window_width " -"` und :func:`Turtle.window_height ` wurden " -"entfernt. Methoden mit diesen Namen und dieser Funktionalität sind jetzt nur " -"noch als Methoden von :class:`Screen` verfügbar. Die davon abgeleiteten " -"Funktionen bleiben verfügbar. (Tatsächlich waren diese Methoden bereits in " -"Python 2.6 lediglich Duplikate der entsprechenden :class:`TurtleScreen`/:" -"class:`Screen`-Methoden.)" - -#: ../../library/turtle.rst:2897 -msgid "" -"The method :func:`!Turtle.fill` has been eliminated. The behaviour of :func:" -"`begin_fill` and :func:`end_fill` have changed slightly: now every filling " -"process must be completed with an ``end_fill()`` call." -msgstr "" -"Die Methode :func:`!Turtle.fill` wurde entfernt. Das Verhalten von :func:" -"`begin_fill` und :func:`end_fill` hat sich leicht geändert: Jetzt muss jeder " -"Füllvorgang mit einem Aufruf von ``end_fill()`` abgeschlossen werden." - -#: ../../library/turtle.rst:2902 -msgid "" -"A method :func:`Turtle.filling ` has been added. It returns a " -"boolean value: ``True`` if a filling process is under way, ``False`` " -"otherwise. This behaviour corresponds to a ``fill()`` call without arguments " -"in Python 2.6." -msgstr "" -"Eine Methode :func:`Turtle.filling ` wurde hinzugefügt. Sie gibt " -"einen booleschen Wert zurück: ``True``, wenn ein Füllvorgang im Gange ist, " -"andernfalls ``False``. Dieses Verhalten entspricht einem Aufruf von " -"``fill()`` ohne Argumente in Python 2.6." - -#: ../../library/turtle.rst:2908 -msgid "Changes since Python 3.0" -msgstr "Änderungen seit Python 3.0" - -#: ../../library/turtle.rst:2910 -msgid "" -"The :class:`Turtle` methods :func:`shearfactor`, :func:`shapetransform` and :" -"func:`get_shapepoly` have been added. Thus the full range of regular linear " -"transforms is now available for transforming turtle shapes. :func:" -"`tiltangle` has been enhanced in functionality: it now can be used to get or " -"set the tilt angle." -msgstr "" -"Die :class:`Turtle`-Methoden :func:`shearfactor`, :func:`shapetransform` " -"und :func:`get_shapepoly` wurden hinzugefügt. Damit steht nun der gesamte " -"Bereich regulärer linearer Transformationen zur Transformation von Turtle-" -"Formen zur Verfügung. :func:`tiltangle` wurde funktional erweitert: Es kann " -"jetzt verwendet werden, um den Kippwinkel abzurufen oder zu setzen." - -#: ../../library/turtle.rst:2916 -msgid "" -"The :class:`Screen` method :func:`onkeypress` has been added as a complement " -"to :func:`onkey`. As the latter binds actions to the key release event, an " -"alias: :func:`onkeyrelease` was also added for it." -msgstr "" -"Die :class:`Screen`-Methode :func:`onkeypress` wurde als Ergänzung zu :func:" -"`onkey` hinzugefügt. Da Letzteres Aktionen an das Loslassen-Ereignis der " -"Taste bindet, wurde dafür auch ein Alias hinzugefügt: :func:`onkeyrelease`." - -#: ../../library/turtle.rst:2920 -msgid "" -"The method :func:`Screen.mainloop ` has been added, so there is no " -"longer a need to use the standalone :func:`mainloop` function when working " -"with :class:`Screen` and :class:`Turtle` objects." -msgstr "" -"Die Methode :func:`Screen.mainloop ` wurde hinzugefügt, sodass es " -"nicht mehr nötig ist, die eigenständige Funktion :func:`mainloop` zu " -"verwenden, wenn mit :class:`Screen`- und :class:`Turtle`-Objekten gearbeitet " -"wird." - -#: ../../library/turtle.rst:2924 -msgid "" -"Two input methods have been added: :func:`Screen.textinput ` and :" -"func:`Screen.numinput `. These pop up input dialogs and return " -"strings and numbers respectively." -msgstr "" -"Zwei Eingabemethoden wurden hinzugefügt: :func:`Screen.textinput " -"` und :func:`Screen.numinput `. Diese öffnen " -"Eingabedialoge und geben jeweils Zeichenketten bzw. Zahlen zurück." +#~ msgid "Changes since Python 2.6" +#~ msgstr "Änderungen seit Python 2.6" + +#~ msgid "" +#~ "The methods :func:`Turtle.tracer `, :func:`Turtle.window_width " +#~ "` and :func:`Turtle.window_height ` have " +#~ "been eliminated. Methods with these names and functionality are now " +#~ "available only as methods of :class:`Screen`. The functions derived from " +#~ "these remain available. (In fact already in Python 2.6 these methods were " +#~ "merely duplications of the corresponding :class:`TurtleScreen`/:class:" +#~ "`Screen` methods.)" +#~ msgstr "" +#~ "Die Methoden :func:`Turtle.tracer `, :func:`Turtle.window_width " +#~ "` und :func:`Turtle.window_height ` wurden " +#~ "entfernt. Methoden mit diesen Namen und dieser Funktionalität sind jetzt " +#~ "nur noch als Methoden von :class:`Screen` verfügbar. Die davon " +#~ "abgeleiteten Funktionen bleiben verfügbar. (Tatsächlich waren diese " +#~ "Methoden bereits in Python 2.6 lediglich Duplikate der entsprechenden :" +#~ "class:`TurtleScreen`/:class:`Screen`-Methoden.)" + +#~ msgid "" +#~ "The method :func:`!Turtle.fill` has been eliminated. The behaviour of :" +#~ "func:`begin_fill` and :func:`end_fill` have changed slightly: now every " +#~ "filling process must be completed with an ``end_fill()`` call." +#~ msgstr "" +#~ "Die Methode :func:`!Turtle.fill` wurde entfernt. Das Verhalten von :func:" +#~ "`begin_fill` und :func:`end_fill` hat sich leicht geändert: Jetzt muss " +#~ "jeder Füllvorgang mit einem Aufruf von ``end_fill()`` abgeschlossen " +#~ "werden." + +#~ msgid "" +#~ "A method :func:`Turtle.filling ` has been added. It returns a " +#~ "boolean value: ``True`` if a filling process is under way, ``False`` " +#~ "otherwise. This behaviour corresponds to a ``fill()`` call without " +#~ "arguments in Python 2.6." +#~ msgstr "" +#~ "Eine Methode :func:`Turtle.filling ` wurde hinzugefügt. Sie gibt " +#~ "einen booleschen Wert zurück: ``True``, wenn ein Füllvorgang im Gange " +#~ "ist, andernfalls ``False``. Dieses Verhalten entspricht einem Aufruf von " +#~ "``fill()`` ohne Argumente in Python 2.6." + +#~ msgid "Changes since Python 3.0" +#~ msgstr "Änderungen seit Python 3.0" + +#~ msgid "" +#~ "The :class:`Turtle` methods :func:`shearfactor`, :func:`shapetransform` " +#~ "and :func:`get_shapepoly` have been added. Thus the full range of regular " +#~ "linear transforms is now available for transforming turtle shapes. :func:" +#~ "`tiltangle` has been enhanced in functionality: it now can be used to get " +#~ "or set the tilt angle." +#~ msgstr "" +#~ "Die :class:`Turtle`-Methoden :func:`shearfactor`, :func:`shapetransform` " +#~ "und :func:`get_shapepoly` wurden hinzugefügt. Damit steht nun der gesamte " +#~ "Bereich regulärer linearer Transformationen zur Transformation von Turtle-" +#~ "Formen zur Verfügung. :func:`tiltangle` wurde funktional erweitert: Es " +#~ "kann jetzt verwendet werden, um den Kippwinkel abzurufen oder zu setzen." + +#~ msgid "" +#~ "The :class:`Screen` method :func:`onkeypress` has been added as a " +#~ "complement to :func:`onkey`. As the latter binds actions to the key " +#~ "release event, an alias: :func:`onkeyrelease` was also added for it." +#~ msgstr "" +#~ "Die :class:`Screen`-Methode :func:`onkeypress` wurde als Ergänzung zu :" +#~ "func:`onkey` hinzugefügt. Da Letzteres Aktionen an das Loslassen-Ereignis " +#~ "der Taste bindet, wurde dafür auch ein Alias hinzugefügt: :func:" +#~ "`onkeyrelease`." + +#~ msgid "" +#~ "The method :func:`Screen.mainloop ` has been added, so there is " +#~ "no longer a need to use the standalone :func:`mainloop` function when " +#~ "working with :class:`Screen` and :class:`Turtle` objects." +#~ msgstr "" +#~ "Die Methode :func:`Screen.mainloop ` wurde hinzugefügt, sodass " +#~ "es nicht mehr nötig ist, die eigenständige Funktion :func:`mainloop` zu " +#~ "verwenden, wenn mit :class:`Screen`- und :class:`Turtle`-Objekten " +#~ "gearbeitet wird." + +#~ msgid "" +#~ "Two input methods have been added: :func:`Screen.textinput ` " +#~ "and :func:`Screen.numinput `. These pop up input dialogs and " +#~ "return strings and numbers respectively." +#~ msgstr "" +#~ "Zwei Eingabemethoden wurden hinzugefügt: :func:`Screen.textinput " +#~ "` und :func:`Screen.numinput `. Diese öffnen " +#~ "Eingabedialoge und geben jeweils Zeichenketten bzw. Zahlen zurück." diff --git a/library/xml.etree.elementtree.po b/library/xml.etree.elementtree.po index 3c6fac85..5e9b869f 100644 --- a/library/xml.etree.elementtree.po +++ b/library/xml.etree.elementtree.po @@ -11,7 +11,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-09-14 20:17+0000\n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: python-doc bot, 2025\n" "Language-Team: German (https://app.transifex.com/python-doc/teams/5390/de/)\n" @@ -238,30 +238,73 @@ msgid "" "Because it's so flexible, :class:`XMLPullParser` can be inconvenient to use " "for simpler use-cases. If you don't mind your application blocking on " "reading XML data but would still like to have incremental parsing " -"capabilities, take a look at :func:`iterparse`. It can be useful when " -"you're reading a large XML document and don't want to hold it wholly in " -"memory." +"capabilities, take a look at :func:`iterparse`." msgstr "" -#: ../../library/xml.etree.elementtree.rst:166 +#: ../../library/xml.etree.elementtree.rst:165 +msgid "" +"Note that both parsers build the tree incrementally: it is not freed " +"incrementally, so every parsed element is kept until the whole document is " +"read. To keep the memory usage low, get rid of the data which is not needed " +"any more." +msgstr "" + +#: ../../library/xml.etree.elementtree.rst:170 +msgid "" +"If the processed elements are large, it is enough to clear them. This works " +"wherever they are in the tree, but the emptied elements are left in it::" +msgstr "" + +#: ../../library/xml.etree.elementtree.rst:174 +msgid "" +"for event, elem in ET.iterparse(source):\n" +" if elem.tag == 'record':\n" +" process(elem)\n" +" elem.clear()" +msgstr "" + +#: ../../library/xml.etree.elementtree.rst:179 +msgid "" +"If an element has a large number of children, remove the processed children " +"from it::" +msgstr "" + +#: ../../library/xml.etree.elementtree.rst:182 +msgid "" +"for event, elem in ET.iterparse(source, events=('start', 'end')):\n" +" if event == 'start' and elem.tag == 'parent':\n" +" parent = elem\n" +" elif event == 'end' and elem.tag == 'child':\n" +" process(elem)\n" +" parent.remove(elem)" +msgstr "" + +#: ../../library/xml.etree.elementtree.rst:189 +msgid "" +"These examples are not universal, they only give an idea for two common " +"cases. If you do not need a tree at all, parse with :class:`XMLParser` and a " +"custom target instead; it is not built then, and nothing has to be removed." +msgstr "" + +#: ../../library/xml.etree.elementtree.rst:195 msgid "" "Where *immediate* feedback through events is wanted, calling method :meth:" "`XMLPullParser.flush` can help reduce delay; please make sure to study the " "related security notes." msgstr "" -#: ../../library/xml.etree.elementtree.rst:172 +#: ../../library/xml.etree.elementtree.rst:201 msgid "Finding interesting elements" msgstr "" -#: ../../library/xml.etree.elementtree.rst:174 +#: ../../library/xml.etree.elementtree.rst:203 msgid "" ":class:`Element` has some useful methods that help iterate recursively over " "all the sub-tree below it (its children, their children, and so on). For " "example, :meth:`Element.iter`::" msgstr "" -#: ../../library/xml.etree.elementtree.rst:178 +#: ../../library/xml.etree.elementtree.rst:207 msgid "" ">>> for neighbor in root.iter('neighbor'):\n" "... print(neighbor.attrib)\n" @@ -273,7 +316,7 @@ msgid "" "{'name': 'Colombia', 'direction': 'E'}" msgstr "" -#: ../../library/xml.etree.elementtree.rst:187 +#: ../../library/xml.etree.elementtree.rst:216 msgid "" ":meth:`Element.findall` finds only elements with a tag which are direct " "children of the current element. :meth:`Element.find` finds the *first* " @@ -281,7 +324,7 @@ msgid "" "text content. :meth:`Element.get` accesses the element's attributes::" msgstr "" -#: ../../library/xml.etree.elementtree.rst:192 +#: ../../library/xml.etree.elementtree.rst:221 msgid "" ">>> for country in root.findall('country'):\n" "... rank = country.find('rank').text\n" @@ -293,23 +336,23 @@ msgid "" "Panama 68" msgstr "" -#: ../../library/xml.etree.elementtree.rst:201 +#: ../../library/xml.etree.elementtree.rst:230 msgid "" "More sophisticated specification of which elements to look for is possible " "by using :ref:`XPath `." msgstr "" -#: ../../library/xml.etree.elementtree.rst:205 +#: ../../library/xml.etree.elementtree.rst:234 msgid "Modifying an XML File" msgstr "" -#: ../../library/xml.etree.elementtree.rst:207 +#: ../../library/xml.etree.elementtree.rst:236 msgid "" ":class:`ElementTree` provides a simple way to build XML documents and write " "them to files. The :meth:`ElementTree.write` method serves this purpose." msgstr "" -#: ../../library/xml.etree.elementtree.rst:210 +#: ../../library/xml.etree.elementtree.rst:239 msgid "" "Once created, an :class:`Element` object may be manipulated by directly " "changing its fields (such as :attr:`Element.text`), adding and modifying " @@ -317,13 +360,13 @@ msgid "" "example with :meth:`Element.append`)." msgstr "" -#: ../../library/xml.etree.elementtree.rst:215 +#: ../../library/xml.etree.elementtree.rst:244 msgid "" "Let's say we want to add one to each country's rank, and add an ``updated`` " "attribute to the rank element::" msgstr "" -#: ../../library/xml.etree.elementtree.rst:218 +#: ../../library/xml.etree.elementtree.rst:247 msgid "" ">>> for rank in root.iter('rank'):\n" "... new_rank = int(rank.text) + 1\n" @@ -333,12 +376,12 @@ msgid "" ">>> tree.write('output.xml')" msgstr "" -#: ../../library/xml.etree.elementtree.rst:225 -#: ../../library/xml.etree.elementtree.rst:269 +#: ../../library/xml.etree.elementtree.rst:254 +#: ../../library/xml.etree.elementtree.rst:298 msgid "Our XML now looks like this:" msgstr "" -#: ../../library/xml.etree.elementtree.rst:227 +#: ../../library/xml.etree.elementtree.rst:256 msgid "" "\n" "\n" @@ -365,13 +408,13 @@ msgid "" "" msgstr "" -#: ../../library/xml.etree.elementtree.rst:253 +#: ../../library/xml.etree.elementtree.rst:282 msgid "" "We can remove elements using :meth:`Element.remove`. Let's say we want to " "remove all countries with a rank higher than 50::" msgstr "" -#: ../../library/xml.etree.elementtree.rst:256 +#: ../../library/xml.etree.elementtree.rst:285 msgid "" ">>> for country in root.findall('country'):\n" "... # using root.findall() to avoid removal during traversal\n" @@ -382,7 +425,7 @@ msgid "" ">>> tree.write('output.xml')" msgstr "" -#: ../../library/xml.etree.elementtree.rst:264 +#: ../../library/xml.etree.elementtree.rst:293 msgid "" "Note that concurrent modification while iterating can lead to problems, just " "like when iterating and modifying Python lists or dicts. Therefore, the " @@ -390,7 +433,7 @@ msgid "" "only then iterates over the list of matches." msgstr "" -#: ../../library/xml.etree.elementtree.rst:271 +#: ../../library/xml.etree.elementtree.rst:300 msgid "" "\n" "\n" @@ -410,17 +453,17 @@ msgid "" "" msgstr "" -#: ../../library/xml.etree.elementtree.rst:291 +#: ../../library/xml.etree.elementtree.rst:320 msgid "Building XML documents" msgstr "" -#: ../../library/xml.etree.elementtree.rst:293 +#: ../../library/xml.etree.elementtree.rst:322 msgid "" "The :func:`SubElement` function also provides a convenient way to create new " "sub-elements for a given element::" msgstr "" -#: ../../library/xml.etree.elementtree.rst:296 +#: ../../library/xml.etree.elementtree.rst:325 msgid "" ">>> a = ET.Element('a')\n" ">>> b = ET.SubElement(a, 'b')\n" @@ -430,11 +473,11 @@ msgid "" "" msgstr "" -#: ../../library/xml.etree.elementtree.rst:304 +#: ../../library/xml.etree.elementtree.rst:333 msgid "Parsing XML with Namespaces" msgstr "" -#: ../../library/xml.etree.elementtree.rst:306 +#: ../../library/xml.etree.elementtree.rst:335 msgid "" "If the XML input has `namespaces `__, tags and attributes with prefixes in the form ``prefix:" @@ -444,13 +487,13 @@ msgid "" "prefixed tags." msgstr "" -#: ../../library/xml.etree.elementtree.rst:314 +#: ../../library/xml.etree.elementtree.rst:343 msgid "" "Here is an XML example that incorporates two namespaces, one with the prefix " "\"fictional\" and the other serving as the default namespace:" msgstr "" -#: ../../library/xml.etree.elementtree.rst:317 +#: ../../library/xml.etree.elementtree.rst:346 msgid "" "\n" "" msgstr "" -#: ../../library/xml.etree.elementtree.rst:335 +#: ../../library/xml.etree.elementtree.rst:364 msgid "" "One way to search and explore this XML example is to manually add the URI to " "every tag or attribute in the xpath of a :meth:`~Element.find` or :meth:" "`~Element.findall`::" msgstr "" -#: ../../library/xml.etree.elementtree.rst:339 +#: ../../library/xml.etree.elementtree.rst:368 msgid "" "root = fromstring(xml_text)\n" "for actor in root.findall('{http://people.example.com}actor'):\n" @@ -486,13 +529,13 @@ msgid "" " print(' |-->', char.text)" msgstr "" -#: ../../library/xml.etree.elementtree.rst:346 +#: ../../library/xml.etree.elementtree.rst:375 msgid "" "A better way to search the namespaced XML example is to create a dictionary " "with your own prefixes and use those in the search functions::" msgstr "" -#: ../../library/xml.etree.elementtree.rst:349 +#: ../../library/xml.etree.elementtree.rst:378 msgid "" "ns = {'real_person': 'http://people.example.com',\n" " 'role': 'http://characters.example.com'}\n" @@ -504,11 +547,11 @@ msgid "" " print(' |-->', char.text)" msgstr "" -#: ../../library/xml.etree.elementtree.rst:358 +#: ../../library/xml.etree.elementtree.rst:387 msgid "These two approaches both output::" msgstr "" -#: ../../library/xml.etree.elementtree.rst:360 +#: ../../library/xml.etree.elementtree.rst:389 msgid "" "John Cleese\n" " |--> Lancelot\n" @@ -519,11 +562,11 @@ msgid "" " |--> Commander Clement" msgstr "" -#: ../../library/xml.etree.elementtree.rst:372 +#: ../../library/xml.etree.elementtree.rst:401 msgid "XPath support" msgstr "" -#: ../../library/xml.etree.elementtree.rst:374 +#: ../../library/xml.etree.elementtree.rst:403 msgid "" "This module provides limited support for `XPath expressions `_ for locating elements in a tree. The goal is to support a " @@ -531,19 +574,19 @@ msgid "" "scope of the module." msgstr "" -#: ../../library/xml.etree.elementtree.rst:380 -#: ../../library/xml.etree.elementtree.rst:789 +#: ../../library/xml.etree.elementtree.rst:409 +#: ../../library/xml.etree.elementtree.rst:822 msgid "Example" msgstr "" -#: ../../library/xml.etree.elementtree.rst:382 +#: ../../library/xml.etree.elementtree.rst:411 msgid "" "Here's an example that demonstrates some of the XPath capabilities of the " "module. We'll be using the ``countrydata`` XML document from the :ref:" "`Parsing XML ` section::" msgstr "" -#: ../../library/xml.etree.elementtree.rst:386 +#: ../../library/xml.etree.elementtree.rst:415 msgid "" "import xml.etree.ElementTree as ET\n" "\n" @@ -566,35 +609,35 @@ msgid "" "root.findall(\".//neighbor[2]\")" msgstr "" -#: ../../library/xml.etree.elementtree.rst:406 +#: ../../library/xml.etree.elementtree.rst:435 msgid "" "For XML with namespaces, use the usual qualified ``{namespace}tag`` " "notation::" msgstr "" -#: ../../library/xml.etree.elementtree.rst:408 +#: ../../library/xml.etree.elementtree.rst:437 msgid "" "# All dublin-core \"title\" tags in the document\n" "root.findall(\".//{http://purl.org/dc/elements/1.1/}title\")" msgstr "" -#: ../../library/xml.etree.elementtree.rst:413 +#: ../../library/xml.etree.elementtree.rst:442 msgid "Supported XPath syntax" msgstr "" -#: ../../library/xml.etree.elementtree.rst:418 +#: ../../library/xml.etree.elementtree.rst:447 msgid "Syntax" msgstr "" -#: ../../library/xml.etree.elementtree.rst:418 +#: ../../library/xml.etree.elementtree.rst:447 msgid "Meaning" msgstr "" -#: ../../library/xml.etree.elementtree.rst:420 +#: ../../library/xml.etree.elementtree.rst:449 msgid "``tag``" msgstr "" -#: ../../library/xml.etree.elementtree.rst:420 +#: ../../library/xml.etree.elementtree.rst:449 msgid "" "Selects all child elements with the given tag. For example, ``spam`` selects " "all child elements named ``spam``, and ``spam/egg`` selects all " @@ -604,133 +647,133 @@ msgid "" "not in a namespace." msgstr "" -#: ../../library/xml.etree.elementtree.rst:429 +#: ../../library/xml.etree.elementtree.rst:458 msgid "Support for star-wildcards was added." msgstr "" -#: ../../library/xml.etree.elementtree.rst:432 +#: ../../library/xml.etree.elementtree.rst:461 msgid "``*``" msgstr "" -#: ../../library/xml.etree.elementtree.rst:432 +#: ../../library/xml.etree.elementtree.rst:461 msgid "" "Selects all child elements, including comments and processing instructions. " "For example, ``*/egg`` selects all grandchildren named ``egg``." msgstr "" -#: ../../library/xml.etree.elementtree.rst:436 +#: ../../library/xml.etree.elementtree.rst:465 msgid "``.``" msgstr "" -#: ../../library/xml.etree.elementtree.rst:436 +#: ../../library/xml.etree.elementtree.rst:465 msgid "" "Selects the current node. This is mostly useful at the beginning of the " "path, to indicate that it's a relative path." msgstr "" -#: ../../library/xml.etree.elementtree.rst:440 +#: ../../library/xml.etree.elementtree.rst:469 msgid "``//``" msgstr "" -#: ../../library/xml.etree.elementtree.rst:440 +#: ../../library/xml.etree.elementtree.rst:469 msgid "" "Selects all subelements, on all levels beneath the current element. For " "example, ``.//egg`` selects all ``egg`` elements in the entire tree." msgstr "" -#: ../../library/xml.etree.elementtree.rst:444 +#: ../../library/xml.etree.elementtree.rst:473 msgid "``..``" msgstr "" -#: ../../library/xml.etree.elementtree.rst:444 +#: ../../library/xml.etree.elementtree.rst:473 msgid "" "Selects the parent element. Returns ``None`` if the path attempts to reach " "the ancestors of the start element (the element ``find`` was called on)." msgstr "" -#: ../../library/xml.etree.elementtree.rst:448 +#: ../../library/xml.etree.elementtree.rst:477 msgid "``[@attrib]``" msgstr "" -#: ../../library/xml.etree.elementtree.rst:448 +#: ../../library/xml.etree.elementtree.rst:477 msgid "Selects all elements that have the given attribute." msgstr "" -#: ../../library/xml.etree.elementtree.rst:450 +#: ../../library/xml.etree.elementtree.rst:479 msgid "``[@attrib='value']``" msgstr "" -#: ../../library/xml.etree.elementtree.rst:450 +#: ../../library/xml.etree.elementtree.rst:479 msgid "" "Selects all elements for which the given attribute has the given value. The " "value cannot contain quotes." msgstr "" -#: ../../library/xml.etree.elementtree.rst:454 +#: ../../library/xml.etree.elementtree.rst:483 msgid "``[@attrib!='value']``" msgstr "" -#: ../../library/xml.etree.elementtree.rst:454 +#: ../../library/xml.etree.elementtree.rst:483 msgid "" "Selects all elements for which the given attribute does not have the given " "value. The value cannot contain quotes." msgstr "" -#: ../../library/xml.etree.elementtree.rst:460 +#: ../../library/xml.etree.elementtree.rst:489 msgid "``[tag]``" msgstr "" -#: ../../library/xml.etree.elementtree.rst:460 +#: ../../library/xml.etree.elementtree.rst:489 msgid "" "Selects all elements that have a child named ``tag``. Only immediate " "children are supported." msgstr "" -#: ../../library/xml.etree.elementtree.rst:463 +#: ../../library/xml.etree.elementtree.rst:492 msgid "``[.='text']``" msgstr "" -#: ../../library/xml.etree.elementtree.rst:463 +#: ../../library/xml.etree.elementtree.rst:492 msgid "" "Selects all elements whose complete text content, including descendants, " "equals the given ``text``." msgstr "" -#: ../../library/xml.etree.elementtree.rst:468 +#: ../../library/xml.etree.elementtree.rst:497 msgid "``[.!='text']``" msgstr "" -#: ../../library/xml.etree.elementtree.rst:468 +#: ../../library/xml.etree.elementtree.rst:497 msgid "" "Selects all elements whose complete text content, including descendants, " "does not equal the given ``text``." msgstr "" -#: ../../library/xml.etree.elementtree.rst:474 +#: ../../library/xml.etree.elementtree.rst:503 msgid "``[tag='text']``" msgstr "" -#: ../../library/xml.etree.elementtree.rst:474 +#: ../../library/xml.etree.elementtree.rst:503 msgid "" "Selects all elements that have a child named ``tag`` whose complete text " "content, including descendants, equals the given ``text``." msgstr "" -#: ../../library/xml.etree.elementtree.rst:478 +#: ../../library/xml.etree.elementtree.rst:507 msgid "``[tag!='text']``" msgstr "" -#: ../../library/xml.etree.elementtree.rst:478 +#: ../../library/xml.etree.elementtree.rst:507 msgid "" "Selects all elements that have a child named ``tag`` whose complete text " "content, including descendants, does not equal the given ``text``." msgstr "" -#: ../../library/xml.etree.elementtree.rst:484 +#: ../../library/xml.etree.elementtree.rst:513 msgid "``[position]``" msgstr "" -#: ../../library/xml.etree.elementtree.rst:484 +#: ../../library/xml.etree.elementtree.rst:513 msgid "" "Selects all elements that are located at the given position. The position " "can be either an integer (1 is the first position), the expression " @@ -738,28 +781,28 @@ msgid "" "position (e.g. ``last()-1``)." msgstr "" -#: ../../library/xml.etree.elementtree.rst:491 +#: ../../library/xml.etree.elementtree.rst:520 msgid "" "Predicates (expressions within square brackets) must be preceded by a tag " "name, an asterisk, or another predicate. ``position`` predicates must be " "preceded by a tag name." msgstr "" -#: ../../library/xml.etree.elementtree.rst:496 -#: ../../library/xml.etree.elementtree.rst:841 +#: ../../library/xml.etree.elementtree.rst:525 +#: ../../library/xml.etree.elementtree.rst:874 msgid "Reference" msgstr "" -#: ../../library/xml.etree.elementtree.rst:501 -#: ../../library/xml.etree.elementtree.rst:846 +#: ../../library/xml.etree.elementtree.rst:530 +#: ../../library/xml.etree.elementtree.rst:879 msgid "Functions" msgstr "" -#: ../../library/xml.etree.elementtree.rst:505 +#: ../../library/xml.etree.elementtree.rst:534 msgid "`C14N 2.0 `_ transformation function." msgstr "" -#: ../../library/xml.etree.elementtree.rst:507 +#: ../../library/xml.etree.elementtree.rst:536 msgid "" "Canonicalization is a way to normalise XML output in a way that allows byte-" "by-byte comparisons and digital signatures. It reduces the freedom that XML " @@ -768,7 +811,7 @@ msgid "" "declarations, the ordering of attributes, and ignorable whitespace." msgstr "" -#: ../../library/xml.etree.elementtree.rst:513 +#: ../../library/xml.etree.elementtree.rst:542 msgid "" "This function takes an XML data string (*xml_data*) or a file path or file-" "like object (*from_file*) as input, converts it to the canonical form, and " @@ -777,11 +820,11 @@ msgid "" "should therefore be opened in text mode with ``utf-8`` encoding." msgstr "" -#: ../../library/xml.etree.elementtree.rst:520 +#: ../../library/xml.etree.elementtree.rst:549 msgid "Typical uses::" msgstr "" -#: ../../library/xml.etree.elementtree.rst:522 +#: ../../library/xml.etree.elementtree.rst:551 msgid "" "xml_data = \"...\"\n" "print(canonicalize(xml_data))\n" @@ -793,59 +836,59 @@ msgid "" " canonicalize(from_file=\"inputfile.xml\", out=out_file)" msgstr "" -#: ../../library/xml.etree.elementtree.rst:531 +#: ../../library/xml.etree.elementtree.rst:560 msgid "The configuration *options* are as follows:" msgstr "" -#: ../../library/xml.etree.elementtree.rst:533 +#: ../../library/xml.etree.elementtree.rst:562 msgid "*with_comments*: set to true to include comments (default: false)" msgstr "" -#: ../../library/xml.etree.elementtree.rst:534 +#: ../../library/xml.etree.elementtree.rst:563 msgid "" "*strip_text*: set to true to strip whitespace before and after text content" msgstr "" -#: ../../library/xml.etree.elementtree.rst:535 -#: ../../library/xml.etree.elementtree.rst:537 +#: ../../library/xml.etree.elementtree.rst:564 +#: ../../library/xml.etree.elementtree.rst:566 msgid "(default: false)" msgstr "" -#: ../../library/xml.etree.elementtree.rst:536 +#: ../../library/xml.etree.elementtree.rst:565 msgid "" "*rewrite_prefixes*: set to true to replace namespace prefixes by " "\"n{number}\"" msgstr "" -#: ../../library/xml.etree.elementtree.rst:538 +#: ../../library/xml.etree.elementtree.rst:567 msgid "*qname_aware_tags*: a set of qname aware tag names in which prefixes" msgstr "" -#: ../../library/xml.etree.elementtree.rst:539 -#: ../../library/xml.etree.elementtree.rst:541 +#: ../../library/xml.etree.elementtree.rst:568 +#: ../../library/xml.etree.elementtree.rst:570 msgid "should be replaced in text content (default: empty)" msgstr "" -#: ../../library/xml.etree.elementtree.rst:540 +#: ../../library/xml.etree.elementtree.rst:569 msgid "" "*qname_aware_attrs*: a set of qname aware attribute names in which prefixes" msgstr "" -#: ../../library/xml.etree.elementtree.rst:542 +#: ../../library/xml.etree.elementtree.rst:571 msgid "*exclude_attrs*: a set of attribute names that should not be serialised" msgstr "" -#: ../../library/xml.etree.elementtree.rst:543 +#: ../../library/xml.etree.elementtree.rst:572 msgid "*exclude_tags*: a set of tag names that should not be serialised" msgstr "" -#: ../../library/xml.etree.elementtree.rst:545 +#: ../../library/xml.etree.elementtree.rst:574 msgid "" "In the option list above, \"a set\" refers to any collection or iterable of " "strings, no ordering is expected." msgstr "" -#: ../../library/xml.etree.elementtree.rst:553 +#: ../../library/xml.etree.elementtree.rst:582 msgid "" "Comment element factory. This factory function creates a special element " "that will be serialized as an XML comment by the standard serializer. The " @@ -854,7 +897,7 @@ msgid "" "representing a comment." msgstr "" -#: ../../library/xml.etree.elementtree.rst:559 +#: ../../library/xml.etree.elementtree.rst:588 msgid "" "Note that :class:`XMLParser` skips over comments in the input instead of " "creating comment objects for them. An :class:`ElementTree` will only contain " @@ -862,29 +905,29 @@ msgid "" "class:`Element` methods." msgstr "" -#: ../../library/xml.etree.elementtree.rst:566 +#: ../../library/xml.etree.elementtree.rst:595 msgid "" "Writes an element tree or element structure to sys.stdout. This function " "should be used for debugging only." msgstr "" -#: ../../library/xml.etree.elementtree.rst:569 +#: ../../library/xml.etree.elementtree.rst:598 msgid "" "The exact output format is implementation dependent. In this version, it's " "written as an ordinary XML file." msgstr "" -#: ../../library/xml.etree.elementtree.rst:572 +#: ../../library/xml.etree.elementtree.rst:601 msgid "*elem* is an element tree or an individual element." msgstr "" -#: ../../library/xml.etree.elementtree.rst:574 +#: ../../library/xml.etree.elementtree.rst:603 msgid "" "The :func:`dump` function now preserves the attribute order specified by the " "user." msgstr "" -#: ../../library/xml.etree.elementtree.rst:581 +#: ../../library/xml.etree.elementtree.rst:610 msgid "" "Parses an XML section from a string constant. Same as :func:`XML`. *text* " "is a string containing XML data. *parser* is an optional parser instance. " @@ -892,7 +935,7 @@ msgid "" "class:`Element` instance." msgstr "" -#: ../../library/xml.etree.elementtree.rst:589 +#: ../../library/xml.etree.elementtree.rst:618 msgid "" "Parses an XML document from a sequence of string fragments. *sequence* is a " "list or other sequence containing XML data fragments. *parser* is an " @@ -900,7 +943,7 @@ msgid "" "parser is used. Returns an :class:`Element` instance." msgstr "" -#: ../../library/xml.etree.elementtree.rst:599 +#: ../../library/xml.etree.elementtree.rst:628 msgid "" "Appends whitespace to the subtree to indent the tree visually. This can be " "used to generate pretty-printed XML output. *tree* can be an Element or " @@ -910,13 +953,13 @@ msgid "" "indentation level as *level*." msgstr "" -#: ../../library/xml.etree.elementtree.rst:611 +#: ../../library/xml.etree.elementtree.rst:640 msgid "" "Check if an object appears to be a valid element object. *element* is an " "element instance. Return ``True`` if this is an element object." msgstr "" -#: ../../library/xml.etree.elementtree.rst:617 +#: ../../library/xml.etree.elementtree.rst:646 msgid "" "Parses an XML section into an element tree incrementally, and reports what's " "going on to the user. *source* is a filename or :term:`file object` " @@ -934,7 +977,7 @@ msgid "" "file object if *source* is a filename." msgstr "" -#: ../../library/xml.etree.elementtree.rst:633 +#: ../../library/xml.etree.elementtree.rst:662 msgid "" "Note that while :func:`iterparse` builds the tree incrementally, it issues " "blocking reads on *source* (or the file it names). As such, it's unsuitable " @@ -942,7 +985,14 @@ msgid "" "parsing, see :class:`XMLPullParser`." msgstr "" -#: ../../library/xml.etree.elementtree.rst:640 +#: ../../library/xml.etree.elementtree.rst:667 +msgid "" +"The tree is only built incrementally, it is not freed incrementally: every " +"parsed element is kept until the whole document is read. See :ref:" +"`elementtree-pull-parsing` for how to keep the memory usage low." +msgstr "" + +#: ../../library/xml.etree.elementtree.rst:673 msgid "" ":func:`iterparse` only guarantees that it has seen the \">\" character of a " "starting tag when it emits a \"start\" event, so the attributes are defined, " @@ -951,31 +1001,31 @@ msgid "" "present." msgstr "" -#: ../../library/xml.etree.elementtree.rst:646 -#: ../../library/xml.etree.elementtree.rst:1535 +#: ../../library/xml.etree.elementtree.rst:679 +#: ../../library/xml.etree.elementtree.rst:1568 msgid "If you need a fully populated element, look for \"end\" events instead." msgstr "" -#: ../../library/xml.etree.elementtree.rst:648 +#: ../../library/xml.etree.elementtree.rst:681 msgid "The *parser* argument." msgstr "" -#: ../../library/xml.etree.elementtree.rst:651 -#: ../../library/xml.etree.elementtree.rst:1539 +#: ../../library/xml.etree.elementtree.rst:684 +#: ../../library/xml.etree.elementtree.rst:1572 msgid "The ``comment`` and ``pi`` events were added." msgstr "" -#: ../../library/xml.etree.elementtree.rst:654 +#: ../../library/xml.etree.elementtree.rst:687 msgid "Added the :meth:`!close` method." msgstr "" -#: ../../library/xml.etree.elementtree.rst:657 +#: ../../library/xml.etree.elementtree.rst:690 msgid "" "A :exc:`ResourceWarning` is now emitted if the iterator opened a file and is " "not explicitly closed." msgstr "" -#: ../../library/xml.etree.elementtree.rst:664 +#: ../../library/xml.etree.elementtree.rst:697 msgid "" "Parses an XML section into an element tree. *source* is a filename or file " "object containing XML data. *parser* is an optional parser instance. If " @@ -983,7 +1033,7 @@ msgid "" "class:`ElementTree` instance." msgstr "" -#: ../../library/xml.etree.elementtree.rst:672 +#: ../../library/xml.etree.elementtree.rst:705 msgid "" "PI element factory. This factory function creates a special element that " "will be serialized as an XML processing instruction. *target* is a string " @@ -991,7 +1041,7 @@ msgid "" "given. Returns an element instance, representing a processing instruction." msgstr "" -#: ../../library/xml.etree.elementtree.rst:677 +#: ../../library/xml.etree.elementtree.rst:710 msgid "" "Note that :class:`XMLParser` skips over processing instructions in the input " "instead of creating PI objects for them. An :class:`ElementTree` will only " @@ -999,7 +1049,7 @@ msgid "" "tree using one of the :class:`Element` methods." msgstr "" -#: ../../library/xml.etree.elementtree.rst:685 +#: ../../library/xml.etree.elementtree.rst:718 msgid "" "Registers a namespace prefix. The registry is global, and any existing " "mapping for either the given prefix or the namespace URI will be removed. " @@ -1008,13 +1058,13 @@ msgid "" "all possible." msgstr "" -#: ../../library/xml.etree.elementtree.rst:696 +#: ../../library/xml.etree.elementtree.rst:729 msgid "" "Subelement factory. This function creates an element instance, and appends " "it to an existing element." msgstr "" -#: ../../library/xml.etree.elementtree.rst:699 +#: ../../library/xml.etree.elementtree.rst:732 msgid "" "The element name, attribute names, and attribute values can be either " "bytestrings or Unicode strings. *parent* is the parent element. *tag* is " @@ -1023,16 +1073,16 @@ msgid "" "arguments. Returns an element instance." msgstr "" -#: ../../library/xml.etree.elementtree.rst:705 -#: ../../library/xml.etree.elementtree.rst:896 +#: ../../library/xml.etree.elementtree.rst:738 +#: ../../library/xml.etree.elementtree.rst:929 msgid "*attrib* can now be a :class:`frozendict`." msgstr "" -#: ../../library/xml.etree.elementtree.rst:708 +#: ../../library/xml.etree.elementtree.rst:741 msgid "*parent* and *tag* are now positional-only parameters." msgstr "" -#: ../../library/xml.etree.elementtree.rst:716 +#: ../../library/xml.etree.elementtree.rst:749 msgid "" "Generates a string representation of an XML element, including all " "subelements. *element* is an :class:`Element` instance. *encoding* [1]_ is " @@ -1044,24 +1094,24 @@ msgid "" "Returns an (optionally) encoded string containing the XML data." msgstr "" -#: ../../library/xml.etree.elementtree.rst:725 -#: ../../library/xml.etree.elementtree.rst:752 -#: ../../library/xml.etree.elementtree.rst:1212 +#: ../../library/xml.etree.elementtree.rst:758 +#: ../../library/xml.etree.elementtree.rst:785 +#: ../../library/xml.etree.elementtree.rst:1245 msgid "Added the *short_empty_elements* parameter." msgstr "" -#: ../../library/xml.etree.elementtree.rst:728 -#: ../../library/xml.etree.elementtree.rst:755 +#: ../../library/xml.etree.elementtree.rst:761 +#: ../../library/xml.etree.elementtree.rst:788 msgid "Added the *xml_declaration* and *default_namespace* parameters." msgstr "" -#: ../../library/xml.etree.elementtree.rst:731 +#: ../../library/xml.etree.elementtree.rst:764 msgid "" "The :func:`tostring` function now preserves the attribute order specified by " "the user." msgstr "" -#: ../../library/xml.etree.elementtree.rst:740 +#: ../../library/xml.etree.elementtree.rst:773 msgid "" "Generates a string representation of an XML element, including all " "subelements. *element* is an :class:`Element` instance. *encoding* [1]_ is " @@ -1075,13 +1125,13 @@ msgid "" "join(tostringlist(element)) == tostring(element)``." msgstr "" -#: ../../library/xml.etree.elementtree.rst:758 +#: ../../library/xml.etree.elementtree.rst:791 msgid "" "The :func:`tostringlist` function now preserves the attribute order " "specified by the user." msgstr "" -#: ../../library/xml.etree.elementtree.rst:765 +#: ../../library/xml.etree.elementtree.rst:798 msgid "" "Parses an XML section from a string constant. This function can be used to " "embed \"XML literals\" in Python code. *text* is a string containing XML " @@ -1089,7 +1139,7 @@ msgid "" "class:`XMLParser` parser is used. Returns an :class:`Element` instance." msgstr "" -#: ../../library/xml.etree.elementtree.rst:773 +#: ../../library/xml.etree.elementtree.rst:806 msgid "" "Parses an XML section from a string constant, and also returns a dictionary " "which maps from element id:s to elements. *text* is a string containing XML " @@ -1098,11 +1148,11 @@ msgid "" "`Element` instance and a dictionary." msgstr "" -#: ../../library/xml.etree.elementtree.rst:783 +#: ../../library/xml.etree.elementtree.rst:816 msgid "XInclude support" msgstr "" -#: ../../library/xml.etree.elementtree.rst:785 +#: ../../library/xml.etree.elementtree.rst:818 msgid "" "This module provides limited support for `XInclude directives `_, via the :mod:`xml.etree.ElementInclude` helper " @@ -1110,7 +1160,7 @@ msgid "" "element trees, based on information in the tree." msgstr "" -#: ../../library/xml.etree.elementtree.rst:791 +#: ../../library/xml.etree.elementtree.rst:824 msgid "" "Here's an example that demonstrates use of the XInclude module. To include " "an XML document in the current document, use the ``{http://www.w3.org/2001/" @@ -1118,7 +1168,7 @@ msgid "" "and use the **href** attribute to specify the document to include." msgstr "" -#: ../../library/xml.etree.elementtree.rst:793 +#: ../../library/xml.etree.elementtree.rst:826 msgid "" "\n" "\n" @@ -1126,20 +1176,20 @@ msgid "" "" msgstr "" -#: ../../library/xml.etree.elementtree.rst:800 +#: ../../library/xml.etree.elementtree.rst:833 msgid "" "By default, the **href** attribute is treated as a file name. You can use " "custom loaders to override this behaviour. Also note that the standard " "helper does not support XPointer syntax." msgstr "" -#: ../../library/xml.etree.elementtree.rst:802 +#: ../../library/xml.etree.elementtree.rst:835 msgid "" "To process this file, load it as usual, and pass the root element to the :" "mod:`!xml.etree.ElementTree` module:" msgstr "" -#: ../../library/xml.etree.elementtree.rst:804 +#: ../../library/xml.etree.elementtree.rst:837 msgid "" "from xml.etree import ElementTree, ElementInclude\n" "\n" @@ -1149,33 +1199,33 @@ msgid "" "ElementInclude.include(root)" msgstr "" -#: ../../library/xml.etree.elementtree.rst:813 +#: ../../library/xml.etree.elementtree.rst:846 msgid "" "The ElementInclude module replaces the ``{http://www.w3.org/2001/XInclude}" "include`` element with the root element from the **source.xml** document. " "The result might look something like this:" msgstr "" -#: ../../library/xml.etree.elementtree.rst:815 +#: ../../library/xml.etree.elementtree.rst:848 msgid "" "\n" " This is a paragraph.\n" "" msgstr "" -#: ../../library/xml.etree.elementtree.rst:821 +#: ../../library/xml.etree.elementtree.rst:854 msgid "" "If the **parse** attribute is omitted, it defaults to \"xml\". The href " "attribute is required." msgstr "" -#: ../../library/xml.etree.elementtree.rst:823 +#: ../../library/xml.etree.elementtree.rst:856 msgid "" "To include a text document, use the ``{http://www.w3.org/2001/XInclude}" "include`` element, and set the **parse** attribute to \"text\":" msgstr "" -#: ../../library/xml.etree.elementtree.rst:825 +#: ../../library/xml.etree.elementtree.rst:858 msgid "" "\n" "\n" @@ -1183,18 +1233,18 @@ msgid "" "" msgstr "" -#: ../../library/xml.etree.elementtree.rst:832 +#: ../../library/xml.etree.elementtree.rst:865 msgid "The result might look something like:" msgstr "" -#: ../../library/xml.etree.elementtree.rst:834 +#: ../../library/xml.etree.elementtree.rst:867 msgid "" "\n" " Copyright (c) 2003.\n" "" msgstr "" -#: ../../library/xml.etree.elementtree.rst:852 +#: ../../library/xml.etree.elementtree.rst:885 msgid "" "Default loader. This default loader reads an included resource from disk. " "*href* is a URL. *parse* is for parse mode either \"xml\" or \"text\". " @@ -1205,7 +1255,7 @@ msgid "" "``None`` or raise an exception." msgstr "" -#: ../../library/xml.etree.elementtree.rst:863 +#: ../../library/xml.etree.elementtree.rst:896 msgid "" "This function expands XInclude directives in-place in tree pointed by " "*elem*. *elem* is either the root :class:`~xml.etree.ElementTree.Element` or " @@ -1218,21 +1268,21 @@ msgid "" "malicious content explosion. Pass ``None`` to disable the limitation." msgstr "" -#: ../../library/xml.etree.elementtree.rst:873 +#: ../../library/xml.etree.elementtree.rst:906 msgid "Added the *base_url* and *max_depth* parameters." msgstr "" -#: ../../library/xml.etree.elementtree.rst:880 +#: ../../library/xml.etree.elementtree.rst:913 msgid "Element Objects" msgstr "" -#: ../../library/xml.etree.elementtree.rst:888 +#: ../../library/xml.etree.elementtree.rst:921 msgid "" "Element class. This class defines the Element interface, and provides a " "reference implementation of this interface." msgstr "" -#: ../../library/xml.etree.elementtree.rst:891 +#: ../../library/xml.etree.elementtree.rst:924 msgid "" "The element name, attribute names, and attribute values can be either " "bytestrings or Unicode strings. *tag* is the element name. *attrib* is an " @@ -1240,17 +1290,17 @@ msgid "" "additional attributes, given as keyword arguments." msgstr "" -#: ../../library/xml.etree.elementtree.rst:899 +#: ../../library/xml.etree.elementtree.rst:932 msgid "*tag* is now a positional-only parameter." msgstr "" -#: ../../library/xml.etree.elementtree.rst:905 +#: ../../library/xml.etree.elementtree.rst:938 msgid "" "A string identifying what kind of data this element represents (the element " "type, in other words)." msgstr "" -#: ../../library/xml.etree.elementtree.rst:912 +#: ../../library/xml.etree.elementtree.rst:945 msgid "" "These attributes can be used to hold additional data associated with the " "element. Their values are usually strings but may be any application-" @@ -1261,11 +1311,11 @@ msgid "" "the XML data" msgstr "" -#: ../../library/xml.etree.elementtree.rst:920 +#: ../../library/xml.etree.elementtree.rst:953 msgid "1234" msgstr "" -#: ../../library/xml.etree.elementtree.rst:924 +#: ../../library/xml.etree.elementtree.rst:957 msgid "" "the *a* element has ``None`` for both *text* and *tail* attributes, the *b* " "element has *text* ``\"1\"`` and *tail* ``\"4\"``, the *c* element has " @@ -1273,17 +1323,17 @@ msgid "" "``None`` and *tail* ``\"3\"``." msgstr "" -#: ../../library/xml.etree.elementtree.rst:929 +#: ../../library/xml.etree.elementtree.rst:962 msgid "" "To collect the inner text of an element, see :meth:`itertext`, for example " "``\"\".join(element.itertext())``." msgstr "" -#: ../../library/xml.etree.elementtree.rst:932 +#: ../../library/xml.etree.elementtree.rst:965 msgid "Applications may store arbitrary objects in these attributes." msgstr "" -#: ../../library/xml.etree.elementtree.rst:937 +#: ../../library/xml.etree.elementtree.rst:970 msgid "" "A dictionary containing the element's attributes. Note that while the " "*attrib* value is always a real mutable Python dictionary, an ElementTree " @@ -1292,59 +1342,59 @@ msgid "" "implementations, use the dictionary methods below whenever possible." msgstr "" -#: ../../library/xml.etree.elementtree.rst:943 +#: ../../library/xml.etree.elementtree.rst:976 msgid "The following dictionary-like methods work on the element attributes." msgstr "" -#: ../../library/xml.etree.elementtree.rst:948 +#: ../../library/xml.etree.elementtree.rst:981 msgid "" "Resets an element. This function removes all subelements, clears all " "attributes, and sets the text and tail attributes to ``None``." msgstr "" -#: ../../library/xml.etree.elementtree.rst:954 +#: ../../library/xml.etree.elementtree.rst:987 msgid "Gets the element attribute named *key*." msgstr "" -#: ../../library/xml.etree.elementtree.rst:956 +#: ../../library/xml.etree.elementtree.rst:989 msgid "" "Returns the attribute value, or *default* if the attribute was not found." msgstr "" -#: ../../library/xml.etree.elementtree.rst:961 +#: ../../library/xml.etree.elementtree.rst:994 msgid "" "Returns the element attributes as a sequence of (name, value) pairs. The " "attributes are returned in an arbitrary order." msgstr "" -#: ../../library/xml.etree.elementtree.rst:967 +#: ../../library/xml.etree.elementtree.rst:1000 msgid "" "Returns the elements attribute names as a list. The names are returned in " "an arbitrary order." msgstr "" -#: ../../library/xml.etree.elementtree.rst:973 +#: ../../library/xml.etree.elementtree.rst:1006 msgid "Set the attribute *key* on the element to *value*." msgstr "" -#: ../../library/xml.etree.elementtree.rst:975 +#: ../../library/xml.etree.elementtree.rst:1008 msgid "The following methods work on the element's children (subelements)." msgstr "" -#: ../../library/xml.etree.elementtree.rst:980 +#: ../../library/xml.etree.elementtree.rst:1013 msgid "" "Adds the element *subelement* to the end of this element's internal list of " "subelements. Raises :exc:`TypeError` if *subelement* is not an :class:" "`Element`." msgstr "" -#: ../../library/xml.etree.elementtree.rst:987 +#: ../../library/xml.etree.elementtree.rst:1020 msgid "" "Appends *subelements* from an iterable of elements. Raises :exc:`TypeError` " "if a subelement is not an :class:`Element`." msgstr "" -#: ../../library/xml.etree.elementtree.rst:995 +#: ../../library/xml.etree.elementtree.rst:1028 msgid "" "Finds the first subelement matching *match*. *match* may be a tag name or " "a :ref:`path `. Returns an element instance or " @@ -1353,7 +1403,7 @@ msgid "" "expression into the given namespace." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1004 +#: ../../library/xml.etree.elementtree.rst:1037 msgid "" "Finds all matching subelements, by tag name or :ref:`path `. Returns a list containing all matching elements in document " @@ -1362,7 +1412,7 @@ msgid "" "expression into the given namespace." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1013 +#: ../../library/xml.etree.elementtree.rst:1046 msgid "" "Finds text for the first subelement matching *match*. *match* may be a tag " "name or a :ref:`path `. Returns the text content of the " @@ -1373,13 +1423,13 @@ msgid "" "into the given namespace." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1024 +#: ../../library/xml.etree.elementtree.rst:1057 msgid "" "Inserts *subelement* at the given position in this element. Raises :exc:" "`TypeError` if *subelement* is not an :class:`Element`." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1030 +#: ../../library/xml.etree.elementtree.rst:1063 msgid "" "Creates a tree :term:`iterator` with the current element as the root. The " "iterator iterates over this element and all elements below it, in document " @@ -1388,7 +1438,7 @@ msgid "" "structure is modified during iteration, the result is undefined." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1041 +#: ../../library/xml.etree.elementtree.rst:1074 msgid "" "Finds all matching subelements, by tag name or :ref:`path `. Returns an iterable yielding all matching elements in document " @@ -1396,33 +1446,33 @@ msgid "" "name." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1052 +#: ../../library/xml.etree.elementtree.rst:1085 msgid "" "Creates a text iterator. The iterator loops over this element and all " "subelements, in document order, and returns all inner text." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1060 +#: ../../library/xml.etree.elementtree.rst:1093 msgid "" "Creates a new element object of the same type as this element. Do not call " "this method, use the :func:`SubElement` factory function instead." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1066 +#: ../../library/xml.etree.elementtree.rst:1099 msgid "" "Removes *subelement* from the element. Unlike the find\\* methods this " "method compares elements based on the instance identity, not on tag value or " "contents." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1070 +#: ../../library/xml.etree.elementtree.rst:1103 msgid "" ":class:`Element` objects also support the following sequence type methods " "for working with subelements: :meth:`~object.__delitem__`, :meth:`~object." "__getitem__`, :meth:`~object.__setitem__`, :meth:`~object.__len__`." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1075 +#: ../../library/xml.etree.elementtree.rst:1108 msgid "" "Caution: Elements with no subelements will test as ``False``. In a future " "release of Python, all elements will test as ``True`` regardless of whether " @@ -1430,7 +1480,7 @@ msgid "" "None`` tests.::" msgstr "" -#: ../../library/xml.etree.elementtree.rst:1080 +#: ../../library/xml.etree.elementtree.rst:1113 msgid "" "element = root.find('foo')\n" "\n" @@ -1441,11 +1491,11 @@ msgid "" " print(\"element not found\")" msgstr "" -#: ../../library/xml.etree.elementtree.rst:1088 +#: ../../library/xml.etree.elementtree.rst:1121 msgid "Testing the truth value of an Element emits :exc:`DeprecationWarning`." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1091 +#: ../../library/xml.etree.elementtree.rst:1124 msgid "" "Prior to Python 3.8, the serialisation order of the XML attributes of " "elements was artificially made predictable by sorting the attributes by " @@ -1454,7 +1504,7 @@ msgid "" "attributes were originally parsed or created by user code." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1097 +#: ../../library/xml.etree.elementtree.rst:1130 msgid "" "In general, user code should try not to depend on a specific ordering of " "attributes, given that the `XML Information Set \n" " \n" @@ -1594,13 +1644,13 @@ msgid "" "" msgstr "" -#: ../../library/xml.etree.elementtree.rst:1232 +#: ../../library/xml.etree.elementtree.rst:1265 msgid "" "Example of changing the attribute \"target\" of every link in first " "paragraph::" msgstr "" -#: ../../library/xml.etree.elementtree.rst:1234 +#: ../../library/xml.etree.elementtree.rst:1267 msgid "" ">>> from xml.etree.ElementTree import ElementTree\n" ">>> tree = ElementTree()\n" @@ -1618,11 +1668,11 @@ msgid "" ">>> tree.write(\"output.xhtml\")" msgstr "" -#: ../../library/xml.etree.elementtree.rst:1252 +#: ../../library/xml.etree.elementtree.rst:1285 msgid "QName Objects" msgstr "" -#: ../../library/xml.etree.elementtree.rst:1257 +#: ../../library/xml.etree.elementtree.rst:1290 msgid "" "QName wrapper. This can be used to wrap a QName attribute value, in order " "to get proper namespace handling on output. *text_or_uri* is a string " @@ -1632,11 +1682,11 @@ msgid "" "class:`QName` instances are opaque." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1269 +#: ../../library/xml.etree.elementtree.rst:1302 msgid "TreeBuilder Objects" msgstr "" -#: ../../library/xml.etree.elementtree.rst:1275 +#: ../../library/xml.etree.elementtree.rst:1308 msgid "" "Generic element structure builder. This builder converts a sequence of " "start, data, end, comment and pi method calls to a well-formed element " @@ -1644,14 +1694,14 @@ msgid "" "custom XML parser, or a parser for some other XML-like format." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1280 +#: ../../library/xml.etree.elementtree.rst:1313 msgid "" "*element_factory*, when given, must be a callable accepting two positional " "arguments: a tag and a dict of attributes. It is expected to return a new " "element instance." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1284 +#: ../../library/xml.etree.elementtree.rst:1317 msgid "" "The *comment_factory* and *pi_factory* functions, when given, should behave " "like the :func:`Comment` and :func:`ProcessingInstruction` functions to " @@ -1661,56 +1711,56 @@ msgid "" "element (but not outside of it)." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1293 +#: ../../library/xml.etree.elementtree.rst:1326 msgid "" "Flushes the builder buffers, and returns the toplevel document element. " "Returns an :class:`Element` instance." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1299 +#: ../../library/xml.etree.elementtree.rst:1332 msgid "" "Adds text to the current element. *data* is a string. This should be " "either a bytestring, or a Unicode string." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1305 +#: ../../library/xml.etree.elementtree.rst:1338 msgid "" "Closes the current element. *tag* is the element name. Returns the closed " "element." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1311 +#: ../../library/xml.etree.elementtree.rst:1344 msgid "" "Opens a new element. *tag* is the element name. *attrs* is a dictionary " "containing element attributes. Returns the opened element." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1317 +#: ../../library/xml.etree.elementtree.rst:1350 msgid "" "Creates a comment with the given *text*. If ``insert_comments`` is true, " "this will also add it to the tree." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1325 +#: ../../library/xml.etree.elementtree.rst:1358 msgid "" "Creates a process instruction with the given *target* name and *text*. If " "``insert_pis`` is true, this will also add it to the tree." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1331 +#: ../../library/xml.etree.elementtree.rst:1364 msgid "" "In addition, a custom :class:`TreeBuilder` object can provide the following " "methods:" msgstr "" -#: ../../library/xml.etree.elementtree.rst:1336 +#: ../../library/xml.etree.elementtree.rst:1369 msgid "" "Handles a doctype declaration. *name* is the doctype name. *pubid* is the " "public identifier. *system* is the system identifier. This method does not " "exist on the default :class:`TreeBuilder` class." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1344 +#: ../../library/xml.etree.elementtree.rst:1377 msgid "" "Is called whenever the parser encounters a new namespace declaration, before " "the ``start()`` callback for the opening element that defines it. *prefix* " @@ -1718,14 +1768,14 @@ msgid "" "otherwise. *uri* is the namespace URI." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1353 +#: ../../library/xml.etree.elementtree.rst:1386 msgid "" "Is called after the ``end()`` callback of an element that declared a " "namespace prefix mapping, with the name of the *prefix* that went out of " "scope." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1365 +#: ../../library/xml.etree.elementtree.rst:1398 msgid "" "A `C14N 2.0 `_ writer. Arguments are the " "same as for the :func:`canonicalize` function. This class does not build a " @@ -1733,11 +1783,11 @@ msgid "" "using the *write* function." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1376 +#: ../../library/xml.etree.elementtree.rst:1409 msgid "XMLParser Objects" msgstr "" -#: ../../library/xml.etree.elementtree.rst:1381 +#: ../../library/xml.etree.elementtree.rst:1414 msgid "" "This class is the low-level building block of the module. It uses :mod:`xml." "parsers.expat` for efficient, event-based parsing of XML. It can be fed XML " @@ -1748,25 +1798,25 @@ msgid "" "XML file." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1389 +#: ../../library/xml.etree.elementtree.rst:1422 msgid "" "Parameters are now :ref:`keyword-only `. The *html* " "argument is no longer supported." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1396 +#: ../../library/xml.etree.elementtree.rst:1429 msgid "" "Finishes feeding data to the parser. Returns the result of calling the " "``close()`` method of the *target* passed during construction; by default, " "this is the toplevel document element." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1403 +#: ../../library/xml.etree.elementtree.rst:1436 msgid "Feeds data to the parser. *data* is encoded data." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1408 -#: ../../library/xml.etree.elementtree.rst:1486 +#: ../../library/xml.etree.elementtree.rst:1441 +#: ../../library/xml.etree.elementtree.rst:1519 msgid "" "Triggers parsing of any previously fed unparsed data, which can be used to " "ensure more immediate feedback, in particular with Expat >=2.6.0. The " @@ -1776,15 +1826,15 @@ msgid "" "xmlparser.SetReparseDeferralEnabled` for details." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1415 -#: ../../library/xml.etree.elementtree.rst:1493 +#: ../../library/xml.etree.elementtree.rst:1448 +#: ../../library/xml.etree.elementtree.rst:1526 msgid "" ":meth:`!flush` has been backported to some prior releases of CPython as a " "security fix. Check for availability using :func:`hasattr` if used in code " "running across a variety of Python versions." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1423 +#: ../../library/xml.etree.elementtree.rst:1456 msgid "" ":meth:`XMLParser.feed` calls *target*\\'s ``start(tag, attrs_dict)`` method " "for each opening tag, its ``end(tag)`` method for each closing tag, and data " @@ -1795,7 +1845,7 @@ msgid "" "of an XML file::" msgstr "" -#: ../../library/xml.etree.elementtree.rst:1431 +#: ../../library/xml.etree.elementtree.rst:1464 msgid "" ">>> from xml.etree.ElementTree import XMLParser\n" ">>> class MaxDepth: # The target object of the parser\n" @@ -1830,11 +1880,11 @@ msgid "" "4" msgstr "" -#: ../../library/xml.etree.elementtree.rst:1467 +#: ../../library/xml.etree.elementtree.rst:1500 msgid "XMLPullParser Objects" msgstr "" -#: ../../library/xml.etree.elementtree.rst:1471 +#: ../../library/xml.etree.elementtree.rst:1504 msgid "" "A pull parser suitable for non-blocking applications. Its input-side API is " "similar to that of :class:`XMLParser`, but instead of pushing calls to a " @@ -1846,11 +1896,11 @@ msgid "" "If *events* is omitted, only ``\"end\"`` events are reported." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1482 +#: ../../library/xml.etree.elementtree.rst:1515 msgid "Feed the given bytes data to the parser." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1502 +#: ../../library/xml.etree.elementtree.rst:1535 msgid "" "Signal the parser that the data stream is terminated. Unlike :meth:" "`XMLParser.close`, this method always returns :const:`None`. Any events not " @@ -1858,7 +1908,7 @@ msgid "" "`read_events`." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1509 +#: ../../library/xml.etree.elementtree.rst:1542 msgid "" "Return an iterator over the events which have been encountered in the data " "fed to the parser. The iterator yields ``(event, elem)`` pairs, where " @@ -1867,25 +1917,25 @@ msgid "" "follows." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1515 +#: ../../library/xml.etree.elementtree.rst:1548 msgid "``start``, ``end``: the current Element." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1516 +#: ../../library/xml.etree.elementtree.rst:1549 msgid "``comment``, ``pi``: the current comment / processing instruction" msgstr "" -#: ../../library/xml.etree.elementtree.rst:1517 +#: ../../library/xml.etree.elementtree.rst:1550 msgid "" "``start-ns``: a tuple ``(prefix, uri)`` naming the declared namespace " "mapping." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1519 +#: ../../library/xml.etree.elementtree.rst:1552 msgid "``end-ns``: :const:`None` (this may change in a future version)" msgstr "" -#: ../../library/xml.etree.elementtree.rst:1521 +#: ../../library/xml.etree.elementtree.rst:1554 msgid "" "Events provided in a previous call to :meth:`read_events` will not be " "yielded again. Events are consumed from the internal queue only when they " @@ -1894,7 +1944,7 @@ msgid "" "results." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1529 +#: ../../library/xml.etree.elementtree.rst:1562 msgid "" ":class:`XMLPullParser` only guarantees that it has seen the \">\" character " "of a starting tag when it emits a \"start\" event, so the attributes are " @@ -1903,11 +1953,11 @@ msgid "" "be present." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1544 +#: ../../library/xml.etree.elementtree.rst:1577 msgid "Exceptions" msgstr "Ausnahmen" -#: ../../library/xml.etree.elementtree.rst:1548 +#: ../../library/xml.etree.elementtree.rst:1581 msgid "" "XML parse error, raised by the various parsing methods in this module when " "parsing fails. The string representation of an instance of this exception " @@ -1915,22 +1965,22 @@ msgid "" "following attributes available:" msgstr "" -#: ../../library/xml.etree.elementtree.rst:1555 +#: ../../library/xml.etree.elementtree.rst:1588 msgid "" "A numeric error code from the expat parser. See the documentation of :mod:" "`xml.parsers.expat` for the list of error codes and their meanings." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1560 +#: ../../library/xml.etree.elementtree.rst:1593 msgid "" "A tuple of *line*, *column* numbers, specifying where the error occurred." msgstr "" -#: ../../library/xml.etree.elementtree.rst:1563 +#: ../../library/xml.etree.elementtree.rst:1596 msgid "Footnotes" msgstr "Fußnoten" -#: ../../library/xml.etree.elementtree.rst:1564 +#: ../../library/xml.etree.elementtree.rst:1597 msgid "" "The encoding string included in XML output should conform to the appropriate " "standards. For example, \"UTF-8\" is valid, but \"UTF8\" is not. See " diff --git a/tutorial/inputoutput.po b/tutorial/inputoutput.po index 276429b1..b87e1395 100644 --- a/tutorial/inputoutput.po +++ b/tutorial/inputoutput.po @@ -11,7 +11,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-22 12:07+0200\n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" "PO-Revision-Date: 2026-08-30 00:02+0000\n" "Last-Translator: Swen Bachmann <142266608+sba72@users.noreply.github.com>\n" "Language-Team: German (https://app.transifex.com/python-doc/teams/5390/de/)\n" @@ -22,7 +22,8 @@ msgstr "" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../../tutorial/inputoutput.rst:5 -msgid "Input and Output" +#, fuzzy +msgid "Input and output" msgstr "Eingabe und Ausgabe" #: ../../tutorial/inputoutput.rst:7 @@ -37,7 +38,8 @@ msgstr "" "Kapitel werden einige dieser Möglichkeiten behandelt." #: ../../tutorial/inputoutput.rst:15 -msgid "Fancier Output Formatting" +#, fuzzy +msgid "Fancier output formatting" msgstr "Erweiterte Formatierungsmöglichkeiten für die Ausgabe" #: ../../tutorial/inputoutput.rst:17 @@ -242,8 +244,9 @@ msgstr "" "deutlich weniger Kontrolle über die Formatierung." #: ../../tutorial/inputoutput.rst:115 -msgid "Formatted String Literals" -msgstr "Formatierte Zeichenfolgenliterale" +#, fuzzy +msgid "Formatted string literals" +msgstr "formatiertes String-Literal" #: ../../tutorial/inputoutput.rst:117 msgid "" @@ -349,7 +352,8 @@ msgstr "" "diese Formatvorgaben findest du im Referenzhandbuch unter :ref:`formatspec`." #: ../../tutorial/inputoutput.rst:167 -msgid "The String format() Method" +#, fuzzy +msgid "The string format() method" msgstr "Die String-Methode format()" #: ../../tutorial/inputoutput.rst:169 @@ -539,7 +543,8 @@ msgstr "" "`str.format` findest du unter :ref:`formatstrings`." #: ../../tutorial/inputoutput.rst:244 -msgid "Manual String Formatting" +#, fuzzy +msgid "Manual string formatting" msgstr "Manuelle Formatierung von Zeichenfolgen" #: ../../tutorial/inputoutput.rst:246 @@ -672,24 +677,26 @@ msgstr "" "Weitere Informationen findest du im Abschnitt :ref:`old-string-formatting`." #: ../../tutorial/inputoutput.rst:307 -msgid "Reading and Writing Files" +#, fuzzy +msgid "Reading and writing files" msgstr "Dateien lesen und schreiben" #: ../../tutorial/inputoutput.rst:313 +#, fuzzy msgid "" ":func:`open` returns a :term:`file object`, and is most commonly used with " -"two positional arguments and one keyword argument: ``open(filename, mode, " -"encoding=None)``" +"two positional arguments: ``open(filename, mode)``" msgstr "" ":func:`open` gibt ein :term:`Dateiobjekt ` zurück und wird " "meist mit zwei Positionsargumenten und einem Schlüsselwortargument " "verwendet: ``open(filename, mode, encoding=None)``" -#: ../../tutorial/inputoutput.rst:319 -msgid ">>> f = open('workfile', 'w', encoding=\"utf-8\")" +#: ../../tutorial/inputoutput.rst:318 +#, fuzzy +msgid ">>> f = open('workfile', 'w')" msgstr ">>> f = open('workfile', 'w', encoding=\"utf-8\")" -#: ../../tutorial/inputoutput.rst:326 +#: ../../tutorial/inputoutput.rst:325 msgid "" "The first argument is a string containing the filename. The second argument " "is another string containing a few characters describing the way in which " @@ -710,16 +717,15 @@ msgstr "" "Lesen als auch zum Schreiben. Das Argument *mode* ist optional; wird es " "weggelassen, wird ``'r'`` angenommen." -#: ../../tutorial/inputoutput.rst:335 +#: ../../tutorial/inputoutput.rst:334 +#, fuzzy msgid "" "Normally, files are opened in :dfn:`text mode`, that means, you read and " "write strings from and to the file, which are encoded in a specific " -"*encoding*. If *encoding* is not specified, the default is platform " -"dependent (see :func:`open`). Because UTF-8 is the modern de-facto standard, " -"``encoding=\"utf-8\"`` is recommended unless you know that you need to use a " -"different encoding. Appending a ``'b'`` to the mode opens the file in :dfn:" -"`binary mode`. Binary mode data is read and written as :class:`bytes` " -"objects. You can not specify *encoding* when opening file in binary mode." +"*encoding*. If *encoding* is not specified, the default is UTF-8 (see :func:" +"`open`). Appending a ``'b'`` to the mode opens the file in :dfn:`binary " +"mode`. Binary mode data is read and written as :class:`bytes` objects. You " +"can not specify *encoding* when opening file in binary mode." msgstr "" "Normalerweise werden Dateien im :dfn:`Textmodus` geöffnet, das heißt, du " "liest Zeichenketten aus der Datei aus und schreibst Zeichenketten in die " @@ -732,7 +738,7 @@ msgstr "" "als :class:`bytes` -Objekte gelesen und geschrieben. Beim Öffnen einer Datei " "im Binärmodus kannst du keine *Kodierung* angeben." -#: ../../tutorial/inputoutput.rst:345 +#: ../../tutorial/inputoutput.rst:341 msgid "" "In text mode, the default when reading is to convert platform-specific line " "endings (``\\n`` on Unix, ``\\r\\n`` on Windows) to just ``\\n``. When " @@ -751,7 +757,7 @@ msgstr "" "`EXE` zu Datenverlusten. Achte daher unbedingt darauf, beim Lesen und " "Schreiben solcher Dateien den Binärmodus zu verwenden." -#: ../../tutorial/inputoutput.rst:353 +#: ../../tutorial/inputoutput.rst:349 msgid "" "It is good practice to use the :keyword:`with` keyword when dealing with " "file objects. The advantage is that the file is properly closed after its " @@ -766,9 +772,10 @@ msgstr "" "`!with` ist zudem wesentlich kürzer als das Schreiben der entsprechenden :" "keyword:`try`\\ -\\ :keyword:`finally`-Blöcke::" -#: ../../tutorial/inputoutput.rst:359 +#: ../../tutorial/inputoutput.rst:355 +#, fuzzy msgid "" -">>> with open('workfile', encoding=\"utf-8\") as f:\n" +">>> with open('workfile') as f:\n" "... read_data = f.read()\n" "\n" ">>> # We can check that the file has been automatically closed.\n" @@ -782,7 +789,7 @@ msgstr "" ">>> f.closed\n" "True" -#: ../../tutorial/inputoutput.rst:366 +#: ../../tutorial/inputoutput.rst:362 msgid "" "If you're not using the :keyword:`with` keyword, then you should call ``f." "close()`` to close the file and immediately free up any system resources " @@ -792,7 +799,7 @@ msgstr "" "Funktion ``f.close()`` aufrufen, um die Datei zu schließen und die von ihr " "belegten Systemressourcen sofort freizugeben." -#: ../../tutorial/inputoutput.rst:371 +#: ../../tutorial/inputoutput.rst:367 msgid "" "Calling ``f.write()`` without using the :keyword:`!with` keyword or calling " "``f.close()`` **might** result in the arguments of ``f.write()`` not being " @@ -803,7 +810,7 @@ msgstr "" "``f.write()`` nicht vollständig auf die Festplatte geschrieben werden, " "selbst wenn das Programm erfolgreich beendet wird." -#: ../../tutorial/inputoutput.rst:379 +#: ../../tutorial/inputoutput.rst:375 msgid "" "After a file object is closed, either by a :keyword:`with` statement or by " "calling ``f.close()``, attempts to use the file object will automatically " @@ -813,7 +820,7 @@ msgstr "" "`with`-Anweisung oder durch den Aufruf von ``f.close()``– schlagen alle " "Versuche, das Dateiobjekt zu verwenden, automatisch fehl. ::" -#: ../../tutorial/inputoutput.rst:383 +#: ../../tutorial/inputoutput.rst:379 msgid "" ">>> f.close()\n" ">>> f.read()\n" @@ -827,11 +834,12 @@ msgstr "" " Datei \"\", Zeile 1, in \n" "ValueError: E/A-Vorgang an einer geschlossenen Datei." -#: ../../tutorial/inputoutput.rst:393 -msgid "Methods of File Objects" +#: ../../tutorial/inputoutput.rst:389 +#, fuzzy +msgid "Methods of file objects" msgstr "Methoden von Datei-Objekten" -#: ../../tutorial/inputoutput.rst:395 +#: ../../tutorial/inputoutput.rst:391 msgid "" "The rest of the examples in this section will assume that a file object " "called ``f`` has already been created." @@ -839,7 +847,7 @@ msgstr "" "In den übrigen Beispielen dieses Abschnitts wird davon ausgegangen, dass " "bereits ein Dateiobjekt namens ``f`` angelegt wurde." -#: ../../tutorial/inputoutput.rst:398 +#: ../../tutorial/inputoutput.rst:394 msgid "" "To read a file's contents, call ``f.read(size)``, which reads some quantity " "of data and returns it as a string (in text mode) or bytes object (in binary " @@ -861,7 +869,7 @@ msgstr "" "Datei erreicht wurde, gibt ``f.read()`` eine leere Zeichenkette zurück " "(``''``). ::" -#: ../../tutorial/inputoutput.rst:407 +#: ../../tutorial/inputoutput.rst:403 msgid "" ">>> f.read()\n" "'This is the entire file.\\n'\n" @@ -873,7 +881,7 @@ msgstr "" ">>> f.read()\n" "''" -#: ../../tutorial/inputoutput.rst:412 +#: ../../tutorial/inputoutput.rst:408 msgid "" "``f.readline()`` reads a single line from the file; a newline character " "(``\\n``) is left at the end of the string, and is only omitted on the last " @@ -890,7 +898,7 @@ msgstr "" "erreicht, während eine Leerzeile durch ``'\\n'`` dargestellt wird, eine " "Zeichenkette, die nur ein einziges Zeilenendezeichen enthält. ::" -#: ../../tutorial/inputoutput.rst:419 +#: ../../tutorial/inputoutput.rst:415 msgid "" ">>> f.readline()\n" "'This is the first line of the file.\\n'\n" @@ -906,7 +914,7 @@ msgstr "" ">>> f.readline()\n" "''" -#: ../../tutorial/inputoutput.rst:426 +#: ../../tutorial/inputoutput.rst:422 msgid "" "For reading lines from a file, you can loop over the file object. This is " "memory efficient, fast, and leads to simple code::" @@ -915,7 +923,7 @@ msgstr "" "Schleife durchlaufen. Dies ist speichereffizient, schnell und führt zu " "einfachem Code::" -#: ../../tutorial/inputoutput.rst:429 +#: ../../tutorial/inputoutput.rst:425 msgid "" ">>> for line in f:\n" "... print(line, end='')\n" @@ -929,7 +937,7 @@ msgstr "" "Dies ist die erste Zeile der Datei.\n" "Zweite Zeile der Datei" -#: ../../tutorial/inputoutput.rst:435 +#: ../../tutorial/inputoutput.rst:431 msgid "" "If you want to read all the lines of a file in a list you can also use " "``list(f)`` or ``f.readlines()``." @@ -937,7 +945,7 @@ msgstr "" "Wenn du alle Zeilen einer Datei in eine Liste einlesen möchtest, kannst du " "auch ``list(f)`` oder ``f.readlines()`` verwenden." -#: ../../tutorial/inputoutput.rst:438 +#: ../../tutorial/inputoutput.rst:434 msgid "" "``f.write(string)`` writes the contents of *string* to the file, returning " "the number of characters written. ::" @@ -945,7 +953,7 @@ msgstr "" "``f.write(string)`` Schreibt den Inhalt von *string* in die Datei und gibt " "die Anzahl der geschriebenen Zeichen zurück. ::" -#: ../../tutorial/inputoutput.rst:441 +#: ../../tutorial/inputoutput.rst:437 msgid "" ">>> f.write('This is a test\\n')\n" "15" @@ -953,7 +961,7 @@ msgstr "" ">>> f.write('Das ist ein Test\\n')\n" "15" -#: ../../tutorial/inputoutput.rst:444 +#: ../../tutorial/inputoutput.rst:440 msgid "" "Other types of objects need to be converted -- either to a string (in text " "mode) or a bytes object (in binary mode) -- before writing them::" @@ -961,7 +969,7 @@ msgstr "" "Andere Objekttypen müssen vor dem Schreiben konvertiert werden – entweder in " "eine Zeichenkette (im Textmodus) oder in ein Byte-Objekt (im Binärmodus):" -#: ../../tutorial/inputoutput.rst:447 +#: ../../tutorial/inputoutput.rst:443 msgid "" ">>> value = ('the answer', 42)\n" ">>> s = str(value) # convert the tuple to string\n" @@ -973,7 +981,7 @@ msgstr "" ">>> f.write(s)\n" "18" -#: ../../tutorial/inputoutput.rst:452 +#: ../../tutorial/inputoutput.rst:448 msgid "" "``f.tell()`` returns an integer giving the file object's current position in " "the file represented as number of bytes from the beginning of the file when " @@ -983,7 +991,7 @@ msgstr "" "Dateiobjekts in der Datei angibt – im Binärmodus als Anzahl der Bytes ab dem " "Dateianfang und im Textmodus als undurchsichtige Zahl." -#: ../../tutorial/inputoutput.rst:456 +#: ../../tutorial/inputoutput.rst:452 msgid "" "To change the file object's position, use ``f.seek(offset, whence)``. The " "position is computed from adding *offset* to a reference point; the " @@ -1002,7 +1010,7 @@ msgstr "" "standardmäßig auf 0 gesetzt, wobei der Anfang der Datei als Bezugspunkt " "verwendet wird. ::" -#: ../../tutorial/inputoutput.rst:463 +#: ../../tutorial/inputoutput.rst:459 msgid "" ">>> f = open('workfile', 'rb+')\n" ">>> f.write(b'0123456789abcdef')\n" @@ -1028,7 +1036,7 @@ msgstr "" ">>> f.read(1)\n" "b'd'" -#: ../../tutorial/inputoutput.rst:475 +#: ../../tutorial/inputoutput.rst:471 msgid "" "In text files (those opened without a ``b`` in the mode string), only seeks " "relative to the beginning of the file are allowed (the exception being " @@ -1042,7 +1050,7 @@ msgstr "" "sind diejenigen, die von ``f.tell()`` zurückgegeben werden, oder Null. Jeder " "andere *offset*-Wert führt zu undefiniertem Verhalten." -#: ../../tutorial/inputoutput.rst:481 +#: ../../tutorial/inputoutput.rst:477 msgid "" "File objects have some additional methods, such as :meth:`~io.IOBase.isatty` " "and :meth:`~io.IOBase.truncate` which are less frequently used; consult the " @@ -1053,11 +1061,11 @@ msgstr "" "seltener verwendet werden; eine vollständige Anleitung zu Dateiobjekten " "findest du in der Bibliotheksreferenz." -#: ../../tutorial/inputoutput.rst:489 +#: ../../tutorial/inputoutput.rst:485 msgid "Saving structured data with :mod:`json`" msgstr "Strukturierte Daten speichern mit :mod:`json`" -#: ../../tutorial/inputoutput.rst:493 +#: ../../tutorial/inputoutput.rst:489 msgid "" "Strings can easily be written to and read from a file. Numbers take a bit " "more effort, since the :meth:`~io.TextIOBase.read` method only returns " @@ -1074,7 +1082,7 @@ msgstr "" "Datentypen wie verschachtelte Listen und Wörterbücher speichern möchtest, " "wird das manuelle Parsen und Serialisieren kompliziert." -#: ../../tutorial/inputoutput.rst:500 +#: ../../tutorial/inputoutput.rst:496 msgid "" "Rather than having users constantly writing and debugging code to save " "complicated data types to files, Python allows you to use the popular data " @@ -1098,7 +1106,7 @@ msgstr "" "Datei oder einem Datenspeicher abgelegt oder über eine Netzwerkverbindung an " "einen entfernten Rechner gesendet worden sein." -#: ../../tutorial/inputoutput.rst:511 +#: ../../tutorial/inputoutput.rst:507 msgid "" "The JSON format is commonly used by modern applications to allow for data " "exchange. Many programmers are already familiar with it, which makes it a " @@ -1108,7 +1116,7 @@ msgstr "" "verwendet. Viele Programmierer sind bereits damit vertraut, was es zu einer " "guten Wahl für die Interoperabilität macht." -#: ../../tutorial/inputoutput.rst:515 +#: ../../tutorial/inputoutput.rst:511 msgid "" "If you have an object ``x``, you can view its JSON string representation " "with a simple line of code::" @@ -1116,7 +1124,7 @@ msgstr "" "Wenn du ein Objekt vom Typ ``x`` hast, kannst du dessen JSON-" "Zeichenkettendarstellung mit einer einzigen Codezeile anzeigen::" -#: ../../tutorial/inputoutput.rst:518 +#: ../../tutorial/inputoutput.rst:514 msgid "" ">>> import json\n" ">>> x = [1, 'simple', 'list']\n" @@ -1128,7 +1136,7 @@ msgstr "" ">>> json.dumps(x)\n" "'[1, \"simple\", \"list\"]'" -#: ../../tutorial/inputoutput.rst:523 +#: ../../tutorial/inputoutput.rst:519 msgid "" "Another variant of the :func:`~json.dumps` function, called :func:`~json." "dump`, simply serializes the object to a :term:`text file`. So if ``f`` is " @@ -1139,11 +1147,11 @@ msgstr "" "`. Wenn also ``f`` ein zum Schreiben geöffnetes :term:`Textdatei " "`-Objekt ist, können wir Folgendes tun::" -#: ../../tutorial/inputoutput.rst:527 +#: ../../tutorial/inputoutput.rst:523 msgid "json.dump(x, f)" msgstr "json.dump(x, f)" -#: ../../tutorial/inputoutput.rst:529 +#: ../../tutorial/inputoutput.rst:525 msgid "" "To decode the object again, if ``f`` is a :term:`binary file` or :term:`text " "file` object which has been opened for reading::" @@ -1152,20 +1160,21 @@ msgstr "" "file>`- oder :term:`Textdatei `-Objekt ist, das zum Lesen " "geöffnet wurde::" -#: ../../tutorial/inputoutput.rst:532 +#: ../../tutorial/inputoutput.rst:528 msgid "x = json.load(f)" msgstr "x = json.load(f)" -#: ../../tutorial/inputoutput.rst:535 +#: ../../tutorial/inputoutput.rst:531 +#, fuzzy msgid "" -"JSON files must be encoded in UTF-8. Use ``encoding=\"utf-8\"`` when opening " -"JSON file as a :term:`text file` for both of reading and writing." +"JSON files must be encoded in UTF-8, the default encoding for :term:`text " +"files `." msgstr "" "JSON-Dateien müssen in UTF-8 kodiert sein. Verwende die Option " "``encoding=\"utf-8\"``, wenn du eine JSON-Datei als :term:`Textdatei ` öffnest, sowohl beim Lesen als auch beim Schreiben." -#: ../../tutorial/inputoutput.rst:538 +#: ../../tutorial/inputoutput.rst:534 msgid "" "This simple serialization technique can handle lists and dictionaries, but " "serializing arbitrary class instances in JSON requires a bit of extra " @@ -1177,11 +1186,11 @@ msgstr "" "erfordert etwas mehr Aufwand. Die Dokumentation zum Modul :mod:`json` " "enthält eine Erläuterung dazu." -#: ../../tutorial/inputoutput.rst:544 +#: ../../tutorial/inputoutput.rst:540 msgid ":mod:`pickle` - the pickle module" msgstr ":mod:`pickle` - das Pickle-Modul" -#: ../../tutorial/inputoutput.rst:546 +#: ../../tutorial/inputoutput.rst:542 msgid "" "Contrary to :ref:`JSON `, *pickle* is a protocol which allows the " "serialization of arbitrarily complex Python objects. As such, it is " @@ -1242,10 +1251,13 @@ msgstr "object" msgid "file" msgstr "file" -#: ../../tutorial/inputoutput.rst:491 +#: ../../tutorial/inputoutput.rst:487 msgid "module" msgstr "module" -#: ../../tutorial/inputoutput.rst:491 +#: ../../tutorial/inputoutput.rst:487 msgid "json" msgstr "json" + +#~ msgid "Formatted String Literals" +#~ msgstr "Formatierte Zeichenfolgenliterale" diff --git a/using/windows.po b/using/windows.po index 4cc70c92..a86d7e12 100644 --- a/using/windows.po +++ b/using/windows.po @@ -11,7 +11,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-09-14 20:17+0000\n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: python-doc bot, 2025\n" "Language-Team: German (https://app.transifex.com/python-doc/teams/5390/de/)\n" @@ -608,8 +608,8 @@ msgid "Environment Variable" msgstr "" #: ../../using/windows.rst:419 ../../using/windows.rst:755 -#: ../../using/windows.rst:1627 ../../using/windows.rst:1647 -#: ../../using/windows.rst:2237 +#: ../../using/windows.rst:1628 ../../using/windows.rst:1648 +#: ../../using/windows.rst:2238 msgid "Description" msgstr "Beschreibung" @@ -813,7 +813,7 @@ msgid "" "format`` would be specified as ``{\"list\": {\"format\": \"table\"}}``." msgstr "" -#: ../../using/windows.rst:523 ../../using/windows.rst:1993 +#: ../../using/windows.rst:523 ../../using/windows.rst:1994 msgid "Shebang lines" msgstr "" @@ -853,15 +853,15 @@ msgstr "" msgid "````" msgstr "" -#: ../../using/windows.rst:541 ../../using/windows.rst:2011 +#: ../../using/windows.rst:541 ../../using/windows.rst:2012 msgid "For example, if the first line of your script starts with" msgstr "" -#: ../../using/windows.rst:543 ../../using/windows.rst:2013 +#: ../../using/windows.rst:543 ../../using/windows.rst:2014 msgid "#! /usr/bin/python" msgstr "" -#: ../../using/windows.rst:547 ../../using/windows.rst:2017 +#: ../../using/windows.rst:547 ../../using/windows.rst:2018 msgid "" "The default Python or an active virtual environment will be located and " "used. As many Python scripts written to work on Unix will already have this " @@ -1276,7 +1276,7 @@ msgid "" "currently only for :ref:`index signatures `." msgstr "" -#: ../../using/windows.rst:824 ../../using/windows.rst:1806 +#: ../../using/windows.rst:824 ../../using/windows.rst:1807 msgid "Installing free-threaded binaries" msgstr "" @@ -1971,11 +1971,11 @@ msgid "" "please install Python 3.12." msgstr "" -#: ../../using/windows.rst:1307 ../../using/windows.rst:1593 +#: ../../using/windows.rst:1307 ../../using/windows.rst:1594 msgid "Removing the MAX_PATH limitation" msgstr "" -#: ../../using/windows.rst:1309 ../../using/windows.rst:1595 +#: ../../using/windows.rst:1309 ../../using/windows.rst:1596 msgid "" "Windows historically has limited path lengths to 260 characters. This meant " "that paths longer than this would not resolve and errors would result." @@ -1990,7 +1990,7 @@ msgid "" "``HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\FileSystem``." msgstr "" -#: ../../using/windows.rst:1317 ../../using/windows.rst:1604 +#: ../../using/windows.rst:1317 ../../using/windows.rst:1605 msgid "" "This allows the :func:`open` function, the :mod:`os` module and most other " "path functionality to accept and return paths longer than 260 characters." @@ -2013,25 +2013,26 @@ msgstr "" #: ../../using/windows.rst:1334 msgid "" "Windows still uses legacy encodings for the system encoding (the ANSI Code " -"Page). Python uses it for the default encoding of text files (e.g. :func:" -"`locale.getencoding`)." +"Page). When the :ref:`Python UTF-8 Mode ` is disabled, Python " +"uses the ANSI Code Page as the default encoding of text files, as returned " +"by :func:`locale.getencoding`." msgstr "" -#: ../../using/windows.rst:1338 +#: ../../using/windows.rst:1339 msgid "" "This may cause issues because UTF-8 is widely used on the internet and most " "Unix systems, including WSL (Windows Subsystem for Linux)." msgstr "" -#: ../../using/windows.rst:1341 +#: ../../using/windows.rst:1342 msgid "" -"The :ref:`Python UTF-8 Mode `, enabled by default, can help by " -"changing the default text encoding to UTF-8. When the :ref:`UTF-8 mode ` is enabled, you can still use the system encoding (the ANSI Code " -"Page) via the \"mbcs\" codec." +"The :ref:`Python UTF-8 Mode `, enabled by default, ignores the " +"system encoding and uses UTF-8 as the default text encoding. When the :ref:" +"`UTF-8 mode ` is enabled, you can still use the system encoding " +"(the ANSI Code Page) via the \"mbcs\" codec." msgstr "" -#: ../../using/windows.rst:1346 +#: ../../using/windows.rst:1347 msgid "" "You can disable the :ref:`Python UTF-8 Mode ` via the ``-X " "utf8=0`` command line option, or the ``PYTHONUTF8=0`` environment variable. " @@ -2039,7 +2040,7 @@ msgid "" "envvars` for how to modify environment variables." msgstr "" -#: ../../using/windows.rst:1352 +#: ../../using/windows.rst:1353 msgid "" "Adding ``PYTHONUTF8={0,1}`` to the default environment variables will affect " "all Python 3.7+ applications on your system. If you have any Python 3.7+ " @@ -2048,45 +2049,45 @@ msgid "" "option." msgstr "" -#: ../../using/windows.rst:1359 +#: ../../using/windows.rst:1360 msgid "" "Even when UTF-8 mode is disabled, Python uses UTF-8 by default on Windows " "for:" msgstr "" -#: ../../using/windows.rst:1362 +#: ../../using/windows.rst:1363 msgid "Console I/O including standard I/O (see :pep:`528` for details)." msgstr "" -#: ../../using/windows.rst:1363 +#: ../../using/windows.rst:1364 msgid "" "The :term:`filesystem encoding ` " "(see :pep:`529` for details)." msgstr "" -#: ../../using/windows.rst:1370 +#: ../../using/windows.rst:1371 msgid "Finding modules" msgstr "Module finden" -#: ../../using/windows.rst:1372 +#: ../../using/windows.rst:1373 msgid "" "These notes supplement the description at :ref:`sys-path-init` with detailed " "Windows notes." msgstr "" -#: ../../using/windows.rst:1375 +#: ../../using/windows.rst:1376 msgid "" "When no ``._pth`` file is found, this is how :data:`sys.path` is populated " "on Windows:" msgstr "" -#: ../../using/windows.rst:1378 +#: ../../using/windows.rst:1379 msgid "" "An empty entry is added at the start, which corresponds to the current " "directory." msgstr "" -#: ../../using/windows.rst:1381 +#: ../../using/windows.rst:1382 msgid "" "If the environment variable :envvar:`PYTHONPATH` exists, as described in :" "ref:`using-on-envvars`, its entries are added next. Note that on Windows, " @@ -2094,7 +2095,7 @@ msgid "" "from the colon used in drive identifiers (``C:\\`` etc.)." msgstr "" -#: ../../using/windows.rst:1386 +#: ../../using/windows.rst:1387 msgid "" "Additional \"application paths\" can be added in the registry as subkeys of :" "samp:`\\\\SOFTWARE\\\\Python\\\\PythonCore\\\\{version}\\\\PythonPath` under " @@ -2104,7 +2105,7 @@ msgid "" "installers only use HKLM, so HKCU is typically empty.)" msgstr "" -#: ../../using/windows.rst:1393 +#: ../../using/windows.rst:1394 msgid "" "If the environment variable :envvar:`PYTHONHOME` is set, it is assumed as " "\"Python Home\". Otherwise, the path of the main Python executable is used " @@ -2115,31 +2116,31 @@ msgid "" "PythonPath stored in the registry." msgstr "" -#: ../../using/windows.rst:1401 +#: ../../using/windows.rst:1402 msgid "" "If the Python Home cannot be located, no :envvar:`PYTHONPATH` is specified " "in the environment, and no registry entries can be found, a default path " "with relative entries is used (e.g. ``.\\Lib;.\\plat-win``, etc)." msgstr "" -#: ../../using/windows.rst:1405 +#: ../../using/windows.rst:1406 msgid "" "If a ``pyvenv.cfg`` file is found alongside the main executable or in the " "directory one level above the executable, the following variations apply:" msgstr "" -#: ../../using/windows.rst:1408 +#: ../../using/windows.rst:1409 msgid "" "If ``home`` is an absolute path and :envvar:`PYTHONHOME` is not set, this " "path is used instead of the path to the main executable when deducing the " "home location." msgstr "" -#: ../../using/windows.rst:1412 +#: ../../using/windows.rst:1413 msgid "The end result of all this is:" msgstr "" -#: ../../using/windows.rst:1414 +#: ../../using/windows.rst:1415 msgid "" "When running :file:`python.exe`, or any other .exe in the main Python " "directory (either an installed version, or directly from the PCbuild " @@ -2147,7 +2148,7 @@ msgid "" "ignored. Other \"application paths\" in the registry are always read." msgstr "" -#: ../../using/windows.rst:1419 +#: ../../using/windows.rst:1420 msgid "" "When Python is hosted in another .exe (different directory, embedded via " "COM, etc), the \"Python Home\" will not be deduced, so the core path from " @@ -2155,20 +2156,20 @@ msgid "" "always read." msgstr "" -#: ../../using/windows.rst:1423 +#: ../../using/windows.rst:1424 msgid "" "If Python can't find its home and there are no registry value (frozen .exe, " "some very strange installation setup) you get a path with some default, but " "relative, paths." msgstr "" -#: ../../using/windows.rst:1427 +#: ../../using/windows.rst:1428 msgid "" "For those who want to bundle Python into their application or distribution, " "the following advice will prevent conflicts with other installations:" msgstr "" -#: ../../using/windows.rst:1430 +#: ../../using/windows.rst:1431 msgid "" "Include a ``._pth`` file alongside your executable containing the " "directories to include. This will ignore paths listed in the registry and " @@ -2176,20 +2177,20 @@ msgid "" "listed." msgstr "" -#: ../../using/windows.rst:1435 +#: ../../using/windows.rst:1436 msgid "" "If you are loading :file:`python3.dll` or :file:`python37.dll` in your own " "executable, explicitly set :c:member:`PyConfig.module_search_paths` before :" "c:func:`Py_InitializeFromConfig`." msgstr "" -#: ../../using/windows.rst:1439 +#: ../../using/windows.rst:1440 msgid "" "Clear and/or overwrite :envvar:`PYTHONPATH` and set :envvar:`PYTHONHOME` " "before launching :file:`python.exe` from your application." msgstr "" -#: ../../using/windows.rst:1442 +#: ../../using/windows.rst:1443 msgid "" "If you cannot use the previous suggestions (for example, you are a " "distribution that allows people to run :file:`python.exe` directly), ensure " @@ -2198,7 +2199,7 @@ msgid "" "correctly named ZIP file will be detected instead.)" msgstr "" -#: ../../using/windows.rst:1448 +#: ../../using/windows.rst:1449 msgid "" "These will ensure that the files in a system-wide installation will not take " "precedence over the copy of the standard library bundled with your " @@ -2208,19 +2209,19 @@ msgid "" "packages." msgstr "" -#: ../../using/windows.rst:1456 +#: ../../using/windows.rst:1457 msgid "" "Add ``._pth`` file support and removes ``applocal`` option from ``pyvenv." "cfg``." msgstr "" -#: ../../using/windows.rst:1461 +#: ../../using/windows.rst:1462 msgid "" "Add :file:`python{XX}.zip` as a potential landmark when directly adjacent to " "the executable." msgstr "" -#: ../../using/windows.rst:1466 +#: ../../using/windows.rst:1467 msgid "" "Modules specified in the registry under ``Modules`` (not ``PythonPath``) may " "be imported by :class:`importlib.machinery.WindowsRegistryFinder`. This " @@ -2228,86 +2229,86 @@ msgid "" "explicitly added to :data:`sys.meta_path` in the future." msgstr "" -#: ../../using/windows.rst:1472 +#: ../../using/windows.rst:1473 msgid "Additional modules" msgstr "" -#: ../../using/windows.rst:1474 +#: ../../using/windows.rst:1475 msgid "" "Even though Python aims to be portable among all platforms, there are " "features that are unique to Windows. A couple of modules, both in the " "standard library and external, and snippets exist to use these features." msgstr "" -#: ../../using/windows.rst:1478 +#: ../../using/windows.rst:1479 msgid "" "The Windows-specific standard modules are documented in :ref:`mswin-specific-" "services`." msgstr "" -#: ../../using/windows.rst:1482 +#: ../../using/windows.rst:1483 msgid "PyWin32" msgstr "" -#: ../../using/windows.rst:1484 +#: ../../using/windows.rst:1485 msgid "" "The :pypi:`PyWin32` module by Mark Hammond is a collection of modules for " "advanced Windows-specific support. This includes utilities for:" msgstr "" -#: ../../using/windows.rst:1488 +#: ../../using/windows.rst:1489 msgid "" "`Component Object Model `_ (COM)" msgstr "" -#: ../../using/windows.rst:1491 +#: ../../using/windows.rst:1492 msgid "Win32 API calls" msgstr "" -#: ../../using/windows.rst:1492 +#: ../../using/windows.rst:1493 msgid "Registry" msgstr "" -#: ../../using/windows.rst:1493 +#: ../../using/windows.rst:1494 msgid "Event log" msgstr "" -#: ../../using/windows.rst:1494 +#: ../../using/windows.rst:1495 msgid "" "`Microsoft Foundation Classes `_ (MFC) user interfaces" msgstr "" -#: ../../using/windows.rst:1498 +#: ../../using/windows.rst:1499 msgid "" "`PythonWin `_ is a sample MFC application shipped with PyWin32. " "It is an embeddable IDE with a built-in debugger." msgstr "" -#: ../../using/windows.rst:1504 +#: ../../using/windows.rst:1505 msgid "" "`Win32 How Do I...? `_" msgstr "" -#: ../../using/windows.rst:1505 +#: ../../using/windows.rst:1506 msgid "by Tim Golden" msgstr "" -#: ../../using/windows.rst:1507 +#: ../../using/windows.rst:1508 msgid "`Python and COM `_" msgstr "" -#: ../../using/windows.rst:1508 +#: ../../using/windows.rst:1509 msgid "by David and Paul Boddie" msgstr "" -#: ../../using/windows.rst:1512 +#: ../../using/windows.rst:1513 msgid "cx_Freeze" msgstr "" -#: ../../using/windows.rst:1514 +#: ../../using/windows.rst:1515 msgid "" "`cx_Freeze `_ wraps Python " "scripts into executable Windows programs (:file:`{*}.exe` files). When you " @@ -2315,11 +2316,11 @@ msgid "" "users to install Python." msgstr "" -#: ../../using/windows.rst:1521 +#: ../../using/windows.rst:1522 msgid "Compiling Python on Windows" msgstr "" -#: ../../using/windows.rst:1523 +#: ../../using/windows.rst:1524 msgid "" "If you want to compile CPython yourself, first thing you should do is get " "the `source `_. You can download " @@ -2327,38 +2328,38 @@ msgid "" "devguide.python.org/setup/#get-the-source-code>`_." msgstr "" -#: ../../using/windows.rst:1528 +#: ../../using/windows.rst:1529 msgid "" "The source tree contains a build solution and project files for Microsoft " "Visual Studio, which is the compiler used to build the official Python " "releases. These files are in the :file:`PCbuild` directory." msgstr "" -#: ../../using/windows.rst:1532 +#: ../../using/windows.rst:1533 msgid "" "Check :file:`PCbuild/readme.txt` for general information on the build " "process." msgstr "" -#: ../../using/windows.rst:1534 +#: ../../using/windows.rst:1535 msgid "For extension modules, consult :ref:`building-on-windows`." msgstr "" -#: ../../using/windows.rst:1541 +#: ../../using/windows.rst:1542 msgid "The full installer (deprecated)" msgstr "" -#: ../../using/windows.rst:1545 +#: ../../using/windows.rst:1546 msgid "" "This installer is deprecated since 3.14 and will not be produced for Python " "3.16 or later. See :ref:`pymanager` for the modern installer." msgstr "" -#: ../../using/windows.rst:1550 +#: ../../using/windows.rst:1551 msgid "Installation steps" msgstr "" -#: ../../using/windows.rst:1552 +#: ../../using/windows.rst:1553 msgid "" "Four Python |version| installers are available for download - two each for " "the 32-bit and 64-bit versions of the interpreter. The *web installer* is a " @@ -2369,45 +2370,45 @@ msgid "" "ways to avoid downloading during installation." msgstr "" -#: ../../using/windows.rst:1560 +#: ../../using/windows.rst:1561 msgid "After starting the installer, one of two options may be selected:" msgstr "" "Nach dem Starten den Installers kann eine der beiden Optionen ausgewählt " "werden:" -#: ../../using/windows.rst:1564 +#: ../../using/windows.rst:1565 msgid "If you select \"Install Now\":" msgstr "Wenn Sie \"Jetzt installieren\" wählen:" -#: ../../using/windows.rst:1566 +#: ../../using/windows.rst:1567 msgid "" "You will *not* need to be an administrator (unless a system update for the C " "Runtime Library is required or you install the :ref:`launcher` for all users)" msgstr "" -#: ../../using/windows.rst:1569 +#: ../../using/windows.rst:1570 msgid "Python will be installed into your user directory" msgstr "" -#: ../../using/windows.rst:1570 +#: ../../using/windows.rst:1571 msgid "" "The :ref:`launcher` will be installed according to the option at the bottom " "of the first page" msgstr "" -#: ../../using/windows.rst:1572 +#: ../../using/windows.rst:1573 msgid "The standard library, test suite, launcher and pip will be installed" msgstr "" -#: ../../using/windows.rst:1573 +#: ../../using/windows.rst:1574 msgid "If selected, the install directory will be added to your :envvar:`PATH`" msgstr "" -#: ../../using/windows.rst:1574 +#: ../../using/windows.rst:1575 msgid "Shortcuts will only be visible for the current user" msgstr "" -#: ../../using/windows.rst:1576 +#: ../../using/windows.rst:1577 msgid "" "Selecting \"Customize installation\" will allow you to select the features " "to install, the installation location and other options or post-install " @@ -2415,42 +2416,42 @@ msgid "" "option." msgstr "" -#: ../../using/windows.rst:1580 +#: ../../using/windows.rst:1581 msgid "" "To perform an all-users installation, you should select \"Customize " "installation\". In this case:" msgstr "" -#: ../../using/windows.rst:1583 +#: ../../using/windows.rst:1584 msgid "You may be required to provide administrative credentials or approval" msgstr "" -#: ../../using/windows.rst:1584 +#: ../../using/windows.rst:1585 msgid "Python will be installed into the Program Files directory" msgstr "" -#: ../../using/windows.rst:1585 +#: ../../using/windows.rst:1586 msgid "The :ref:`launcher` will be installed into the Windows directory" msgstr "" -#: ../../using/windows.rst:1586 +#: ../../using/windows.rst:1587 msgid "Optional features may be selected during installation" msgstr "" -#: ../../using/windows.rst:1587 +#: ../../using/windows.rst:1588 msgid "The standard library can be pre-compiled to bytecode" msgstr "" -#: ../../using/windows.rst:1588 +#: ../../using/windows.rst:1589 msgid "" "If selected, the install directory will be added to the system :envvar:`PATH`" msgstr "" -#: ../../using/windows.rst:1589 +#: ../../using/windows.rst:1590 msgid "Shortcuts are available for all users" msgstr "" -#: ../../using/windows.rst:1598 +#: ../../using/windows.rst:1599 msgid "" "In the latest versions of Windows, this limitation can be expanded to " "approximately 32,000 characters. Your administrator will need to activate " @@ -2459,19 +2460,19 @@ msgid "" "``HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\FileSystem``." msgstr "" -#: ../../using/windows.rst:1607 +#: ../../using/windows.rst:1608 msgid "After changing the above option, no further configuration is required." msgstr "" -#: ../../using/windows.rst:1611 +#: ../../using/windows.rst:1612 msgid "Support for long paths was enabled in Python." msgstr "" -#: ../../using/windows.rst:1616 +#: ../../using/windows.rst:1617 msgid "Installing without UI" msgstr "" -#: ../../using/windows.rst:1618 +#: ../../using/windows.rst:1619 msgid "" "All of the options available in the installer UI can also be specified from " "the command line, allowing scripted installers to replicate an installation " @@ -2479,357 +2480,357 @@ msgid "" "without suppressing the UI in order to change some of the defaults." msgstr "" -#: ../../using/windows.rst:1623 +#: ../../using/windows.rst:1624 msgid "" "The following options (found by executing the installer with ``/?``) can be " "passed into the installer:" msgstr "" -#: ../../using/windows.rst:1627 ../../using/windows.rst:1647 -#: ../../using/windows.rst:2237 +#: ../../using/windows.rst:1628 ../../using/windows.rst:1648 +#: ../../using/windows.rst:2238 msgid "Name" msgstr "Name" -#: ../../using/windows.rst:1629 +#: ../../using/windows.rst:1630 msgid "/passive" msgstr "" -#: ../../using/windows.rst:1629 +#: ../../using/windows.rst:1630 msgid "to display progress without requiring user interaction" msgstr "" -#: ../../using/windows.rst:1631 +#: ../../using/windows.rst:1632 msgid "/quiet" msgstr "" -#: ../../using/windows.rst:1631 +#: ../../using/windows.rst:1632 msgid "to install/uninstall without displaying any UI" msgstr "" -#: ../../using/windows.rst:1633 +#: ../../using/windows.rst:1634 msgid "/simple" msgstr "" -#: ../../using/windows.rst:1633 +#: ../../using/windows.rst:1634 msgid "to prevent user customization" msgstr "" -#: ../../using/windows.rst:1635 +#: ../../using/windows.rst:1636 msgid "/uninstall" msgstr "" -#: ../../using/windows.rst:1635 +#: ../../using/windows.rst:1636 msgid "to remove Python (without confirmation)" msgstr "" -#: ../../using/windows.rst:1637 +#: ../../using/windows.rst:1638 msgid "/layout [directory]" msgstr "" -#: ../../using/windows.rst:1637 +#: ../../using/windows.rst:1638 msgid "to pre-download all components" msgstr "" -#: ../../using/windows.rst:1639 +#: ../../using/windows.rst:1640 msgid "/log [filename]" msgstr "" -#: ../../using/windows.rst:1639 +#: ../../using/windows.rst:1640 msgid "to specify log files location" msgstr "" -#: ../../using/windows.rst:1642 +#: ../../using/windows.rst:1643 msgid "" "All other options are passed as ``name=value``, where the value is usually " "``0`` to disable a feature, ``1`` to enable a feature, or a path. The full " "list of available options is shown below." msgstr "" -#: ../../using/windows.rst:1647 +#: ../../using/windows.rst:1648 msgid "Default" msgstr "Standard" -#: ../../using/windows.rst:1649 +#: ../../using/windows.rst:1650 msgid "InstallAllUsers" msgstr "" -#: ../../using/windows.rst:1649 +#: ../../using/windows.rst:1650 msgid "Perform a system-wide installation." msgstr "" -#: ../../using/windows.rst:1649 ../../using/windows.rst:1675 -#: ../../using/windows.rst:1678 ../../using/windows.rst:1682 -#: ../../using/windows.rst:1691 ../../using/windows.rst:1713 -#: ../../using/windows.rst:1721 ../../using/windows.rst:1724 +#: ../../using/windows.rst:1650 ../../using/windows.rst:1676 +#: ../../using/windows.rst:1679 ../../using/windows.rst:1683 +#: ../../using/windows.rst:1692 ../../using/windows.rst:1714 +#: ../../using/windows.rst:1722 ../../using/windows.rst:1725 msgid "0" msgstr "" -#: ../../using/windows.rst:1651 +#: ../../using/windows.rst:1652 msgid "TargetDir" msgstr "" -#: ../../using/windows.rst:1651 +#: ../../using/windows.rst:1652 msgid "The installation directory" msgstr "Das Installations-Verzeichnis" -#: ../../using/windows.rst:1651 +#: ../../using/windows.rst:1652 msgid "Selected based on InstallAllUsers" msgstr "" -#: ../../using/windows.rst:1654 +#: ../../using/windows.rst:1655 msgid "DefaultAllUsersTargetDir" msgstr "" -#: ../../using/windows.rst:1654 +#: ../../using/windows.rst:1655 msgid "The default installation directory for all-user installs" msgstr "" -#: ../../using/windows.rst:1654 +#: ../../using/windows.rst:1655 msgid "" ":file:`%ProgramFiles%\\\\ Python X.Y` or :file:` %ProgramFiles(x86)%\\\\ " "Python X.Y`" msgstr "" -#: ../../using/windows.rst:1659 +#: ../../using/windows.rst:1660 msgid "DefaultJustForMeTargetDir" msgstr "" -#: ../../using/windows.rst:1659 +#: ../../using/windows.rst:1660 msgid "The default install directory for just-for-me installs" msgstr "" -#: ../../using/windows.rst:1659 +#: ../../using/windows.rst:1660 msgid "" ":file:`%LocalAppData%\\\\ Programs\\\\Python\\\\ PythonXY` or :file:" "`%LocalAppData%\\\\ Programs\\\\Python\\\\ PythonXY-32` or :file:" "`%LocalAppData%\\\\ Programs\\\\Python\\\\ PythonXY-64`" msgstr "" -#: ../../using/windows.rst:1669 +#: ../../using/windows.rst:1670 msgid "DefaultCustomTargetDir" msgstr "" -#: ../../using/windows.rst:1669 +#: ../../using/windows.rst:1670 msgid "The default custom install directory displayed in the UI" msgstr "" -#: ../../using/windows.rst:1669 ../../using/windows.rst:1726 +#: ../../using/windows.rst:1670 ../../using/windows.rst:1727 msgid "(empty)" msgstr "(leer)" -#: ../../using/windows.rst:1672 +#: ../../using/windows.rst:1673 msgid "AssociateFiles" msgstr "" -#: ../../using/windows.rst:1672 +#: ../../using/windows.rst:1673 msgid "Create file associations if the launcher is also installed." msgstr "" -#: ../../using/windows.rst:1672 ../../using/windows.rst:1686 -#: ../../using/windows.rst:1689 ../../using/windows.rst:1693 -#: ../../using/windows.rst:1697 ../../using/windows.rst:1701 -#: ../../using/windows.rst:1703 ../../using/windows.rst:1707 -#: ../../using/windows.rst:1711 ../../using/windows.rst:1715 -#: ../../using/windows.rst:1717 ../../using/windows.rst:1719 +#: ../../using/windows.rst:1673 ../../using/windows.rst:1687 +#: ../../using/windows.rst:1690 ../../using/windows.rst:1694 +#: ../../using/windows.rst:1698 ../../using/windows.rst:1702 +#: ../../using/windows.rst:1704 ../../using/windows.rst:1708 +#: ../../using/windows.rst:1712 ../../using/windows.rst:1716 +#: ../../using/windows.rst:1718 ../../using/windows.rst:1720 msgid "1" msgstr "" -#: ../../using/windows.rst:1675 +#: ../../using/windows.rst:1676 msgid "CompileAll" msgstr "" -#: ../../using/windows.rst:1675 +#: ../../using/windows.rst:1676 msgid "Compile all ``.py`` files to ``.pyc``." msgstr "" -#: ../../using/windows.rst:1678 +#: ../../using/windows.rst:1679 msgid "PrependPath" msgstr "" -#: ../../using/windows.rst:1678 +#: ../../using/windows.rst:1679 msgid "" "Prepend install and Scripts directories to :envvar:`PATH` and add ``.PY`` " "to :envvar:`PATHEXT`" msgstr "" -#: ../../using/windows.rst:1682 +#: ../../using/windows.rst:1683 msgid "AppendPath" msgstr "" -#: ../../using/windows.rst:1682 +#: ../../using/windows.rst:1683 msgid "" "Append install and Scripts directories to :envvar:`PATH` and add ``.PY`` " "to :envvar:`PATHEXT`" msgstr "" -#: ../../using/windows.rst:1686 +#: ../../using/windows.rst:1687 msgid "Shortcuts" msgstr "" -#: ../../using/windows.rst:1686 +#: ../../using/windows.rst:1687 msgid "" "Create shortcuts for the interpreter, documentation and IDLE if installed." msgstr "" -#: ../../using/windows.rst:1689 +#: ../../using/windows.rst:1690 msgid "Include_doc" msgstr "" -#: ../../using/windows.rst:1689 +#: ../../using/windows.rst:1690 msgid "Install Python manual" msgstr "" -#: ../../using/windows.rst:1691 +#: ../../using/windows.rst:1692 msgid "Include_debug" msgstr "" -#: ../../using/windows.rst:1691 +#: ../../using/windows.rst:1692 msgid "Install debug binaries" msgstr "" -#: ../../using/windows.rst:1693 +#: ../../using/windows.rst:1694 msgid "Include_dev" msgstr "" -#: ../../using/windows.rst:1693 +#: ../../using/windows.rst:1694 msgid "" "Install developer headers and libraries. Omitting this may lead to an " "unusable installation." msgstr "" -#: ../../using/windows.rst:1697 +#: ../../using/windows.rst:1698 msgid "Include_exe" msgstr "" -#: ../../using/windows.rst:1697 +#: ../../using/windows.rst:1698 msgid "" "Install :file:`python.exe` and related files. Omitting this may lead to an " "unusable installation." msgstr "" -#: ../../using/windows.rst:1701 +#: ../../using/windows.rst:1702 msgid "Include_launcher" msgstr "" -#: ../../using/windows.rst:1701 +#: ../../using/windows.rst:1702 msgid "Install :ref:`launcher`." msgstr "" -#: ../../using/windows.rst:1703 +#: ../../using/windows.rst:1704 msgid "InstallLauncherAllUsers" msgstr "" -#: ../../using/windows.rst:1703 +#: ../../using/windows.rst:1704 msgid "" "Installs the launcher for all users. Also requires ``Include_launcher`` to " "be set to 1" msgstr "" -#: ../../using/windows.rst:1707 +#: ../../using/windows.rst:1708 msgid "Include_lib" msgstr "" -#: ../../using/windows.rst:1707 +#: ../../using/windows.rst:1708 msgid "" "Install standard library and extension modules. Omitting this may lead to an " "unusable installation." msgstr "" -#: ../../using/windows.rst:1711 +#: ../../using/windows.rst:1712 msgid "Include_pip" msgstr "" -#: ../../using/windows.rst:1711 +#: ../../using/windows.rst:1712 msgid "Install bundled pip and setuptools" msgstr "" -#: ../../using/windows.rst:1713 +#: ../../using/windows.rst:1714 msgid "Include_symbols" msgstr "" -#: ../../using/windows.rst:1713 +#: ../../using/windows.rst:1714 msgid "Install debugging symbols (``*.pdb``)" msgstr "" -#: ../../using/windows.rst:1715 +#: ../../using/windows.rst:1716 msgid "Include_tcltk" msgstr "" -#: ../../using/windows.rst:1715 +#: ../../using/windows.rst:1716 msgid "Install Tcl/Tk support and IDLE" msgstr "" -#: ../../using/windows.rst:1717 +#: ../../using/windows.rst:1718 msgid "Include_test" msgstr "" -#: ../../using/windows.rst:1717 +#: ../../using/windows.rst:1718 msgid "Install standard library test suite" msgstr "" -#: ../../using/windows.rst:1719 +#: ../../using/windows.rst:1720 msgid "Include_tools" msgstr "" -#: ../../using/windows.rst:1719 +#: ../../using/windows.rst:1720 msgid "Install utility scripts" msgstr "" -#: ../../using/windows.rst:1721 +#: ../../using/windows.rst:1722 msgid "LauncherOnly" msgstr "" -#: ../../using/windows.rst:1721 +#: ../../using/windows.rst:1722 msgid "Only installs the launcher. This will override most other options." msgstr "" -#: ../../using/windows.rst:1724 +#: ../../using/windows.rst:1725 msgid "SimpleInstall" msgstr "" -#: ../../using/windows.rst:1724 +#: ../../using/windows.rst:1725 msgid "Disable most install UI" msgstr "" -#: ../../using/windows.rst:1726 +#: ../../using/windows.rst:1727 msgid "SimpleInstallDescription" msgstr "" -#: ../../using/windows.rst:1726 +#: ../../using/windows.rst:1727 msgid "A custom message to display when the simplified install UI is used." msgstr "" -#: ../../using/windows.rst:1730 +#: ../../using/windows.rst:1731 msgid "" "For example, to silently install a default, system-wide Python installation, " "you could use the following command (from an elevated command prompt)::" msgstr "" -#: ../../using/windows.rst:1733 +#: ../../using/windows.rst:1734 msgid "python-3.9.0.exe /quiet InstallAllUsers=1 PrependPath=1 Include_test=0" msgstr "" -#: ../../using/windows.rst:1735 +#: ../../using/windows.rst:1736 msgid "" "To allow users to easily install a personal copy of Python without the test " "suite, you could provide a shortcut with the following command. This will " "display a simplified initial page and disallow customization::" msgstr "" -#: ../../using/windows.rst:1739 +#: ../../using/windows.rst:1740 msgid "" "python-3.9.0.exe InstallAllUsers=0 Include_launcher=0 Include_test=0\n" " SimpleInstall=1 SimpleInstallDescription=\"Just for me, no test suite.\"" msgstr "" -#: ../../using/windows.rst:1742 +#: ../../using/windows.rst:1743 msgid "" "(Note that omitting the launcher also omits file associations, and is only " "recommended for per-user installs when there is also a system-wide " "installation that included the launcher.)" msgstr "" -#: ../../using/windows.rst:1746 +#: ../../using/windows.rst:1747 msgid "" "The options listed above can also be provided in a file named ``unattend." "xml`` alongside the executable. This file specifies a list of options and " @@ -2838,7 +2839,7 @@ msgid "" "strings. This example file sets the same options as the previous example:" msgstr "" -#: ../../using/windows.rst:1752 +#: ../../using/windows.rst:1753 msgid "" "\n" " " msgstr "" -#: ../../using/windows.rst:1765 +#: ../../using/windows.rst:1766 msgid "Installing without downloading" msgstr "" -#: ../../using/windows.rst:1767 +#: ../../using/windows.rst:1768 msgid "" "As some features of Python are not included in the initial installer " "download, selecting those features may require an internet connection. To " @@ -2865,7 +2866,7 @@ msgid "" "to be performed it is very useful to have a locally cached copy." msgstr "" -#: ../../using/windows.rst:1775 +#: ../../using/windows.rst:1776 msgid "" "Execute the following command from Command Prompt to download all possible " "required files. Remember to substitute ``python-3.9.0.exe`` for the actual " @@ -2873,27 +2874,27 @@ msgid "" "avoid collisions between files with the same name." msgstr "" -#: ../../using/windows.rst:1782 +#: ../../using/windows.rst:1783 msgid "python-3.9.0.exe /layout [optional target directory]" msgstr "" -#: ../../using/windows.rst:1784 +#: ../../using/windows.rst:1785 msgid "" "You may also specify the ``/quiet`` option to hide the progress display." msgstr "" -#: ../../using/windows.rst:1787 +#: ../../using/windows.rst:1788 msgid "Modifying an install" msgstr "" -#: ../../using/windows.rst:1789 +#: ../../using/windows.rst:1790 msgid "" "Once Python has been installed, you can add or remove features through the " "Programs and Features tool that is part of Windows. Select the Python entry " "and choose \"Uninstall/Change\" to open the installer in maintenance mode." msgstr "" -#: ../../using/windows.rst:1793 +#: ../../using/windows.rst:1794 msgid "" "\"Modify\" allows you to add or remove features by modifying the checkboxes " "- unchanged checkboxes will not install or remove anything. Some options " @@ -2901,26 +2902,26 @@ msgid "" "these, you will need to remove and then reinstall Python completely." msgstr "" -#: ../../using/windows.rst:1798 +#: ../../using/windows.rst:1799 msgid "" "\"Repair\" will verify all the files that should be installed using the " "current settings and replace any that have been removed or modified." msgstr "" -#: ../../using/windows.rst:1801 +#: ../../using/windows.rst:1802 msgid "" "\"Uninstall\" will remove Python entirely, with the exception of the :ref:" "`launcher`, which has its own entry in Programs and Features." msgstr "" -#: ../../using/windows.rst:1810 +#: ../../using/windows.rst:1811 msgid "" "To install pre-built binaries with free-threading enabled (see :pep:`703`), " "you should select \"Customize installation\". The second page of options " "includes the \"Download free-threaded binaries\" checkbox." msgstr "" -#: ../../using/windows.rst:1816 +#: ../../using/windows.rst:1817 msgid "" "Selecting this option will download and install additional binaries to the " "same location as the main Python install. The main executable is called " @@ -2929,7 +2930,7 @@ msgid "" "are shared with the main install." msgstr "" -#: ../../using/windows.rst:1822 +#: ../../using/windows.rst:1823 msgid "" "The free-threaded version is registered as a regular Python install with the " "tag ``3.13t`` (with a ``-32`` or ``-arm64`` suffix as normal for those " @@ -2941,7 +2942,7 @@ msgid "" "not install the free-threaded binaries at this time." msgstr "" -#: ../../using/windows.rst:1831 +#: ../../using/windows.rst:1832 msgid "" "To specify the install option at the command line, use " "``Include_freethreaded=1``. See :ref:`install-layout-option` for " @@ -2950,24 +2951,24 @@ msgid "" "apply to the free-threaded builds." msgstr "" -#: ../../using/windows.rst:1837 +#: ../../using/windows.rst:1838 msgid "" "Free-threaded binaries are also available :ref:`on nuget.org `." msgstr "" -#: ../../using/windows.rst:1841 +#: ../../using/windows.rst:1842 msgid "Python launcher for Windows (deprecated)" msgstr "" -#: ../../using/windows.rst:1845 +#: ../../using/windows.rst:1846 msgid "" "The launcher and this documentation have been superseded by the Python " "Install Manager described above. This is preserved temporarily for " "historical interest." msgstr "" -#: ../../using/windows.rst:1851 +#: ../../using/windows.rst:1852 msgid "" "The Python launcher for Windows is a utility which aids in locating and " "executing of different Python versions. It allows scripts (or the command-" @@ -2975,7 +2976,7 @@ msgid "" "locate and execute that version." msgstr "" -#: ../../using/windows.rst:1856 +#: ../../using/windows.rst:1857 msgid "" "Unlike the :envvar:`PATH` variable, the launcher will correctly select the " "most appropriate version of Python. It will prefer per-user installations " @@ -2983,19 +2984,19 @@ msgid "" "most recently installed version." msgstr "" -#: ../../using/windows.rst:1861 +#: ../../using/windows.rst:1862 msgid "The launcher was originally specified in :pep:`397`." msgstr "" -#: ../../using/windows.rst:1864 +#: ../../using/windows.rst:1865 msgid "Getting started" msgstr "Los geht's" -#: ../../using/windows.rst:1867 +#: ../../using/windows.rst:1868 msgid "From the command-line" msgstr "" -#: ../../using/windows.rst:1871 +#: ../../using/windows.rst:1872 msgid "" "System-wide installations of Python 3.3 and later will put the launcher on " "your :envvar:`PATH`. The launcher is compatible with all available versions " @@ -3003,62 +3004,62 @@ msgid "" "the launcher is available, execute the following command in Command Prompt::" msgstr "" -#: ../../using/windows.rst:1876 +#: ../../using/windows.rst:1877 msgid "py" msgstr "" -#: ../../using/windows.rst:1878 +#: ../../using/windows.rst:1879 msgid "" "You should find that the latest version of Python you have installed is " "started - it can be exited as normal, and any additional command-line " "arguments specified will be sent directly to Python." msgstr "" -#: ../../using/windows.rst:1882 +#: ../../using/windows.rst:1883 msgid "" "If you have multiple versions of Python installed (e.g., 3.7 and |version|) " "you will have noticed that Python |version| was started - to launch Python " "3.7, try the command::" msgstr "" -#: ../../using/windows.rst:1886 +#: ../../using/windows.rst:1887 msgid "py -3.7" msgstr "" -#: ../../using/windows.rst:1888 +#: ../../using/windows.rst:1889 msgid "" "If you want the latest version of Python 2 you have installed, try the " "command::" msgstr "" -#: ../../using/windows.rst:1891 +#: ../../using/windows.rst:1892 msgid "py -2" msgstr "" -#: ../../using/windows.rst:1893 +#: ../../using/windows.rst:1894 msgid "" "If you see the following error, you do not have the launcher installed::" msgstr "" -#: ../../using/windows.rst:1895 +#: ../../using/windows.rst:1896 msgid "" "'py' is not recognized as an internal or external command,\n" "operable program or batch file." msgstr "" -#: ../../using/windows.rst:1898 +#: ../../using/windows.rst:1899 msgid "The command::" msgstr "" -#: ../../using/windows.rst:1900 +#: ../../using/windows.rst:1901 msgid "py --list" msgstr "" -#: ../../using/windows.rst:1902 +#: ../../using/windows.rst:1903 msgid "displays the currently installed version(s) of Python." msgstr "" -#: ../../using/windows.rst:1904 +#: ../../using/windows.rst:1905 msgid "" "The ``-x.y`` argument is the short form of the ``-V:Company/Tag`` argument, " "which allows selecting a specific Python runtime, including those that may " @@ -3067,14 +3068,14 @@ msgid "" "available runtimes using the ``-V:`` format." msgstr "" -#: ../../using/windows.rst:1910 +#: ../../using/windows.rst:1911 msgid "" "When using the ``-V:`` argument, specifying the Company will limit selection " "to runtimes from that provider, while specifying only the Tag will select " "from all providers. Note that omitting the slash implies a tag::" msgstr "" -#: ../../using/windows.rst:1914 +#: ../../using/windows.rst:1915 msgid "" "# Select any '3.*' tagged runtime\n" "py -V:3\n" @@ -3086,14 +3087,14 @@ msgid "" "py -V:PythonCore/3" msgstr "" -#: ../../using/windows.rst:1923 +#: ../../using/windows.rst:1924 msgid "" "The short form of the argument (``-3``) only ever selects from core Python " "releases, and not other distributions. However, the longer form (``-V:3``) " "will select from any." msgstr "" -#: ../../using/windows.rst:1927 +#: ../../using/windows.rst:1928 msgid "" "The Company is matched on the full string, case-insensitive. The Tag is " "matched on either the full string, or a prefix, provided the next character " @@ -3102,11 +3103,11 @@ msgid "" "``3.1``), but are compared using text (``-V:3.01`` does not match ``3.1``)." msgstr "" -#: ../../using/windows.rst:1935 +#: ../../using/windows.rst:1936 msgid "Virtual environments" msgstr "" -#: ../../using/windows.rst:1939 +#: ../../using/windows.rst:1940 msgid "" "If the launcher is run with no explicit Python version specification, and a " "virtual environment (created with the standard library :mod:`venv` module or " @@ -3116,42 +3117,42 @@ msgid "" "specify the global Python version." msgstr "" -#: ../../using/windows.rst:1947 +#: ../../using/windows.rst:1948 msgid "From a script" msgstr "" -#: ../../using/windows.rst:1949 +#: ../../using/windows.rst:1950 msgid "" "Let's create a test Python script - create a file called ``hello.py`` with " "the following contents" msgstr "" -#: ../../using/windows.rst:1952 +#: ../../using/windows.rst:1953 msgid "" "#! python\n" "import sys\n" "sys.stdout.write(\"hello from Python %s\\n\" % (sys.version,))" msgstr "" -#: ../../using/windows.rst:1958 +#: ../../using/windows.rst:1959 msgid "From the directory in which hello.py lives, execute the command::" msgstr "" -#: ../../using/windows.rst:1960 +#: ../../using/windows.rst:1961 msgid "py hello.py" msgstr "" -#: ../../using/windows.rst:1962 +#: ../../using/windows.rst:1963 msgid "" "You should notice the version number of your latest Python 2.x installation " "is printed. Now try changing the first line to be:" msgstr "" -#: ../../using/windows.rst:1965 +#: ../../using/windows.rst:1966 msgid "#! python3" msgstr "" -#: ../../using/windows.rst:1969 +#: ../../using/windows.rst:1970 msgid "" "Re-executing the command should now print the latest Python 3.x information. " "As with the above command-line examples, you can specify a more explicit " @@ -3160,7 +3161,7 @@ msgid "" "information printed." msgstr "" -#: ../../using/windows.rst:1975 +#: ../../using/windows.rst:1976 msgid "" "Note that unlike interactive use, a bare \"python\" will use the latest " "version of Python 2.x that you have installed. This is for backward " @@ -3168,11 +3169,11 @@ msgid "" "typically refers to Python 2." msgstr "" -#: ../../using/windows.rst:1981 +#: ../../using/windows.rst:1982 msgid "From file associations" msgstr "" -#: ../../using/windows.rst:1983 +#: ../../using/windows.rst:1984 msgid "" "The launcher should have been associated with Python files (i.e. ``.py``, ``." "pyw``, ``.pyc`` files) when it was installed. This means that when you " @@ -3181,13 +3182,13 @@ msgid "" "have the script specify the version which should be used." msgstr "" -#: ../../using/windows.rst:1989 +#: ../../using/windows.rst:1990 msgid "" "The key benefit of this is that a single launcher can support multiple " "Python versions at the same time depending on the contents of the first line." msgstr "" -#: ../../using/windows.rst:1995 +#: ../../using/windows.rst:1996 msgid "" "If the first line of a script file starts with ``#!``, it is known as a " "\"shebang\" line. Linux and other Unix like operating systems have native " @@ -3197,30 +3198,30 @@ msgid "" "demonstrate their use." msgstr "" -#: ../../using/windows.rst:2002 +#: ../../using/windows.rst:2003 msgid "" "To allow shebang lines in Python scripts to be portable between Unix and " "Windows, this launcher supports a number of 'virtual' commands to specify " "which interpreter to use. The supported virtual commands are:" msgstr "" -#: ../../using/windows.rst:2006 +#: ../../using/windows.rst:2007 msgid "``/usr/bin/env``" msgstr "" -#: ../../using/windows.rst:2007 +#: ../../using/windows.rst:2008 msgid "``/usr/bin/python``" msgstr "" -#: ../../using/windows.rst:2008 +#: ../../using/windows.rst:2009 msgid "``/usr/local/bin/python``" msgstr "" -#: ../../using/windows.rst:2009 +#: ../../using/windows.rst:2010 msgid "``python``" msgstr "" -#: ../../using/windows.rst:2023 +#: ../../using/windows.rst:2024 msgid "" "Any of the above virtual commands can be suffixed with an explicit version " "(either just the major version, or the major and minor version). Furthermore " @@ -3230,21 +3231,21 @@ msgid "" "and the environment will be used." msgstr "" -#: ../../using/windows.rst:2032 +#: ../../using/windows.rst:2033 msgid "" "Beginning with python launcher 3.7 it is possible to request 64-bit version " "by the \"-64\" suffix. Furthermore it is possible to specify a major and " "architecture without minor (i.e. ``/usr/bin/python3-64``)." msgstr "" -#: ../../using/windows.rst:2038 +#: ../../using/windows.rst:2039 msgid "" "The \"-64\" suffix is deprecated, and now implies \"any architecture that is " "not provably i386/32-bit\". To request a specific environment, use the new :" "samp:`-V:{TAG}` argument with the complete tag." msgstr "" -#: ../../using/windows.rst:2044 +#: ../../using/windows.rst:2045 msgid "" "Virtual commands referencing ``python`` now prefer an active virtual " "environment rather than searching :envvar:`PATH`. This handles cases where " @@ -3252,7 +3253,7 @@ msgid "" "not present in the active environment." msgstr "" -#: ../../using/windows.rst:2049 +#: ../../using/windows.rst:2050 msgid "" "The ``/usr/bin/env`` form of shebang line has one further special property. " "Before looking for installed Python interpreters, this form will search the " @@ -3266,7 +3267,7 @@ msgid "" "envvar:`PATH`." msgstr "" -#: ../../using/windows.rst:2060 +#: ../../using/windows.rst:2061 msgid "" "Shebang lines that do not match any of these patterns are looked up in the " "``[commands]`` section of the launcher's :ref:`.INI file `. " @@ -3277,13 +3278,13 @@ msgid "" "part of the filename)." msgstr "" -#: ../../using/windows.rst:2068 +#: ../../using/windows.rst:2069 msgid "" "[commands]\n" "/bin/xpython=C:\\Program Files\\XPython\\python.exe" msgstr "" -#: ../../using/windows.rst:2073 +#: ../../using/windows.rst:2074 msgid "" "Any commands not found in the .INI file are treated as **Windows** " "executable paths that are absolute or relative to the directory containing " @@ -3294,33 +3295,33 @@ msgid "" "will be appended." msgstr "" -#: ../../using/windows.rst:2082 +#: ../../using/windows.rst:2083 msgid "Arguments in shebang lines" msgstr "" -#: ../../using/windows.rst:2084 +#: ../../using/windows.rst:2085 msgid "" "The shebang lines can also specify additional options to be passed to the " "Python interpreter. For example, if you have a shebang line:" msgstr "" -#: ../../using/windows.rst:2087 +#: ../../using/windows.rst:2088 msgid "#! /usr/bin/python -v" msgstr "" -#: ../../using/windows.rst:2091 +#: ../../using/windows.rst:2092 msgid "Then Python will be started with the ``-v`` option" msgstr "" -#: ../../using/windows.rst:2094 +#: ../../using/windows.rst:2095 msgid "Customization" msgstr "" -#: ../../using/windows.rst:2099 +#: ../../using/windows.rst:2100 msgid "Customization via INI files" msgstr "" -#: ../../using/windows.rst:2101 +#: ../../using/windows.rst:2102 msgid "" "Two .ini files will be searched by the launcher - ``py.ini`` in the current " "user's application data directory (``%LOCALAPPDATA%`` or ``$env:" @@ -3329,7 +3330,7 @@ msgid "" "e. py.exe) and for the 'windows' version (i.e. pyw.exe)." msgstr "" -#: ../../using/windows.rst:2107 +#: ../../using/windows.rst:2108 msgid "" "Customization specified in the \"application directory\" will have " "precedence over the one next to the executable, so a user, who may not have " @@ -3337,11 +3338,11 @@ msgid "" "that global .ini file." msgstr "" -#: ../../using/windows.rst:2112 +#: ../../using/windows.rst:2113 msgid "Customizing default Python versions" msgstr "" -#: ../../using/windows.rst:2114 +#: ../../using/windows.rst:2115 msgid "" "In some cases, a version qualifier can be included in a command to dictate " "which version of Python will be used by the command. A version qualifier " @@ -3351,13 +3352,13 @@ msgid "" "\"-32\" or \"-64\"." msgstr "" -#: ../../using/windows.rst:2120 +#: ../../using/windows.rst:2121 msgid "" "For example, a shebang line of ``#!python`` has no version qualifier, while " "``#!python3`` has a version qualifier which specifies only a major version." msgstr "" -#: ../../using/windows.rst:2123 +#: ../../using/windows.rst:2124 msgid "" "If no version qualifiers are found in a command, the environment variable :" "envvar:`!PY_PYTHON` can be set to specify the default version qualifier. If " @@ -3367,7 +3368,7 @@ msgid "" "launcher included with Python 3.7 or newer.)" msgstr "" -#: ../../using/windows.rst:2130 +#: ../../using/windows.rst:2131 msgid "" "If no minor version qualifiers are found, the environment variable " "``PY_PYTHON{major}`` (where ``{major}`` is the current major version " @@ -3378,7 +3379,7 @@ msgid "" "version in that family." msgstr "" -#: ../../using/windows.rst:2138 +#: ../../using/windows.rst:2139 msgid "" "On 64-bit Windows with both 32-bit and 64-bit implementations of the same " "(major.minor) Python version installed, the 64-bit version will always be " @@ -3392,30 +3393,30 @@ msgid "" "suffix can be used on a version specifier to change this behaviour." msgstr "" -#: ../../using/windows.rst:2149 +#: ../../using/windows.rst:2150 msgid "Examples:" msgstr "Beispiele:" -#: ../../using/windows.rst:2151 +#: ../../using/windows.rst:2152 msgid "" "If no relevant options are set, the commands ``python`` and ``python2`` will " "use the latest Python 2.x version installed and the command ``python3`` will " "use the latest Python 3.x installed." msgstr "" -#: ../../using/windows.rst:2155 +#: ../../using/windows.rst:2156 msgid "" "The command ``python3.7`` will not consult any options at all as the " "versions are fully specified." msgstr "" -#: ../../using/windows.rst:2158 +#: ../../using/windows.rst:2159 msgid "" "If ``PY_PYTHON=3``, the commands ``python`` and ``python3`` will both use " "the latest installed Python 3 version." msgstr "" -#: ../../using/windows.rst:2161 +#: ../../using/windows.rst:2162 msgid "" "If ``PY_PYTHON=3.7-32``, the command ``python`` will use the 32-bit " "implementation of 3.7 whereas the command ``python3`` will use the latest " @@ -3423,13 +3424,13 @@ msgid "" "specified.)" msgstr "" -#: ../../using/windows.rst:2166 +#: ../../using/windows.rst:2167 msgid "" "If ``PY_PYTHON=3`` and ``PY_PYTHON3=3.7``, the commands ``python`` and " "``python3`` will both use specifically 3.7" msgstr "" -#: ../../using/windows.rst:2169 +#: ../../using/windows.rst:2170 msgid "" "In addition to environment variables, the same settings can be configured in " "the .INI file used by the launcher. The section in the INI file is called " @@ -3439,38 +3440,38 @@ msgid "" "will override things specified in the INI file." msgstr "" -#: ../../using/windows.rst:2176 +#: ../../using/windows.rst:2177 msgid "For example:" msgstr "Zum Beispiel:" -#: ../../using/windows.rst:2178 +#: ../../using/windows.rst:2179 msgid "Setting ``PY_PYTHON=3.7`` is equivalent to the INI file containing:" msgstr "" -#: ../../using/windows.rst:2180 +#: ../../using/windows.rst:2181 msgid "" "[defaults]\n" "python=3.7" msgstr "" -#: ../../using/windows.rst:2185 +#: ../../using/windows.rst:2186 msgid "" "Setting ``PY_PYTHON=3`` and ``PY_PYTHON3=3.7`` is equivalent to the INI file " "containing:" msgstr "" -#: ../../using/windows.rst:2188 +#: ../../using/windows.rst:2189 msgid "" "[defaults]\n" "python=3\n" "python3=3.7" msgstr "" -#: ../../using/windows.rst:2195 +#: ../../using/windows.rst:2196 msgid "Diagnostics" msgstr "" -#: ../../using/windows.rst:2197 +#: ../../using/windows.rst:2198 msgid "" "If an environment variable :envvar:`!PYLAUNCHER_DEBUG` is set (to any " "value), the launcher will print diagnostic information to stderr (i.e. to " @@ -3481,11 +3482,11 @@ msgid "" "debugging." msgstr "" -#: ../../using/windows.rst:2205 +#: ../../using/windows.rst:2206 msgid "Dry run" msgstr "" -#: ../../using/windows.rst:2207 +#: ../../using/windows.rst:2208 msgid "" "If an environment variable :envvar:`!PYLAUNCHER_DRYRUN` is set (to any " "value), the launcher will output the command it would have run, but will not " @@ -3495,11 +3496,11 @@ msgid "" "correctly in the console." msgstr "" -#: ../../using/windows.rst:2215 +#: ../../using/windows.rst:2216 msgid "Install on demand" msgstr "" -#: ../../using/windows.rst:2217 +#: ../../using/windows.rst:2218 msgid "" "If an environment variable :envvar:`!PYLAUNCHER_ALLOW_INSTALL` is set (to " "any value), and the requested Python version is not installed but is " @@ -3508,7 +3509,7 @@ msgid "" "command again." msgstr "" -#: ../../using/windows.rst:2222 +#: ../../using/windows.rst:2223 msgid "" "An additional :envvar:`!PYLAUNCHER_ALWAYS_INSTALL` variable causes the " "launcher to always try to install Python, even if it is detected. This is " @@ -3516,110 +3517,110 @@ msgid "" "PYLAUNCHER_DRYRUN`)." msgstr "" -#: ../../using/windows.rst:2227 +#: ../../using/windows.rst:2228 msgid "Return codes" msgstr "" -#: ../../using/windows.rst:2229 +#: ../../using/windows.rst:2230 msgid "" "The following exit codes may be returned by the Python launcher. " "Unfortunately, there is no way to distinguish these from the exit code of " "Python itself." msgstr "" -#: ../../using/windows.rst:2232 +#: ../../using/windows.rst:2233 msgid "" "The names of codes are as used in the sources, and are only for reference. " "There is no way to access or resolve them apart from reading this page. " "Entries are listed in alphabetical order of names." msgstr "" -#: ../../using/windows.rst:2237 +#: ../../using/windows.rst:2238 msgid "Value" msgstr "" -#: ../../using/windows.rst:2239 +#: ../../using/windows.rst:2240 msgid "RC_BAD_VENV_CFG" msgstr "" -#: ../../using/windows.rst:2239 +#: ../../using/windows.rst:2240 msgid "107" msgstr "" -#: ../../using/windows.rst:2239 +#: ../../using/windows.rst:2240 msgid "A :file:`pyvenv.cfg` was found but is corrupt." msgstr "" -#: ../../using/windows.rst:2241 +#: ../../using/windows.rst:2242 msgid "RC_CREATE_PROCESS" msgstr "" -#: ../../using/windows.rst:2241 +#: ../../using/windows.rst:2242 msgid "101" msgstr "" -#: ../../using/windows.rst:2241 +#: ../../using/windows.rst:2242 msgid "Failed to launch Python." msgstr "" -#: ../../using/windows.rst:2243 +#: ../../using/windows.rst:2244 msgid "RC_INSTALLING" msgstr "" -#: ../../using/windows.rst:2243 +#: ../../using/windows.rst:2244 msgid "111" msgstr "" -#: ../../using/windows.rst:2243 +#: ../../using/windows.rst:2244 msgid "" "An install was started, but the command will need to be re-run after it " "completes." msgstr "" -#: ../../using/windows.rst:2246 +#: ../../using/windows.rst:2247 msgid "RC_INTERNAL_ERROR" msgstr "" -#: ../../using/windows.rst:2246 +#: ../../using/windows.rst:2247 msgid "109" msgstr "" -#: ../../using/windows.rst:2246 +#: ../../using/windows.rst:2247 msgid "Unexpected error. Please report a bug." msgstr "" -#: ../../using/windows.rst:2248 +#: ../../using/windows.rst:2249 msgid "RC_NO_COMMANDLINE" msgstr "" -#: ../../using/windows.rst:2248 +#: ../../using/windows.rst:2249 msgid "108" msgstr "" -#: ../../using/windows.rst:2248 +#: ../../using/windows.rst:2249 msgid "Unable to obtain command line from the operating system." msgstr "" -#: ../../using/windows.rst:2251 +#: ../../using/windows.rst:2252 msgid "RC_NO_PYTHON" msgstr "" -#: ../../using/windows.rst:2251 +#: ../../using/windows.rst:2252 msgid "103" msgstr "" -#: ../../using/windows.rst:2251 +#: ../../using/windows.rst:2252 msgid "Unable to locate the requested version." msgstr "" -#: ../../using/windows.rst:2253 +#: ../../using/windows.rst:2254 msgid "RC_NO_VENV_CFG" msgstr "" -#: ../../using/windows.rst:2253 +#: ../../using/windows.rst:2254 msgid "106" msgstr "" -#: ../../using/windows.rst:2253 +#: ../../using/windows.rst:2254 msgid "A :file:`pyvenv.cfg` was required but not found." msgstr "" diff --git a/whatsnew/3.15.po b/whatsnew/3.15.po index 45ed35ac..69744ab7 100644 --- a/whatsnew/3.15.po +++ b/whatsnew/3.15.po @@ -7,14 +7,14 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-09-22 21:21+0200\n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" "PO-Revision-Date: 2026-09-22 21:21+0200\n" "Last-Translator: Automatically generated\n" "Language-Team: none\n" +"Language: de\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Language: de\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #: ../../whatsnew/3.15.rst:4 diff --git a/whatsnew/changelog.po b/whatsnew/changelog.po index 240a9750..d9ce9b0e 100644 --- a/whatsnew/changelog.po +++ b/whatsnew/changelog.po @@ -11,7 +11,7 @@ msgid "" msgstr "" "Project-Id-Version: Python 3.15\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-09-15 09:11+0000\n" +"POT-Creation-Date: 2026-09-23 06:17+0000\n" "PO-Revision-Date: 2025-09-16 00:02+0000\n" "Last-Translator: python-doc bot, 2025\n" "Language-Team: German (https://app.transifex.com/python-doc/teams/5390/de/)\n" @@ -33,54 +33,76 @@ msgstr "" msgid "*Release date: XXXX-XX-XX*" msgstr "" -#: ../NEWS:8 ../NEWS:113 ../NEWS:334 ../NEWS:701 ../NEWS:1317 ../NEWS:1645 -#: ../NEWS:1992 ../NEWS:2816 ../NEWS:3682 ../NEWS:4127 ../NEWS:4513 -#: ../NEWS:4731 ../NEWS:5151 ../NEWS:5761 ../NEWS:5791 ../NEWS:5806 -#: ../NEWS:5819 ../NEWS:5862 ../NEWS:5886 ../NEWS:7579 ../NEWS:7623 -#: ../NEWS:7666 ../NEWS:7696 ../NEWS:7719 ../NEWS:7844 ../NEWS:7857 -#: ../NEWS:7871 ../NEWS:7992 ../NEWS:8026 ../NEWS:8044 ../NEWS:8076 -#: ../NEWS:8183 ../NEWS:8212 ../NEWS:8893 ../NEWS:8934 ../NEWS:8996 -#: ../NEWS:9479 ../NEWS:9563 ../NEWS:9945 ../NEWS:10053 ../NEWS:10113 -#: ../NEWS:10521 ../NEWS:10557 ../NEWS:10658 ../NEWS:10948 ../NEWS:10973 -#: ../NEWS:11005 ../NEWS:11364 ../NEWS:11410 ../NEWS:11991 ../NEWS:12011 -#: ../NEWS:12028 ../NEWS:13608 ../NEWS:13632 ../NEWS:13727 ../NEWS:13900 -#: ../NEWS:13972 ../NEWS:14035 ../NEWS:14053 ../NEWS:14220 ../NEWS:14621 -#: ../NEWS:14649 ../NEWS:15263 ../NEWS:15374 ../NEWS:15778 ../NEWS:15820 -#: ../NEWS:15833 ../NEWS:16225 ../NEWS:16782 ../NEWS:17656 ../NEWS:18317 -#: ../NEWS:20795 ../NEWS:20925 ../NEWS:21692 ../NEWS:21733 ../NEWS:21769 -#: ../NEWS:22010 ../NEWS:22319 ../NEWS:22568 ../NEWS:22617 ../NEWS:22682 -#: ../NEWS:23018 ../NEWS:23056 ../NEWS:23366 ../NEWS:23499 ../NEWS:23826 -#: ../NEWS:23862 ../NEWS:23938 ../NEWS:23983 ../NEWS:24176 ../NEWS:24194 -#: ../NEWS:24211 ../NEWS:24336 ../NEWS:24459 ../NEWS:24474 ../NEWS:26068 -#: ../NEWS:26213 ../NEWS:26258 ../NEWS:26828 ../NEWS:26904 ../NEWS:26929 -#: ../NEWS:27441 ../NEWS:27524 ../NEWS:27576 ../NEWS:27601 ../NEWS:27900 -#: ../NEWS:27991 ../NEWS:28018 ../NEWS:28297 ../NEWS:28347 ../NEWS:28371 -#: ../NEWS:28436 ../NEWS:28749 ../NEWS:28807 ../NEWS:29237 ../NEWS:29790 -#: ../NEWS:29824 ../NEWS:29836 ../NEWS:29895 ../NEWS:29915 ../NEWS:29947 -#: ../NEWS:30077 ../NEWS:30128 ../NEWS:30148 ../NEWS:30247 ../NEWS:31776 -#: ../NEWS:31813 ../NEWS:31904 ../NEWS:32458 ../NEWS:32479 ../NEWS:32874 -#: ../NEWS:32919 ../NEWS:32944 ../NEWS:33119 ../NEWS:33172 ../NEWS:33382 -#: ../NEWS:33424 ../NEWS:33457 ../NEWS:33762 ../NEWS:33814 ../NEWS:33859 -#: ../NEWS:33870 ../NEWS:34356 ../NEWS:34435 ../NEWS:34722 ../NEWS:34744 -#: ../NEWS:34772 ../NEWS:34791 ../NEWS:34804 ../NEWS:34820 ../NEWS:34834 -#: ../NEWS:34846 ../NEWS:34864 ../NEWS:34905 ../NEWS:34924 ../NEWS:34973 -#: ../NEWS:35003 ../NEWS:35117 ../NEWS:35137 ../NEWS:35961 ../NEWS:36323 -#: ../NEWS:36767 ../NEWS:37277 ../NEWS:37618 ../NEWS:37985 ../NEWS:38401 -#: ../NEWS:40320 ../NEWS:41081 ../NEWS:41619 ../NEWS:41925 ../NEWS:42186 -#: ../NEWS:45166 ../NEWS:45278 ../NEWS:45491 ../NEWS:45682 ../NEWS:45892 -#: ../NEWS:46136 ../NEWS:46455 ../NEWS:46759 ../NEWS:47359 ../NEWS:47648 -#: ../NEWS:49740 ../NEWS:50077 ../NEWS:50394 ../NEWS:50843 ../NEWS:51332 -#: ../NEWS:51674 ../NEWS:51698 ../NEWS:52022 ../NEWS:52052 ../NEWS:52116 -#: ../NEWS:52230 ../NEWS:52354 ../NEWS:52622 ../NEWS:53131 ../NEWS:53378 -#: ../NEWS:53592 ../NEWS:53884 ../NEWS:55190 ../NEWS:55251 ../NEWS:55652 -#: ../NEWS:56325 ../NEWS:56368 ../NEWS:57076 ../NEWS:57094 ../NEWS:57617 -#: ../NEWS:57652 ../NEWS:57680 ../NEWS:57772 ../NEWS:57859 ../NEWS:57964 -#: ../NEWS:58007 ../NEWS:58283 ../NEWS:58518 ../NEWS:58704 ../NEWS:58843 +#: ../NEWS:8 ../NEWS:200 ../NEWS:421 ../NEWS:788 ../NEWS:1404 ../NEWS:1732 +#: ../NEWS:2079 ../NEWS:2903 ../NEWS:3769 ../NEWS:4214 ../NEWS:4600 +#: ../NEWS:4818 ../NEWS:5238 ../NEWS:5848 ../NEWS:5878 ../NEWS:5893 +#: ../NEWS:5906 ../NEWS:5949 ../NEWS:5973 ../NEWS:7666 ../NEWS:7710 +#: ../NEWS:7753 ../NEWS:7783 ../NEWS:7806 ../NEWS:7931 ../NEWS:7944 +#: ../NEWS:7958 ../NEWS:8079 ../NEWS:8113 ../NEWS:8131 ../NEWS:8163 +#: ../NEWS:8270 ../NEWS:8299 ../NEWS:8980 ../NEWS:9021 ../NEWS:9083 +#: ../NEWS:9566 ../NEWS:9650 ../NEWS:10032 ../NEWS:10140 ../NEWS:10200 +#: ../NEWS:10608 ../NEWS:10644 ../NEWS:10745 ../NEWS:11035 ../NEWS:11060 +#: ../NEWS:11092 ../NEWS:11451 ../NEWS:11497 ../NEWS:12078 ../NEWS:12098 +#: ../NEWS:12115 ../NEWS:13695 ../NEWS:13719 ../NEWS:13814 ../NEWS:13987 +#: ../NEWS:14059 ../NEWS:14122 ../NEWS:14140 ../NEWS:14307 ../NEWS:14708 +#: ../NEWS:14736 ../NEWS:15350 ../NEWS:15461 ../NEWS:15865 ../NEWS:15907 +#: ../NEWS:15920 ../NEWS:16312 ../NEWS:16869 ../NEWS:17743 ../NEWS:18404 +#: ../NEWS:20882 ../NEWS:21012 ../NEWS:21779 ../NEWS:21820 ../NEWS:21856 +#: ../NEWS:22097 ../NEWS:22406 ../NEWS:22655 ../NEWS:22704 ../NEWS:22769 +#: ../NEWS:23105 ../NEWS:23143 ../NEWS:23453 ../NEWS:23586 ../NEWS:23913 +#: ../NEWS:23949 ../NEWS:24025 ../NEWS:24070 ../NEWS:24263 ../NEWS:24281 +#: ../NEWS:24298 ../NEWS:24423 ../NEWS:24546 ../NEWS:24561 ../NEWS:26155 +#: ../NEWS:26300 ../NEWS:26345 ../NEWS:26915 ../NEWS:26991 ../NEWS:27016 +#: ../NEWS:27528 ../NEWS:27611 ../NEWS:27663 ../NEWS:27688 ../NEWS:27987 +#: ../NEWS:28078 ../NEWS:28105 ../NEWS:28384 ../NEWS:28434 ../NEWS:28458 +#: ../NEWS:28523 ../NEWS:28836 ../NEWS:28894 ../NEWS:29324 ../NEWS:29877 +#: ../NEWS:29911 ../NEWS:29923 ../NEWS:29982 ../NEWS:30002 ../NEWS:30034 +#: ../NEWS:30164 ../NEWS:30215 ../NEWS:30235 ../NEWS:30334 ../NEWS:31863 +#: ../NEWS:31900 ../NEWS:31991 ../NEWS:32545 ../NEWS:32566 ../NEWS:32961 +#: ../NEWS:33006 ../NEWS:33031 ../NEWS:33206 ../NEWS:33259 ../NEWS:33469 +#: ../NEWS:33511 ../NEWS:33544 ../NEWS:33849 ../NEWS:33901 ../NEWS:33946 +#: ../NEWS:33957 ../NEWS:34443 ../NEWS:34522 ../NEWS:34809 ../NEWS:34831 +#: ../NEWS:34859 ../NEWS:34878 ../NEWS:34891 ../NEWS:34907 ../NEWS:34921 +#: ../NEWS:34933 ../NEWS:34951 ../NEWS:34992 ../NEWS:35011 ../NEWS:35060 +#: ../NEWS:35090 ../NEWS:35204 ../NEWS:35224 ../NEWS:36048 ../NEWS:36410 +#: ../NEWS:36854 ../NEWS:37364 ../NEWS:37705 ../NEWS:38072 ../NEWS:38488 +#: ../NEWS:40407 ../NEWS:41168 ../NEWS:41706 ../NEWS:42012 ../NEWS:42273 +#: ../NEWS:45253 ../NEWS:45365 ../NEWS:45578 ../NEWS:45769 ../NEWS:45979 +#: ../NEWS:46223 ../NEWS:46542 ../NEWS:46846 ../NEWS:47446 ../NEWS:47735 +#: ../NEWS:49827 ../NEWS:50164 ../NEWS:50481 ../NEWS:50930 ../NEWS:51419 +#: ../NEWS:51761 ../NEWS:51785 ../NEWS:52109 ../NEWS:52139 ../NEWS:52203 +#: ../NEWS:52317 ../NEWS:52441 ../NEWS:52709 ../NEWS:53218 ../NEWS:53465 +#: ../NEWS:53679 ../NEWS:53971 ../NEWS:55277 ../NEWS:55338 ../NEWS:55739 +#: ../NEWS:56412 ../NEWS:56455 ../NEWS:57163 ../NEWS:57181 ../NEWS:57704 +#: ../NEWS:57739 ../NEWS:57767 ../NEWS:57859 ../NEWS:57946 ../NEWS:58051 +#: ../NEWS:58094 ../NEWS:58370 ../NEWS:58605 ../NEWS:58791 ../NEWS:58930 msgid "Core and Builtins" msgstr "" #: ../NEWS:10 msgid "" +":gh:`156762`: Fix undefined behaviour in :class:`operator.methodcaller`: " +"its :c:member:`~PyTypeObject.tp_clear` slot function returned ``void`` " +"instead of ``int``, so the garbage collector called it through an " +"incompatible function type. Patched by Shamil Abdulaev." +msgstr "" + +#: ../NEWS:15 +msgid "" +":gh:`157377`: Fix :func:`gc.get_count` on the free-threaded build resetting " +"the thread-local allocation counter that schedules automatic garbage " +"collection. A thread that called it while allocating could prevent cyclic " +"garbage from ever being collected." +msgstr "" + +#: ../NEWS:20 +msgid "" +":gh:`157247`: Fix :func:`sys.activate_stack_trampoline` allowing activation " +"from a subinterpreter while the JIT is enabled in the main interpreter." +msgstr "" + +#: ../NEWS:23 +msgid "" ":gh:`156995`: Fix :class:`bytearray` sharing its buffer with the single-" "byte :class:`bytes` object of the same value, so that writing to the " "bytearray modified that :class:`bytes` object. This happened with :meth:" @@ -88,21 +110,40 @@ msgid "" "threaded build when a bytearray was shrunk to one byte from another thread." msgstr "" -#: ../NEWS:17 +#: ../NEWS:30 msgid "" ":gh:`156910`: Fix a deadlock in the :term:`free threaded ` " "build when setting ``__abstractmethods__`` on a type while another thread " "holds the type lock." msgstr "" -#: ../NEWS:21 +#: ../NEWS:34 +msgid "" +":gh:`155525`: Fix quadratic-time tokenization of modules containing many f-" +"strings or t-strings." +msgstr "" + +#: ../NEWS:37 +msgid "" +":gh:`156114`: Fix a crash in the perf trampoline when a code object has a " +"name or filename that cannot be encoded to UTF-8. Patched by Shamil Abdulaev." +msgstr "" + +#: ../NEWS:41 msgid "" ":gh:`156126`: Fix a crash when importing a module whose name contains " "characters that cannot be encoded to UTF-8 (such as lone surrogates) while :" "option:`-X importtime <-X>` is enabled." msgstr "" -#: ../NEWS:25 +#: ../NEWS:45 +msgid "" +":gh:`155526`: Fix spurious :exc:`OverflowError` for ``abs(nanj)`` in case :c:" +"data:`errno` was previously set to :c:macro:`!ERANGE` by some library call. " +"Patch by Sergey B Kirpichev." +msgstr "" + +#: ../NEWS:49 msgid "" ":gh:`154719`: Trailing whitespace in a t-string interpolation expression is " "now preserved in :attr:`string.templatelib.Interpolation.expression`, up to " @@ -112,83 +153,105 @@ msgid "" "templatelib.Interpolation.expression`." msgstr "" -#: ../NEWS:33 ../NEWS:177 ../NEWS:387 ../NEWS:810 ../NEWS:1406 ../NEWS:1711 -#: ../NEWS:2192 ../NEWS:2997 ../NEWS:3454 ../NEWS:3927 ../NEWS:4319 -#: ../NEWS:4648 ../NEWS:4819 ../NEWS:5432 ../NEWS:5785 ../NEWS:5800 -#: ../NEWS:5812 ../NEWS:5853 ../NEWS:5878 ../NEWS:6289 ../NEWS:7617 -#: ../NEWS:7660 ../NEWS:7690 ../NEWS:7709 ../NEWS:7835 ../NEWS:7852 -#: ../NEWS:7865 ../NEWS:7982 ../NEWS:8020 ../NEWS:8038 ../NEWS:8070 -#: ../NEWS:8177 ../NEWS:8206 ../NEWS:8477 ../NEWS:8928 ../NEWS:8990 -#: ../NEWS:9137 ../NEWS:9296 ../NEWS:9557 ../NEWS:9675 ../NEWS:10048 -#: ../NEWS:10106 ../NEWS:10258 ../NEWS:10551 ../NEWS:10651 ../NEWS:10665 -#: ../NEWS:10771 ../NEWS:10966 ../NEWS:10998 ../NEWS:11137 ../NEWS:11399 -#: ../NEWS:11596 ../NEWS:12004 ../NEWS:12021 ../NEWS:12124 ../NEWS:12382 -#: ../NEWS:13626 ../NEWS:13721 ../NEWS:13894 ../NEWS:13965 ../NEWS:14028 -#: ../NEWS:14046 ../NEWS:14214 ../NEWS:14642 ../NEWS:14820 ../NEWS:15365 -#: ../NEWS:15380 ../NEWS:15813 ../NEWS:15826 ../NEWS:15849 ../NEWS:16335 -#: ../NEWS:16941 ../NEWS:17828 ../NEWS:18953 ../NEWS:20789 ../NEWS:20915 -#: ../NEWS:21011 ../NEWS:21726 ../NEWS:21775 ../NEWS:22090 ../NEWS:22380 -#: ../NEWS:22611 ../NEWS:22677 ../NEWS:22689 ../NEWS:23047 ../NEWS:23093 -#: ../NEWS:23524 ../NEWS:23854 ../NEWS:23933 ../NEWS:23976 ../NEWS:24170 -#: ../NEWS:24187 ../NEWS:24200 ../NEWS:24326 ../NEWS:24454 ../NEWS:24469 -#: ../NEWS:24496 ../NEWS:26204 ../NEWS:26276 ../NEWS:26897 ../NEWS:26923 -#: ../NEWS:26959 ../NEWS:27519 ../NEWS:27569 ../NEWS:27592 ../NEWS:27616 -#: ../NEWS:27985 ../NEWS:28008 ../NEWS:28025 ../NEWS:28341 ../NEWS:28366 -#: ../NEWS:28430 ../NEWS:28462 ../NEWS:28801 ../NEWS:28881 ../NEWS:29346 -#: ../NEWS:29815 ../NEWS:29829 ../NEWS:29888 ../NEWS:29907 ../NEWS:29941 -#: ../NEWS:30070 ../NEWS:30120 ../NEWS:30141 ../NEWS:30240 ../NEWS:30364 -#: ../NEWS:31805 ../NEWS:31898 ../NEWS:31918 ../NEWS:32473 ../NEWS:32556 -#: ../NEWS:32906 ../NEWS:32935 ../NEWS:32951 ../NEWS:33165 ../NEWS:33181 -#: ../NEWS:33417 ../NEWS:33431 ../NEWS:33467 ../NEWS:33808 ../NEWS:33854 -#: ../NEWS:33865 ../NEWS:33882 ../NEWS:34428 ../NEWS:34442 ../NEWS:34738 -#: ../NEWS:34754 ../NEWS:34779 ../NEWS:34797 ../NEWS:34814 ../NEWS:34829 -#: ../NEWS:34840 ../NEWS:34858 ../NEWS:34900 ../NEWS:34917 ../NEWS:34968 -#: ../NEWS:34997 ../NEWS:35110 ../NEWS:35129 ../NEWS:35146 ../NEWS:36019 -#: ../NEWS:36407 ../NEWS:36894 ../NEWS:37354 ../NEWS:37716 ../NEWS:38062 -#: ../NEWS:38718 ../NEWS:40484 ../NEWS:41151 ../NEWS:41694 ../NEWS:41989 -#: ../NEWS:42740 ../NEWS:45148 ../NEWS:45181 ../NEWS:45309 ../NEWS:45517 -#: ../NEWS:45708 ../NEWS:45913 ../NEWS:46211 ../NEWS:46532 ../NEWS:46857 -#: ../NEWS:47447 ../NEWS:48107 ../NEWS:49777 ../NEWS:50123 ../NEWS:50489 -#: ../NEWS:50813 ../NEWS:50916 ../NEWS:51379 ../NEWS:51766 ../NEWS:52069 -#: ../NEWS:52151 ../NEWS:52254 ../NEWS:52424 ../NEWS:52759 ../NEWS:53177 -#: ../NEWS:53395 ../NEWS:53632 ../NEWS:54169 ../NEWS:55196 ../NEWS:55214 -#: ../NEWS:55302 ../NEWS:55783 ../NEWS:56498 ../NEWS:57162 ../NEWS:57600 -#: ../NEWS:57627 ../NEWS:57665 ../NEWS:57685 ../NEWS:57792 ../NEWS:57886 -#: ../NEWS:57982 ../NEWS:58057 ../NEWS:58315 ../NEWS:58538 ../NEWS:58711 -#: ../NEWS:59069 +#: ../NEWS:57 ../NEWS:264 ../NEWS:474 ../NEWS:897 ../NEWS:1493 ../NEWS:1798 +#: ../NEWS:2279 ../NEWS:3084 ../NEWS:3541 ../NEWS:4014 ../NEWS:4406 +#: ../NEWS:4735 ../NEWS:4906 ../NEWS:5519 ../NEWS:5872 ../NEWS:5887 +#: ../NEWS:5899 ../NEWS:5940 ../NEWS:5965 ../NEWS:6376 ../NEWS:7704 +#: ../NEWS:7747 ../NEWS:7777 ../NEWS:7796 ../NEWS:7922 ../NEWS:7939 +#: ../NEWS:7952 ../NEWS:8069 ../NEWS:8107 ../NEWS:8125 ../NEWS:8157 +#: ../NEWS:8264 ../NEWS:8293 ../NEWS:8564 ../NEWS:9015 ../NEWS:9077 +#: ../NEWS:9224 ../NEWS:9383 ../NEWS:9644 ../NEWS:9762 ../NEWS:10135 +#: ../NEWS:10193 ../NEWS:10345 ../NEWS:10638 ../NEWS:10738 ../NEWS:10752 +#: ../NEWS:10858 ../NEWS:11053 ../NEWS:11085 ../NEWS:11224 ../NEWS:11486 +#: ../NEWS:11683 ../NEWS:12091 ../NEWS:12108 ../NEWS:12211 ../NEWS:12469 +#: ../NEWS:13713 ../NEWS:13808 ../NEWS:13981 ../NEWS:14052 ../NEWS:14115 +#: ../NEWS:14133 ../NEWS:14301 ../NEWS:14729 ../NEWS:14907 ../NEWS:15452 +#: ../NEWS:15467 ../NEWS:15900 ../NEWS:15913 ../NEWS:15936 ../NEWS:16422 +#: ../NEWS:17028 ../NEWS:17915 ../NEWS:19040 ../NEWS:20876 ../NEWS:21002 +#: ../NEWS:21098 ../NEWS:21813 ../NEWS:21862 ../NEWS:22177 ../NEWS:22467 +#: ../NEWS:22698 ../NEWS:22764 ../NEWS:22776 ../NEWS:23134 ../NEWS:23180 +#: ../NEWS:23611 ../NEWS:23941 ../NEWS:24020 ../NEWS:24063 ../NEWS:24257 +#: ../NEWS:24274 ../NEWS:24287 ../NEWS:24413 ../NEWS:24541 ../NEWS:24556 +#: ../NEWS:24583 ../NEWS:26291 ../NEWS:26363 ../NEWS:26984 ../NEWS:27010 +#: ../NEWS:27046 ../NEWS:27606 ../NEWS:27656 ../NEWS:27679 ../NEWS:27703 +#: ../NEWS:28072 ../NEWS:28095 ../NEWS:28112 ../NEWS:28428 ../NEWS:28453 +#: ../NEWS:28517 ../NEWS:28549 ../NEWS:28888 ../NEWS:28968 ../NEWS:29433 +#: ../NEWS:29902 ../NEWS:29916 ../NEWS:29975 ../NEWS:29994 ../NEWS:30028 +#: ../NEWS:30157 ../NEWS:30207 ../NEWS:30228 ../NEWS:30327 ../NEWS:30451 +#: ../NEWS:31892 ../NEWS:31985 ../NEWS:32005 ../NEWS:32560 ../NEWS:32643 +#: ../NEWS:32993 ../NEWS:33022 ../NEWS:33038 ../NEWS:33252 ../NEWS:33268 +#: ../NEWS:33504 ../NEWS:33518 ../NEWS:33554 ../NEWS:33895 ../NEWS:33941 +#: ../NEWS:33952 ../NEWS:33969 ../NEWS:34515 ../NEWS:34529 ../NEWS:34825 +#: ../NEWS:34841 ../NEWS:34866 ../NEWS:34884 ../NEWS:34901 ../NEWS:34916 +#: ../NEWS:34927 ../NEWS:34945 ../NEWS:34987 ../NEWS:35004 ../NEWS:35055 +#: ../NEWS:35084 ../NEWS:35197 ../NEWS:35216 ../NEWS:35233 ../NEWS:36106 +#: ../NEWS:36494 ../NEWS:36981 ../NEWS:37441 ../NEWS:37803 ../NEWS:38149 +#: ../NEWS:38805 ../NEWS:40571 ../NEWS:41238 ../NEWS:41781 ../NEWS:42076 +#: ../NEWS:42827 ../NEWS:45235 ../NEWS:45268 ../NEWS:45396 ../NEWS:45604 +#: ../NEWS:45795 ../NEWS:46000 ../NEWS:46298 ../NEWS:46619 ../NEWS:46944 +#: ../NEWS:47534 ../NEWS:48194 ../NEWS:49864 ../NEWS:50210 ../NEWS:50576 +#: ../NEWS:50900 ../NEWS:51003 ../NEWS:51466 ../NEWS:51853 ../NEWS:52156 +#: ../NEWS:52238 ../NEWS:52341 ../NEWS:52511 ../NEWS:52846 ../NEWS:53264 +#: ../NEWS:53482 ../NEWS:53719 ../NEWS:54256 ../NEWS:55283 ../NEWS:55301 +#: ../NEWS:55389 ../NEWS:55870 ../NEWS:56585 ../NEWS:57249 ../NEWS:57687 +#: ../NEWS:57714 ../NEWS:57752 ../NEWS:57772 ../NEWS:57879 ../NEWS:57973 +#: ../NEWS:58069 ../NEWS:58144 ../NEWS:58402 ../NEWS:58625 ../NEWS:58798 +#: ../NEWS:59156 msgid "Library" msgstr "" -#: ../NEWS:35 +#: ../NEWS:59 +msgid "" +":gh:`157788`: Fix ``python -m asyncio ps`` failing on a process that has a " +"task with a name longer than 255 characters." +msgstr "" + +#: ../NEWS:62 +msgid "" +":gh:`128509`: :func:`marshal.load` and :func:`marshal.loads` can now get 1-" +"byte string singletons. Patch by Victor Stinner." +msgstr "" + +#: ../NEWS:65 msgid "" ":gh:`157213`: Fix :func:`asyncio.gather` leaving stale await-graph edges on " "children that outlive it." msgstr "" -#: ../NEWS:38 +#: ../NEWS:68 +msgid "" +":gh:`156002`: :mod:`zipfile` again reads members through a third-party " +"decompressor installed by monkey-patching the private " +"``_get_decompressor()`` to return an object that only implements old " +"BZ2Decompressor API from Python 3.3. Note that decompressors without " +"``needs_input`` and two-argument ``decompress()`` are vulnerable to :cve:" +"`2026-15310`." +msgstr "" + +#: ../NEWS:75 msgid "" ":gh:`157159`: The usage message printed by ``python -m tabnanny`` when no " "arguments are given now suggests ``python -m`` instead of the source file." msgstr "" -#: ../NEWS:41 +#: ../NEWS:78 msgid "" ":gh:`157058`: :func:`asyncio.wait_for` with a non-positive timeout now " "records the waiter in the call graph." msgstr "" -#: ../NEWS:44 +#: ../NEWS:81 msgid "" ":gh:`156988`: :func:`asyncio.print_call_graph` no longer truncates the call " "stack at a synchronous generator." msgstr "" -#: ../NEWS:47 +#: ../NEWS:84 msgid "" ":gh:`156970`: Set the docstring of :attr:`unittest.mock.Mock.return_value`." msgstr "" -#: ../NEWS:49 +#: ../NEWS:86 msgid "" ":gh:`156924`: :meth:`annotationlib.ForwardRef.evaluate` now resolves :ref:" "`lazy import ` proxies found in the namespace. With :attr:" @@ -198,32 +261,47 @@ msgid "" "VALUE` the underlying exception is propagated." msgstr "" -#: ../NEWS:57 +#: ../NEWS:94 msgid "" ":gh:`127057`: Fix :class:`asyncio.ProactorEventLoop` UDP transports so that " "a :exc:`ConnectionResetError` raised by ``WSARecvFrom`` no longer stops the " "read loop." msgstr "" -#: ../NEWS:61 +#: ../NEWS:98 msgid "" ":gh:`156512`: Fix :mod:`asyncio` losing a connection twice when " "``resume_writing()`` closes the transport." msgstr "" -#: ../NEWS:64 +#: ../NEWS:101 +msgid "" +":gh:`155596`: Fix :func:`pprint.pprint` and :func:`pprint.pformat` with " +"``expand=True`` not honouring *width* for nested values. The width of the " +"``'key':`` prefix was not counted when deciding whether a value fitted on " +"the current line, so values under long keys could overflow *width* instead " +"of being expanded." +msgstr "" + +#: ../NEWS:107 +msgid "" +":gh:`155433`: Fix :class:`asyncio.TaskGroup` losing outside cancellation " +"after ``cancel()``." +msgstr "" + +#: ../NEWS:110 msgid "" ":gh:`155418`: Fix :class:`asyncio.TaskGroup` hang when a task created by :" "func:`asyncio.eager_task_factory` cancels the group before suspending." msgstr "" -#: ../NEWS:67 +#: ../NEWS:113 msgid "" ":gh:`155143`: Fix :func:`asyncio.shield` leaking the calling task via the " "await-graph and callbacks when called on a future that never resolves." msgstr "" -#: ../NEWS:70 +#: ../NEWS:116 msgid "" ":gh:`154470`: Fixed a spurious ``^J`` printed at the end of every source " "line by the ``list`` command of :mod:`pdb` when the output is colorized (for " @@ -231,44 +309,189 @@ msgid "" "stripped before it is colorized, like the ``where`` command already did." msgstr "" -#: ../NEWS:75 +#: ../NEWS:121 msgid "" ":gh:`151179`: Fix a pidfd leak in ``_PidfdChildWatcher`` on Linux: the " "watcher no longer leaks the process file descriptor when ``waitpid()`` fails " "with an error other than :exc:`ChildProcessError`." msgstr "" -#: ../NEWS:81 +#: ../NEWS:126 ../NEWS:370 ../NEWS:711 ../NEWS:1279 ../NEWS:1645 ../NEWS:1964 +#: ../NEWS:2751 ../NEWS:3413 ../NEWS:3937 ../NEWS:4347 ../NEWS:5419 +#: ../NEWS:6108 ../NEWS:8432 ../NEWS:9288 ../NEWS:9675 ../NEWS:10255 +#: ../NEWS:10823 ../NEWS:11143 ../NEWS:11608 ../NEWS:12243 ../NEWS:14588 +#: ../NEWS:15242 ../NEWS:15738 ../NEWS:16219 ../NEWS:16740 ../NEWS:17585 +#: ../NEWS:18171 ../NEWS:20349 ../NEWS:21623 ../NEWS:21850 ../NEWS:22042 +#: ../NEWS:22319 ../NEWS:22589 ../NEWS:23013 ../NEWS:23354 ../NEWS:23580 +#: ../NEWS:23772 ../NEWS:25708 ../NEWS:26340 ../NEWS:26813 ../NEWS:27401 +#: ../NEWS:27906 ../NEWS:28100 ../NEWS:28291 ../NEWS:28745 ../NEWS:29154 +#: ../NEWS:29684 ../NEWS:31520 ../NEWS:32388 ../NEWS:32834 ../NEWS:33117 +#: ../NEWS:33397 ../NEWS:33774 ../NEWS:34250 ../NEWS:34712 ../NEWS:35812 +#: ../NEWS:36293 ../NEWS:36751 ../NEWS:37204 ../NEWS:37607 ../NEWS:38009 +#: ../NEWS:38380 ../NEWS:39930 ../NEWS:41047 ../NEWS:41518 ../NEWS:41934 +#: ../NEWS:44665 ../NEWS:45321 ../NEWS:45543 ../NEWS:45694 ../NEWS:45914 +#: ../NEWS:46161 ../NEWS:46490 ../NEWS:47313 ../NEWS:47633 ../NEWS:49344 +#: ../NEWS:50033 ../NEWS:50143 ../NEWS:50378 ../NEWS:50770 ../NEWS:50906 +#: ../NEWS:51167 ../NEWS:51688 ../NEWS:51772 ../NEWS:52063 ../NEWS:52128 +#: ../NEWS:52300 ../NEWS:52418 ../NEWS:52687 ../NEWS:53142 ../NEWS:53428 +#: ../NEWS:53616 ../NEWS:53929 ../NEWS:55125 ../NEWS:55680 ../NEWS:56342 +#: ../NEWS:57063 ../NEWS:57615 ../NEWS:57675 ../NEWS:57692 ../NEWS:57934 +#: ../NEWS:58039 ../NEWS:58552 ../NEWS:58766 ../NEWS:58901 ../NEWS:60433 +msgid "Build" +msgstr "" + +#: ../NEWS:128 +msgid "" +":gh:`157549`: Use ``sysconf(_SC_PAGESIZE)`` instead of ``getpagesize()`` in " +"``remote_debug.h`` so ``_remote_debugging`` builds on Darwin with ``-" +"Werror=implicit-function-declaration``." +msgstr "" + +#: ../NEWS:132 +msgid "" +":gh:`152023`: Update Android builds to SQLite 3.53.4. Additionally, enable " +"the ``median()`` and ``percentile()`` functions." +msgstr "" + +#: ../NEWS:136 ../NEWS:380 ../NEWS:721 ../NEWS:1305 ../NEWS:1650 ../NEWS:1974 +#: ../NEWS:2804 ../NEWS:3451 ../NEWS:3508 ../NEWS:3969 ../NEWS:4379 +#: ../NEWS:5476 ../NEWS:6151 ../NEWS:8515 ../NEWS:9333 ../NEWS:9708 +#: ../NEWS:11183 ../NEWS:11629 ../NEWS:12299 ../NEWS:15264 ../NEWS:15748 +#: ../NEWS:16245 ../NEWS:16755 ../NEWS:17614 ../NEWS:18195 ../NEWS:20436 +#: ../NEWS:21661 ../NEWS:22050 ../NEWS:22336 ../NEWS:22622 ../NEWS:23031 +#: ../NEWS:23376 ../NEWS:23808 ../NEWS:25822 ../NEWS:26828 ../NEWS:27433 +#: ../NEWS:27936 ../NEWS:28331 ../NEWS:28792 ../NEWS:29282 ../NEWS:29739 +#: ../NEWS:31566 ../NEWS:32397 ../NEWS:32856 ../NEWS:33140 ../NEWS:33423 +#: ../NEWS:34274 ../NEWS:34719 ../NEWS:35833 ../NEWS:36303 ../NEWS:36763 +#: ../NEWS:37221 ../NEWS:37612 ../NEWS:38390 ../NEWS:40002 ../NEWS:41070 +#: ../NEWS:41579 ../NEWS:41948 ../NEWS:42193 ../NEWS:44783 ../NEWS:45328 +#: ../NEWS:45711 ../NEWS:45919 ../NEWS:46166 ../NEWS:46505 ../NEWS:46811 +#: ../NEWS:47346 ../NEWS:49456 ../NEWS:50053 ../NEWS:50384 ../NEWS:50795 +#: ../NEWS:51173 ../NEWS:51744 ../NEWS:51993 ../NEWS:52123 ../NEWS:52413 +#: ../NEWS:52654 ../NEWS:53184 ../NEWS:53416 ../NEWS:53919 ../NEWS:55188 +#: ../NEWS:55693 ../NEWS:56327 ../NEWS:57122 ../NEWS:57169 ../NEWS:57626 +#: ../NEWS:58915 ../NEWS:60729 +msgid "Windows" +msgstr "" + +#: ../NEWS:138 +msgid "" +":gh:`157368`: Fix truncated :data:`sys.version` in the case of clang-cl " +"versions 22 or newer on Windows. Also fixes the Windows on Arm case, where " +"the Microsoft compiler was reported instead of clang. Patch by Chris Eibl." +msgstr "" + +#: ../NEWS:142 +msgid "" +":gh:`152023`: Update Windows builds to SQLite 3.53.4. Additionally, enable " +"the ``median()`` and ``percentile()`` functions." +msgstr "" + +#: ../NEWS:146 ../NEWS:385 ../NEWS:1313 ../NEWS:1660 ../NEWS:1989 ../NEWS:2816 +#: ../NEWS:3457 ../NEWS:3959 ../NEWS:6136 ../NEWS:9323 ../NEWS:9702 +#: ../NEWS:10287 ../NEWS:10838 ../NEWS:12289 ../NEWS:15289 ../NEWS:16266 +#: ../NEWS:16777 ../NEWS:17655 ../NEWS:18207 ../NEWS:20486 ../NEWS:21682 +#: ../NEWS:22362 ../NEWS:23054 ../NEWS:23391 ../NEWS:23826 ../NEWS:25919 +#: ../NEWS:26844 ../NEWS:27459 ../NEWS:28345 ../NEWS:28798 ../NEWS:29307 +#: ../NEWS:29753 ../NEWS:31594 ../NEWS:32427 ../NEWS:33145 ../NEWS:33430 +#: ../NEWS:33797 ../NEWS:34283 ../NEWS:34734 ../NEWS:35876 ../NEWS:36315 +#: ../NEWS:36770 ../NEWS:37244 ../NEWS:38397 ../NEWS:40121 ../NEWS:41084 +#: ../NEWS:41632 ../NEWS:44893 ../NEWS:45556 ../NEWS:45716 ../NEWS:45928 +#: ../NEWS:46185 ../NEWS:46516 ../NEWS:47361 ../NEWS:50058 ../NEWS:50409 +#: ../NEWS:50804 +msgid "macOS" +msgstr "" + +#: ../NEWS:148 +msgid ":gh:`152023`: Update macOS installer builds to SQLite 3.53.4." +msgstr "" + +#: ../NEWS:151 ../NEWS:1321 ../NEWS:1665 ../NEWS:2825 ../NEWS:4209 ../NEWS:7646 +#: ../NEWS:8966 ../NEWS:10592 ../NEWS:13620 ../NEWS:15303 ../NEWS:16271 +#: ../NEWS:16790 ../NEWS:17704 ../NEWS:18228 ../NEWS:20495 ../NEWS:21702 +#: ../NEWS:25929 ../NEWS:27951 ../NEWS:28350 ../NEWS:29760 ../NEWS:31620 +#: ../NEWS:32454 ../NEWS:32862 ../NEWS:33150 ../NEWS:33437 ../NEWS:34306 +#: ../NEWS:34739 ../NEWS:35897 ../NEWS:36780 ../NEWS:37249 ../NEWS:37631 +#: ../NEWS:38022 ../NEWS:38404 ../NEWS:40142 ../NEWS:41091 ../NEWS:41640 +#: ../NEWS:41960 ../NEWS:42209 ../NEWS:44929 ../NEWS:45333 ../NEWS:45563 +#: ../NEWS:45721 ../NEWS:45937 ../NEWS:46190 ../NEWS:47366 ../NEWS:47652 +#: ../NEWS:49523 ../NEWS:50063 ../NEWS:50417 ../NEWS:50809 ../NEWS:51187 +#: ../NEWS:51659 ../NEWS:51985 ../NEWS:53099 ../NEWS:53372 ../NEWS:53574 +#: ../NEWS:53835 ../NEWS:54954 ../NEWS:56254 ../NEWS:56422 ../NEWS:56964 +#: ../NEWS:57481 ../NEWS:57814 ../NEWS:58326 ../NEWS:60350 +msgid "IDLE" +msgstr "" + +#: ../NEWS:153 +msgid "" +":gh:`75512`: Output from a thread printed in the IDLE Shell while a " +"statement is being entered no longer takes over the prompt of the statement." +msgstr "" + +#: ../NEWS:156 +msgid "" +":gh:`69004`: The Debugger item of the IDLE Debug menu is now disabled while " +"user code runs, like Stack Viewer." +msgstr "" + +#: ../NEWS:160 ../NEWS:397 ../NEWS:742 ../NEWS:1364 ../NEWS:1670 ../NEWS:2005 +#: ../NEWS:2837 ../NEWS:3475 ../NEWS:3903 ../NEWS:4334 ../NEWS:4716 +#: ../NEWS:5382 ../NEWS:6074 ../NEWS:8305 ../NEWS:9229 ../NEWS:9667 +#: ../NEWS:10206 ../NEWS:10758 ../NEWS:11125 ../NEWS:11558 ../NEWS:12220 +#: ../NEWS:14333 ../NEWS:15308 ../NEWS:15777 ../NEWS:16285 ../NEWS:16813 +#: ../NEWS:17720 ../NEWS:18244 ../NEWS:20561 ../NEWS:21719 ../NEWS:22064 +#: ../NEWS:22367 ../NEWS:23071 ../NEWS:23409 ../NEWS:23831 ../NEWS:25986 +#: ../NEWS:26862 ../NEWS:27474 ../NEWS:27960 ../NEWS:28358 ../NEWS:28804 +#: ../NEWS:29312 ../NEWS:29765 ../NEWS:31675 ../NEWS:32473 ../NEWS:32869 +#: ../NEWS:33157 ../NEWS:33451 ../NEWS:33816 ../NEWS:34328 ../NEWS:34752 +#: ../NEWS:35930 ../NEWS:36341 ../NEWS:36802 ../NEWS:37275 ../NEWS:37646 +#: ../NEWS:38033 ../NEWS:38420 ../NEWS:40270 ../NEWS:41114 ../NEWS:41652 +#: ../NEWS:41996 ../NEWS:45151 ../NEWS:45241 ../NEWS:45957 ../NEWS:46527 +#: ../NEWS:46824 ../NEWS:47417 ../NEWS:47679 ../NEWS:49751 ../NEWS:50126 +#: ../NEWS:50459 ../NEWS:50879 ../NEWS:51682 ../NEWS:52011 ../NEWS:52179 +#: ../NEWS:52680 ../NEWS:53119 ../NEWS:53609 ../NEWS:53938 ../NEWS:55227 +#: ../NEWS:55702 ../NEWS:56282 ../NEWS:58594 ../NEWS:58909 ../NEWS:60513 +msgid "C API" +msgstr "" + +#: ../NEWS:162 +msgid "" +":gh:`140550`: Fix the :c:macro:`PyABIInfo_VAR` macro: remove redundant ``;" +"``. Before, ``PyABIInfo_VAR(abi_info);`` code added two ``;;`` which is " +"illegal in C++03. Patch by Victor Stinner." +msgstr "" + +#: ../NEWS:168 msgid "Python 3.15.0 release candidate 2" msgstr "" -#: ../NEWS:83 +#: ../NEWS:170 msgid "*Release date: 2026-09-01*" msgstr "" -#: ../NEWS:86 ../NEWS:324 ../NEWS:667 ../NEWS:1297 ../NEWS:1608 ../NEWS:1935 -#: ../NEWS:2800 ../NEWS:3443 ../NEWS:3900 ../NEWS:4797 ../NEWS:5420 -#: ../NEWS:6209 ../NEWS:8467 ../NEWS:9281 ../NEWS:9667 ../NEWS:10230 -#: ../NEWS:11129 ../NEWS:11591 ../NEWS:12331 ../NEWS:14611 ../NEWS:15761 -#: ../NEWS:16217 ../NEWS:16773 ../NEWS:18292 ../NEWS:20771 ../NEWS:21989 -#: ../NEWS:22310 ../NEWS:23004 ../NEWS:23346 ../NEWS:23788 ../NEWS:26061 -#: ../NEWS:29763 ../NEWS:31720 ../NEWS:32436 ../NEWS:32867 ../NEWS:33113 -#: ../NEWS:33755 ../NEWS:34345 ../NEWS:34701 ../NEWS:35955 ../NEWS:36308 -#: ../NEWS:36760 ../NEWS:37266 ../NEWS:37967 ../NEWS:38352 ../NEWS:40305 -#: ../NEWS:41063 ../NEWS:41607 ../NEWS:42138 ../NEWS:45668 ../NEWS:45886 -#: ../NEWS:47614 ../NEWS:50067 ../NEWS:50834 ../NEWS:51298 ../NEWS:51325 -#: ../NEWS:53369 ../NEWS:53580 ../NEWS:53871 ../NEWS:55167 ../NEWS:55226 -#: ../NEWS:55643 ../NEWS:56346 +#: ../NEWS:173 ../NEWS:411 ../NEWS:754 ../NEWS:1384 ../NEWS:1695 ../NEWS:2022 +#: ../NEWS:2887 ../NEWS:3530 ../NEWS:3987 ../NEWS:4884 ../NEWS:5507 +#: ../NEWS:6296 ../NEWS:8554 ../NEWS:9368 ../NEWS:9754 ../NEWS:10317 +#: ../NEWS:11216 ../NEWS:11678 ../NEWS:12418 ../NEWS:14698 ../NEWS:15848 +#: ../NEWS:16304 ../NEWS:16860 ../NEWS:18379 ../NEWS:20858 ../NEWS:22076 +#: ../NEWS:22397 ../NEWS:23091 ../NEWS:23433 ../NEWS:23875 ../NEWS:26148 +#: ../NEWS:29850 ../NEWS:31807 ../NEWS:32523 ../NEWS:32954 ../NEWS:33200 +#: ../NEWS:33842 ../NEWS:34432 ../NEWS:34788 ../NEWS:36042 ../NEWS:36395 +#: ../NEWS:36847 ../NEWS:37353 ../NEWS:38054 ../NEWS:38439 ../NEWS:40392 +#: ../NEWS:41150 ../NEWS:41694 ../NEWS:42225 ../NEWS:45755 ../NEWS:45973 +#: ../NEWS:47701 ../NEWS:50154 ../NEWS:50921 ../NEWS:51385 ../NEWS:51412 +#: ../NEWS:53456 ../NEWS:53667 ../NEWS:53958 ../NEWS:55254 ../NEWS:55313 +#: ../NEWS:55730 ../NEWS:56433 msgid "Security" msgstr "" -#: ../NEWS:88 +#: ../NEWS:175 msgid "" ":gh:`156723`: Update bundled `libexpat `_ to " "version 2.8.4." msgstr "" -#: ../NEWS:91 +#: ../NEWS:178 msgid "" ":gh:`156002`: Bound the amount of data :mod:`zipfile` decompresses per read " "for members compressed with bzip2, LZMA, or Zstandard, matching the existing " @@ -276,7 +499,7 @@ msgid "" "unbounded allocation even when read in small chunks." msgstr "" -#: ../NEWS:96 +#: ../NEWS:183 msgid "" ":gh:`155999`: Fix the :mod:`tarfile` ``tar`` and ``data`` extraction filters " "creating directories outside the destination for members whose name leaves " @@ -285,14 +508,14 @@ msgid "" "created from the name as given." msgstr "" -#: ../NEWS:102 +#: ../NEWS:189 msgid "" ":gh:`155292`: Change the :mod:`stringprep` module and :mod:`encodings.idna` " "codec to not consider Unicode codepoint attributes beyond those defined in :" "rfc:`3454`." msgstr "" -#: ../NEWS:106 +#: ../NEWS:193 msgid "" ":gh:`155694`: Fix :cve:`2026-15806` by scoping :class:`~urllib.request." "HTTPPasswordMgr` credentials to the URL scheme, preventing credentials " @@ -300,7 +523,7 @@ msgid "" "without a scheme continue to match any scheme." msgstr "" -#: ../NEWS:115 +#: ../NEWS:202 msgid "" ":gh:`155725`: :mod:`tracemalloc` no longer acquires the :term:`GIL` nor " "creates a temporary thread state to trace memory allocations: traceback " @@ -310,38 +533,38 @@ msgid "" "Python thread state record the traceback as ````." msgstr "" -#: ../NEWS:122 +#: ../NEWS:209 msgid "" ":gh:`148750`: :mod:`encodings` is no longer frozen, due to issues importing " "submodules when using a zipped standard library." msgstr "" -#: ../NEWS:125 +#: ../NEWS:212 msgid "" ":gh:`155254`: Avoid warning about missing standard library when using :ref:" "`sys-path-init-_pth-files`." msgstr "" -#: ../NEWS:128 +#: ../NEWS:215 msgid "" ":gh:`155978`: Fix a memory leak in the free-threaded build when setting or " "deleting a special method (such as ``__repr__``) on a class that has many " "subclasses." msgstr "" -#: ../NEWS:132 +#: ../NEWS:219 msgid "" ":gh:`155752`: Fix a crash when a :class:`types.GenericAlias` argument gains " "a ``__typing_subst__`` hook after the alias parameters have been cached." msgstr "" -#: ../NEWS:135 +#: ../NEWS:222 msgid "" ":gh:`129752`: Don't update adaptive counters in the free-threaded build when " "thread-local bytecode is disabled (``-X tlbc=0``). Patch by Donghee Na." msgstr "" -#: ../NEWS:138 +#: ../NEWS:225 msgid "" ":gh:`155515`: Track the internal HAMT iterators, which back iteration over " "a :class:`contextvars.Context`, with the garbage collector. A reference " @@ -349,7 +572,7 @@ msgid "" "whole context it iterated over." msgstr "" -#: ../NEWS:143 +#: ../NEWS:230 msgid "" ":gh:`155400`: Fix a deadlock in the free-threaded build between two threads " "assigning to a special method of the same class. While applying the type " @@ -358,7 +581,7 @@ msgid "" "in the wrong order, if the thread blocked on the stop-the-world mutex." msgstr "" -#: ../NEWS:150 +#: ../NEWS:237 msgid "" ":gh:`155363`: Fix a leak in the :term:`free-threaded build` when creating a " "thread state fails after an internal QSBR slot has been reserved for it. The " @@ -366,26 +589,26 @@ msgid "" "repeated failures." msgstr "" -#: ../NEWS:155 +#: ../NEWS:242 msgid "" ":gh:`154701`: Fix an infinite loop in JIT when a ``FOR_ITER`` side exit " "links an executor back to itself." msgstr "" -#: ../NEWS:158 +#: ../NEWS:245 msgid "" ":gh:`154196`: Improve :exc:`AttributeError` messages from unresolved lazy " "imports. Patch by Bartosz Sławecki." msgstr "" -#: ../NEWS:161 +#: ../NEWS:248 msgid "" ":gh:`151377`: Fix races in free-threaded builds when updating type slots for " "newly created classes and when removing entries from a base type's " "subclasses dictionary." msgstr "" -#: ../NEWS:165 +#: ../NEWS:252 msgid "" ":gh:`148817`: Fold large constant list and set literals used as the iterable " "of a :keyword:`for` loop or ``in``/``not in`` test into a constant :class:" @@ -393,7 +616,7 @@ msgid "" "the AST optimizer that was lost when constant folding moved to the CFG." msgstr "" -#: ../NEWS:171 +#: ../NEWS:258 msgid "" ":gh:`85260`: :func:`compile` now raises :exc:`ValueError` instead of " "crashing on a debug build if an identifier field of an AST node (such as the " @@ -401,32 +624,32 @@ msgid "" "``\"None\"``, ``\"True\"`` or ``\"False\"``." msgstr "" -#: ../NEWS:179 +#: ../NEWS:266 msgid "" ":gh:`156523`: Fix :func:`asyncio.as_completed` not recording the awaiting " "task in the call graph." msgstr "" -#: ../NEWS:182 +#: ../NEWS:269 msgid "" ":gh:`156408`: Fix :func:`asyncio.print_call_graph` raising :exc:" "`AttributeError` when called on a task that has already finished." msgstr "" -#: ../NEWS:185 +#: ../NEWS:272 msgid "" ":gh:`156404`: Restore compatibility with :file:`.pth` files generated before " "Python 3.15 in the :mod:`site` module. Inject the ``fullname`` variable in " "the frame which executes pth code." msgstr "" -#: ../NEWS:189 +#: ../NEWS:276 msgid "" ":gh:`156353`: Fix :mod:`configparser` parsing when using whitespace in " "*delimiters*." msgstr "" -#: ../NEWS:192 +#: ../NEWS:279 msgid "" ":gh:`156112`: :mod:`!_ios_support` no longer fails to import when :func:" "`ctypes.util.find_library` cannot resolve the ObjC runtime through the dyld " @@ -434,7 +657,7 @@ msgid "" "which dyld resolves against the cache directly." msgstr "" -#: ../NEWS:197 +#: ../NEWS:284 msgid "" ":gh:`155974`: Fix a regression in Python 3.15: :meth:`~curses.window." "addstr`, :meth:`~curses.window.addnstr`, :meth:`~curses.window.insstr` and :" @@ -442,34 +665,34 @@ msgid "" "write fails, instead of leaving the temporary *attr* applied." msgstr "" -#: ../NEWS:202 +#: ../NEWS:289 msgid "" ":gh:`155952`: Fix the signatures of :meth:`sqlite3.Connection.execute`, :" "func:`warnings.warn` and :func:`locale.setlocale` which rendered " "```` instead of the correct defaults for parameters." msgstr "" -#: ../NEWS:206 +#: ../NEWS:293 msgid "" ":gh:`155888`: Fix :meth:`asyncio.WriteTransport.writelines` hanging the " "transport when the last data chunk is empty." msgstr "" -#: ../NEWS:209 +#: ../NEWS:296 msgid "" ":gh:`155869`: Fix :meth:`!reorganize` in :mod:`dbm.dumb` failing to persist " "updated value offsets, which could cause data loss after reopening the " "database." msgstr "" -#: ../NEWS:213 +#: ../NEWS:300 msgid "" ":gh:`155781`: Fix a possible crash in free-threaded builds when the :mod:" "`sqlite3` converter registry is modified concurrently while a cursor builds " "its row cast map." msgstr "" -#: ../NEWS:217 +#: ../NEWS:304 msgid "" ":gh:`155702`: Fix :class:`sqlite3.Blob` slice assignment with a step. It " "patched the bytes object read from the blob, which for a single byte is an " @@ -477,32 +700,32 @@ msgid "" "process." msgstr "" -#: ../NEWS:222 +#: ../NEWS:309 msgid "" ":gh:`155468`: Fix :mod:`netrc` to distinguish empty quoted tokens from end-" "of-file, so malformed files no longer cause the remaining content to be " "silently ignored." msgstr "" -#: ../NEWS:226 +#: ../NEWS:313 msgid "" ":gh:`155519`: Avoid a data-race in free-threaded builds when reading and " "writing context variables from different threads." msgstr "" -#: ../NEWS:229 +#: ../NEWS:316 msgid "" ":gh:`155009`: Fix :class:`argparse.ArgumentParser` to preserve the program " "name from ``sys.argv[0]`` when a named module is executed as the main " "program without replacing ``sys.argv[0]``." msgstr "" -#: ../NEWS:233 +#: ../NEWS:320 msgid "" ":gh:`155063`: Bump the version of pip bundled in ensurepip to version 26.2.1" msgstr "" -#: ../NEWS:235 +#: ../NEWS:322 msgid "" ":gh:`153711`: On macOS, add run-time checks around the syscalls :manpage:" "`pipe2 (2)` and :manpage:`dup3 (2)`, in addition to the existing build-time " @@ -510,17 +733,17 @@ msgid "" "available) can run on macOS 26 (where they aren't)." msgstr "" -#: ../NEWS:240 +#: ../NEWS:327 msgid "" ":gh:`154871`: Fixed a crash in :meth:`asyncio.Task.get_context` when called " "on an uninitialized task." msgstr "" -#: ../NEWS:243 +#: ../NEWS:330 msgid ":gh:`154568`: Fix :mod:`array` unpickling of little-endian float16." msgstr "" -#: ../NEWS:245 +#: ../NEWS:332 msgid "" ":gh:`154566`: Fix :meth:`array.array.byteswap` corrupting data for ``'Zd'`` " "(complex double) arrays with more than one element: the 16-byte item loop " @@ -528,14 +751,14 @@ msgid "" "after the first to be scrambled." msgstr "" -#: ../NEWS:250 +#: ../NEWS:337 msgid "" ":gh:`154467`: Fixed :mod:`pdb` remote attaching (``python -m pdb -p PID``) " "sending an empty prompt to the client instead of ``(Pdb)`` when the target " "process has an interactive terminal." msgstr "" -#: ../NEWS:254 +#: ../NEWS:341 msgid "" ":gh:`153772`: :func:`isinstance` checks against :mod:`collections.abc` " "classes such as :class:`~collections.abc.Mapping` no longer raise :exc:" @@ -544,78 +767,54 @@ msgid "" "the behaviour of the built-in :func:`isinstance`." msgstr "" -#: ../NEWS:260 +#: ../NEWS:347 msgid "" ":gh:`154086`: Store per-thread sample counts in Tachyon flamegraphs so " "filtering a thread updates frame widths and totals." msgstr "" -#: ../NEWS:263 +#: ../NEWS:350 msgid "" ":gh:`154060`: Store measured duration and sampling rate in Tachyon binary " "profiles so they remain available in replayed flamegraphs." msgstr "" -#: ../NEWS:266 +#: ../NEWS:353 msgid "" ":gh:`154085`: Prevent differential flamegraphs from duplicating self time " "across line nodes for the same function." msgstr "" -#: ../NEWS:269 +#: ../NEWS:356 msgid "" ":gh:`154088`: Make Tachyon count and render elided stacks consistently in " "differential flamegraphs." msgstr "" -#: ../NEWS:272 +#: ../NEWS:359 msgid "" ":gh:`154089`: Do not show unavailable sampling efficiency statistics in " "replayed Tachyon flamegraphs." msgstr "" -#: ../NEWS:275 +#: ../NEWS:362 msgid "" ":gh:`153158`: Remove the erroneous *width* argument of :meth:`!calendar." "HTMLCalendar.formatmonthpage`, which could drop the year from the heading." msgstr "" -#: ../NEWS:279 +#: ../NEWS:366 msgid "" ":gh:`113329`: Fix :exc:`OSError` being raised when trying to run doctests on " "a class objects in the REPL. Patch by Sten Wessel." msgstr "" -#: ../NEWS:283 ../NEWS:624 ../NEWS:1192 ../NEWS:1558 ../NEWS:1877 ../NEWS:2664 -#: ../NEWS:3326 ../NEWS:3850 ../NEWS:4260 ../NEWS:5332 ../NEWS:6021 -#: ../NEWS:8345 ../NEWS:9201 ../NEWS:9588 ../NEWS:10168 ../NEWS:10736 -#: ../NEWS:11056 ../NEWS:11521 ../NEWS:12156 ../NEWS:14501 ../NEWS:15155 -#: ../NEWS:15651 ../NEWS:16132 ../NEWS:16653 ../NEWS:17498 ../NEWS:18084 -#: ../NEWS:20262 ../NEWS:21536 ../NEWS:21763 ../NEWS:21955 ../NEWS:22232 -#: ../NEWS:22502 ../NEWS:22926 ../NEWS:23267 ../NEWS:23493 ../NEWS:23685 -#: ../NEWS:25621 ../NEWS:26253 ../NEWS:26726 ../NEWS:27314 ../NEWS:27819 -#: ../NEWS:28013 ../NEWS:28204 ../NEWS:28658 ../NEWS:29067 ../NEWS:29597 -#: ../NEWS:31433 ../NEWS:32301 ../NEWS:32747 ../NEWS:33030 ../NEWS:33310 -#: ../NEWS:33687 ../NEWS:34163 ../NEWS:34625 ../NEWS:35725 ../NEWS:36206 -#: ../NEWS:36664 ../NEWS:37117 ../NEWS:37520 ../NEWS:37922 ../NEWS:38293 -#: ../NEWS:39843 ../NEWS:40960 ../NEWS:41431 ../NEWS:41847 ../NEWS:44578 -#: ../NEWS:45234 ../NEWS:45456 ../NEWS:45607 ../NEWS:45827 ../NEWS:46074 -#: ../NEWS:46403 ../NEWS:47226 ../NEWS:47546 ../NEWS:49257 ../NEWS:49946 -#: ../NEWS:50056 ../NEWS:50291 ../NEWS:50683 ../NEWS:50819 ../NEWS:51080 -#: ../NEWS:51601 ../NEWS:51685 ../NEWS:51976 ../NEWS:52041 ../NEWS:52213 -#: ../NEWS:52331 ../NEWS:52600 ../NEWS:53055 ../NEWS:53341 ../NEWS:53529 -#: ../NEWS:53842 ../NEWS:55038 ../NEWS:55593 ../NEWS:56255 ../NEWS:56976 -#: ../NEWS:57528 ../NEWS:57588 ../NEWS:57605 ../NEWS:57847 ../NEWS:57952 -#: ../NEWS:58465 ../NEWS:58679 ../NEWS:58814 ../NEWS:60346 -msgid "Build" -msgstr "" - -#: ../NEWS:285 +#: ../NEWS:372 msgid "" ":gh:`156369`: Update Android and iOS build scripts to use OpenSSL 3.5.8." msgstr "" -#: ../NEWS:287 +#: ../NEWS:374 msgid "" ":gh:`156115`: iOS simulator builds are now configured with ``-mios-simulator-" "version-min`` instead of the device's ``-mios-version-min``. The device flag " @@ -623,92 +822,37 @@ msgid "" "detection silently failed." msgstr "" -#: ../NEWS:293 ../NEWS:634 ../NEWS:1218 ../NEWS:1563 ../NEWS:1887 ../NEWS:2717 -#: ../NEWS:3364 ../NEWS:3421 ../NEWS:3882 ../NEWS:4292 ../NEWS:5389 -#: ../NEWS:6064 ../NEWS:8428 ../NEWS:9246 ../NEWS:9621 ../NEWS:11096 -#: ../NEWS:11542 ../NEWS:12212 ../NEWS:15177 ../NEWS:15661 ../NEWS:16158 -#: ../NEWS:16668 ../NEWS:17527 ../NEWS:18108 ../NEWS:20349 ../NEWS:21574 -#: ../NEWS:21963 ../NEWS:22249 ../NEWS:22535 ../NEWS:22944 ../NEWS:23289 -#: ../NEWS:23721 ../NEWS:25735 ../NEWS:26741 ../NEWS:27346 ../NEWS:27849 -#: ../NEWS:28244 ../NEWS:28705 ../NEWS:29195 ../NEWS:29652 ../NEWS:31479 -#: ../NEWS:32310 ../NEWS:32769 ../NEWS:33053 ../NEWS:33336 ../NEWS:34187 -#: ../NEWS:34632 ../NEWS:35746 ../NEWS:36216 ../NEWS:36676 ../NEWS:37134 -#: ../NEWS:37525 ../NEWS:38303 ../NEWS:39915 ../NEWS:40983 ../NEWS:41492 -#: ../NEWS:41861 ../NEWS:42106 ../NEWS:44696 ../NEWS:45241 ../NEWS:45624 -#: ../NEWS:45832 ../NEWS:46079 ../NEWS:46418 ../NEWS:46724 ../NEWS:47259 -#: ../NEWS:49369 ../NEWS:49966 ../NEWS:50297 ../NEWS:50708 ../NEWS:51086 -#: ../NEWS:51657 ../NEWS:51906 ../NEWS:52036 ../NEWS:52326 ../NEWS:52567 -#: ../NEWS:53097 ../NEWS:53329 ../NEWS:53832 ../NEWS:55101 ../NEWS:55606 -#: ../NEWS:56240 ../NEWS:57035 ../NEWS:57082 ../NEWS:57539 ../NEWS:58828 -#: ../NEWS:60642 -msgid "Windows" -msgstr "" - -#: ../NEWS:295 +#: ../NEWS:382 msgid ":gh:`156369`: Updated Windows builds to use OpenSSL 3.5.8." msgstr "" -#: ../NEWS:298 ../NEWS:1226 ../NEWS:1573 ../NEWS:1902 ../NEWS:2729 ../NEWS:3370 -#: ../NEWS:3872 ../NEWS:6049 ../NEWS:9236 ../NEWS:9615 ../NEWS:10200 -#: ../NEWS:10751 ../NEWS:12202 ../NEWS:15202 ../NEWS:16179 ../NEWS:16690 -#: ../NEWS:17568 ../NEWS:18120 ../NEWS:20399 ../NEWS:21595 ../NEWS:22275 -#: ../NEWS:22967 ../NEWS:23304 ../NEWS:23739 ../NEWS:25832 ../NEWS:26757 -#: ../NEWS:27372 ../NEWS:28258 ../NEWS:28711 ../NEWS:29220 ../NEWS:29666 -#: ../NEWS:31507 ../NEWS:32340 ../NEWS:33058 ../NEWS:33343 ../NEWS:33710 -#: ../NEWS:34196 ../NEWS:34647 ../NEWS:35789 ../NEWS:36228 ../NEWS:36683 -#: ../NEWS:37157 ../NEWS:38310 ../NEWS:40034 ../NEWS:40997 ../NEWS:41545 -#: ../NEWS:44806 ../NEWS:45469 ../NEWS:45629 ../NEWS:45841 ../NEWS:46098 -#: ../NEWS:46429 ../NEWS:47274 ../NEWS:49971 ../NEWS:50322 ../NEWS:50717 -msgid "macOS" -msgstr "" - -#: ../NEWS:300 +#: ../NEWS:387 msgid ":gh:`156369`: Update macOS installer to use OpenSSL 3.5.8." msgstr "" -#: ../NEWS:303 ../NEWS:639 ../NEWS:1912 ../NEWS:3376 ../NEWS:4301 ../NEWS:4779 -#: ../NEWS:5394 ../NEWS:6121 ../NEWS:8437 ../NEWS:9261 ../NEWS:9627 -#: ../NEWS:10205 ../NEWS:10757 ../NEWS:11106 ../NEWS:11571 ../NEWS:12259 -#: ../NEWS:16190 ../NEWS:16712 ../NEWS:18149 ../NEWS:20414 ../NEWS:21625 -#: ../NEWS:21972 ../NEWS:22975 ../NEWS:23312 ../NEWS:25864 ../NEWS:26762 -#: ../NEWS:27381 ../NEWS:31567 ../NEWS:33720 ../NEWS:34231 ../NEWS:36241 -#: ../NEWS:36703 ../NEWS:37176 ../NEWS:40158 ../NEWS:41021 ../NEWS:41560 -#: ../NEWS:41902 ../NEWS:45025 ../NEWS:45647 ../NEWS:45864 ../NEWS:46124 -#: ../NEWS:46730 ../NEWS:47318 ../NEWS:49633 ../NEWS:50021 ../NEWS:50362 -#: ../NEWS:50785 ../NEWS:51272 ../NEWS:51637 ../NEWS:52031 ../NEWS:52105 -#: ../NEWS:53090 ../NEWS:53551 ../NEWS:53859 ../NEWS:55119 ../NEWS:56228 -#: ../NEWS:57054 ../NEWS:57577 ../NEWS:58264 ../NEWS:58483 ../NEWS:58691 -#: ../NEWS:60603 +#: ../NEWS:390 ../NEWS:726 ../NEWS:1999 ../NEWS:3463 ../NEWS:4388 ../NEWS:4866 +#: ../NEWS:5481 ../NEWS:6208 ../NEWS:8524 ../NEWS:9348 ../NEWS:9714 +#: ../NEWS:10292 ../NEWS:10844 ../NEWS:11193 ../NEWS:11658 ../NEWS:12346 +#: ../NEWS:16277 ../NEWS:16799 ../NEWS:18236 ../NEWS:20501 ../NEWS:21712 +#: ../NEWS:22059 ../NEWS:23062 ../NEWS:23399 ../NEWS:25951 ../NEWS:26849 +#: ../NEWS:27468 ../NEWS:31654 ../NEWS:33807 ../NEWS:34318 ../NEWS:36328 +#: ../NEWS:36790 ../NEWS:37263 ../NEWS:40245 ../NEWS:41108 ../NEWS:41647 +#: ../NEWS:41989 ../NEWS:45112 ../NEWS:45734 ../NEWS:45951 ../NEWS:46211 +#: ../NEWS:46817 ../NEWS:47405 ../NEWS:49720 ../NEWS:50108 ../NEWS:50449 +#: ../NEWS:50872 ../NEWS:51359 ../NEWS:51724 ../NEWS:52118 ../NEWS:52192 +#: ../NEWS:53177 ../NEWS:53638 ../NEWS:53946 ../NEWS:55206 ../NEWS:56315 +#: ../NEWS:57141 ../NEWS:57664 ../NEWS:58351 ../NEWS:58570 ../NEWS:58778 +#: ../NEWS:60690 msgid "Tools/Demos" msgstr "" -#: ../NEWS:305 +#: ../NEWS:392 msgid "" ":gh:`154059`: Fix the time units in Tachyon flame graph tooltips by " "accounting for the sampling interval when converting samples to milliseconds." msgstr "" -#: ../NEWS:310 ../NEWS:655 ../NEWS:1277 ../NEWS:1583 ../NEWS:1918 ../NEWS:2750 -#: ../NEWS:3388 ../NEWS:3816 ../NEWS:4247 ../NEWS:4629 ../NEWS:5295 -#: ../NEWS:5987 ../NEWS:8218 ../NEWS:9142 ../NEWS:9580 ../NEWS:10119 -#: ../NEWS:10671 ../NEWS:11038 ../NEWS:11471 ../NEWS:12133 ../NEWS:14246 -#: ../NEWS:15221 ../NEWS:15690 ../NEWS:16198 ../NEWS:16726 ../NEWS:17633 -#: ../NEWS:18157 ../NEWS:20474 ../NEWS:21632 ../NEWS:21977 ../NEWS:22280 -#: ../NEWS:22984 ../NEWS:23322 ../NEWS:23744 ../NEWS:25899 ../NEWS:26775 -#: ../NEWS:27387 ../NEWS:27873 ../NEWS:28271 ../NEWS:28717 ../NEWS:29225 -#: ../NEWS:29678 ../NEWS:31588 ../NEWS:32386 ../NEWS:32782 ../NEWS:33070 -#: ../NEWS:33364 ../NEWS:33729 ../NEWS:34241 ../NEWS:34665 ../NEWS:35843 -#: ../NEWS:36254 ../NEWS:36715 ../NEWS:37188 ../NEWS:37559 ../NEWS:37946 -#: ../NEWS:38333 ../NEWS:40183 ../NEWS:41027 ../NEWS:41565 ../NEWS:41909 -#: ../NEWS:45064 ../NEWS:45154 ../NEWS:45870 ../NEWS:46440 ../NEWS:46737 -#: ../NEWS:47330 ../NEWS:47592 ../NEWS:49664 ../NEWS:50039 ../NEWS:50372 -#: ../NEWS:50792 ../NEWS:51595 ../NEWS:51924 ../NEWS:52092 ../NEWS:52593 -#: ../NEWS:53032 ../NEWS:53522 ../NEWS:53851 ../NEWS:55140 ../NEWS:55615 -#: ../NEWS:56195 ../NEWS:58507 ../NEWS:58822 ../NEWS:60426 -msgid "C API" -msgstr "" - -#: ../NEWS:312 +#: ../NEWS:399 msgid "" ":gh:`131740`: On the free-threaded build, :c:func:" "`PyUnstable_GC_VisitObjects` now also visits frozen objects (objects moved " @@ -716,15 +860,15 @@ msgid "" "the default build." msgstr "" -#: ../NEWS:319 +#: ../NEWS:406 msgid "Python 3.15.0 release candidate 1" msgstr "" -#: ../NEWS:321 +#: ../NEWS:408 msgid "*Release date: 2026-08-04*" msgstr "" -#: ../NEWS:326 +#: ../NEWS:413 msgid "" ":gh:`152674`: The :class:`xml.etree.ElementTree.Element` methods :meth:`~xml." "etree.ElementTree.Element.findall`, :meth:`~xml.etree.ElementTree.Element." @@ -733,120 +877,120 @@ msgid "" "N]``) on XML documents with many same-tag siblings." msgstr "" -#: ../NEWS:336 +#: ../NEWS:423 msgid "" ":gh:`154902`: Fix a crash when ``__conditional_annotations__`` is rebound to " "a non-set object." msgstr "" -#: ../NEWS:339 +#: ../NEWS:426 msgid "" ":gh:`133931`: Fix data races when setting attributes of function objects on " "the :term:`free threaded ` build." msgstr "" -#: ../NEWS:342 +#: ../NEWS:429 msgid "" ":gh:`154775`: When matching a complex literal in :keyword:`case` statements, " "an extraneous ``+`` sign (for example, ``1++1j`` or ``1-+1j``) is no longer " "allowed." msgstr "" -#: ../NEWS:346 +#: ../NEWS:433 msgid "" ":gh:`154709`: Fix an out-of-bounds access in reverse dictionary iterators " "when the underlying dictionary is cleared and modified after the iterator is " "created." msgstr "" -#: ../NEWS:350 +#: ../NEWS:437 msgid "" ":gh:`154695`: Fix :class:`asyncio.Task` raising :exc:`AttributeError` when " "created with ``eager_start=True`` and no explicit *loop* argument." msgstr "" -#: ../NEWS:353 +#: ../NEWS:440 msgid "" ":gh:`153809`: Fix interpreter crash while deallocating objects of :class:" "`asyncio.Task` on free-threaded builds. Contributed by Sergey Miryanov." msgstr "" -#: ../NEWS:357 +#: ../NEWS:444 msgid "" ":gh:`154275`: Fix a crash when getting deeply nested ``__parameters__`` from " "a :class:`types.GenericAlias` objects." msgstr "" -#: ../NEWS:360 +#: ../NEWS:447 msgid "" ":gh:`154014`: Fix a JIT assertion during interpreter shutdown by " "initializing ``vm_data`` fields for cold executors that bypass " "``_Py_ExecutorInit()``." msgstr "" -#: ../NEWS:363 +#: ../NEWS:450 msgid "" ":gh:`153932`: Fix thread safety issue in the ``__reduce__`` method of :py:" "class:`enumerate`." msgstr "" -#: ../NEWS:366 +#: ../NEWS:453 msgid "" ":gh:`153881`: Fix potential data race when calling :meth:`~object." "__getstate__` under the :term:`free-threaded build`." msgstr "" -#: ../NEWS:369 +#: ../NEWS:456 msgid "" ":gh:`153570`: Fix a use-after-free in :meth:`bytearray.take_bytes` when the " "argument's :meth:`~object.__index__` method resizes the bytearray. Patch by " "tonghuaroot." msgstr "" -#: ../NEWS:373 +#: ../NEWS:460 msgid "" ":gh:`153419`: Fix multiple :class:`bytearray` crashes and reference leaks " "caused by skipping :meth:`~object.__init__` and broken state setup code." msgstr "" -#: ../NEWS:376 +#: ../NEWS:463 msgid "" ":gh:`153236`: Propagate exceptions raised while importing lazy submodules " "instead of reporting them as missing attributes." msgstr "" -#: ../NEWS:379 +#: ../NEWS:466 msgid "" ":gh:`148874`: Ignore interrupts immediately after calling the ``__enter__`` " "method of a context menager in a ``with`` statement. This ensures that the " "``__exit__`` method is always called in a ``with`` statement." msgstr "" -#: ../NEWS:383 +#: ../NEWS:470 msgid "" ":gh:`150208`: Avoid double-quoting string values from ``pyconfig.h`` in " "``sysconfigdata`` variables." msgstr "" -#: ../NEWS:389 +#: ../NEWS:476 msgid "" ":gh:`155063`: Bump the version of pip bundled in ensurepip to version 26.2" msgstr "" -#: ../NEWS:391 +#: ../NEWS:478 msgid "" ":gh:`154936`: Fix the pure Python :mod:`json` decoder to report the correct " "position for invalid literal control characters in JSON strings." msgstr "" -#: ../NEWS:394 +#: ../NEWS:481 msgid "" ":gh:`154892`: Fix a bug in the C accelerator for :mod:`zoneinfo` where :" "class:`datetime.datetime` subclasses returning ``-1`` for ``hour``, " "``minute``, or ``second`` could incorrectly raise a :exc:`SystemError`." msgstr "" -#: ../NEWS:398 +#: ../NEWS:485 msgid "" ":gh:`154848`: The :mod:`pickle` C accelerator now enforces frame boundaries " "when unpickling, as the pure Python implementation already did. An argument " @@ -856,27 +1000,27 @@ msgid "" "diverging from the :mod:`pickletools` disassembly of the same pickle." msgstr "" -#: ../NEWS:406 +#: ../NEWS:493 msgid "" ":gh:`154885`: :func:`os.get_terminal_size` now checks ``isatty`` before " "calling ``ioctl``, which reduces log noise on Android." msgstr "" -#: ../NEWS:409 +#: ../NEWS:496 msgid "" ":gh:`109638`: Fix exponential time in :meth:`csv.Sniffer.sniff` for a sample " "which contains many quote characters. A doubled quote character is now also " "detected in a field which contains the delimiter or a line break." msgstr "" -#: ../NEWS:413 +#: ../NEWS:500 msgid "" ":gh:`98820`: Fix quadratic time in :meth:`csv.Sniffer.sniff` for a sample " "which contains quoted fields, in particular for a single column of quoted " "fields." msgstr "" -#: ../NEWS:417 +#: ../NEWS:504 msgid "" ":gh:`154738`: Fix :meth:`!ExternalEntityParserCreate` not propagating the " "reparse-deferral setting to the subparser, which left :meth:`!" @@ -884,7 +1028,7 @@ msgid "" "tonghuaroot." msgstr "" -#: ../NEWS:422 +#: ../NEWS:509 msgid "" ":gh:`93251`: Fix :exc:`UnicodeDecodeError` in :mod:`socket` functions (such " "as :func:`~socket.getaddrinfo` and :func:`~socket.gethostbyaddr`) when the " @@ -892,39 +1036,39 @@ msgid "" "locale encoding." msgstr "" -#: ../NEWS:427 +#: ../NEWS:514 msgid "" ":gh:`148468`: Fix a regression in :mod:`argparse` where colorized argument " "help containing format specifiers did not accept string-like proxy objects." msgstr "" -#: ../NEWS:431 +#: ../NEWS:518 msgid "" ":gh:`142035`: Fix incorrect wrapping of :mod:`argparse` help text when color " "is enabled." msgstr "" -#: ../NEWS:434 +#: ../NEWS:521 msgid "" ":gh:`135736`: Fix ::class:`asyncio.TaskGroup` to not wrap a :exc:" "`GeneratorExit` into a :exc:`BaseExceptionGroup` if it was raised by the " "body of the task group and none of the tasks in the group raised exceptions." msgstr "" -#: ../NEWS:439 +#: ../NEWS:526 msgid "" ":gh:`154551`: Fix :func:`ctypes.util.find_library` returning ``None`` in non-" "UTF-8 locales." msgstr "" -#: ../NEWS:442 +#: ../NEWS:529 msgid "" ":gh:`79366`: Fixed a race condition in :mod:`logging`: if a handler was " "removed while a record was being emitted, the following handlers of the same " "logger could be skipped." msgstr "" -#: ../NEWS:446 +#: ../NEWS:533 msgid "" ":gh:`154189`: Fixed a potential use-after-free when calling :func:`functools." "partial`. Now, when invoking a :func:`~functools.partial` object, the stored " @@ -932,7 +1076,7 @@ msgid "" "duration of the call in case of reentrancy." msgstr "" -#: ../NEWS:451 +#: ../NEWS:538 msgid "" ":gh:`73458`: Fix :func:`logging.config.listen`: it left the caller waiting " "for the ``ready`` event forever if the server could not be started, for " @@ -941,66 +1085,66 @@ msgid "" "is only aliased to ``::1``." msgstr "" -#: ../NEWS:457 +#: ../NEWS:544 msgid "" ":gh:`154460`: Fix :func:`time.strftime` and :meth:`datetime.datetime." "strftime` returning a wrong ISO 8601 week number (``%V``) on OpenBSD." msgstr "" -#: ../NEWS:461 +#: ../NEWS:548 msgid "" ":gh:`154435`: Fix :func:`os.posix_fadvise` and :func:`os.posix_fallocate` on " "DragonFly BSD: they raised :exc:`OSError` with a meaningless error code, " "because these functions return -1 and set ``errno`` there." msgstr "" -#: ../NEWS:465 +#: ../NEWS:552 msgid "" ":gh:`154399`: Fix :mod:`venv` activation in a non-interactive csh: " "``activate.csh`` no longer fails when the ``prompt`` variable is not set." msgstr "" -#: ../NEWS:468 +#: ../NEWS:555 msgid "" ":gh:`154389`: Fix :func:`uuid.uuid1` on OpenBSD: it returned a version 4 " "UUID, because ``uuid_create()`` generates random UUIDs on this platform." msgstr "" -#: ../NEWS:471 +#: ../NEWS:558 msgid "" ":gh:`154324`: Fix :func:`os.sendfile` on illumos: it no longer reports a " "successful transfer when the underlying system call failed without writing " "any data." msgstr "" -#: ../NEWS:475 +#: ../NEWS:562 msgid "" ":gh:`154307`: Fix :meth:`tempfile.TemporaryDirectory.cleanup` on DragonFly " "BSD, where removing a file with the ``UF_NOUNLINK`` flag failed with " "``EISDIR`` instead of ``EPERM``." msgstr "" -#: ../NEWS:479 +#: ../NEWS:566 msgid "" ":gh:`154291`: Fix :func:`socket.has_dualstack_ipv6` to return ``False`` on " "platforms such as DragonFly BSD where setting ``IPV6_V6ONLY`` to 0 silently " "has no effect." msgstr "" -#: ../NEWS:483 +#: ../NEWS:570 msgid "" ":gh:`154283`: On DragonFly BSD, :func:`threading.get_native_id` now returns " "a value that is unique across processes, matching the other platforms." msgstr "" -#: ../NEWS:486 +#: ../NEWS:573 msgid "" ":gh:`154258`: Fix a crash in :meth:`mmap.mmap.resize` on NetBSD when growing " "a shared anonymous mapping. :meth:`!resize` now raises :exc:`ValueError` in " "this case, as it already did on Linux." msgstr "" -#: ../NEWS:490 +#: ../NEWS:577 msgid "" ":gh:`131565`: :func:`ctypes.util.dllist` now works on NetBSD. It is " "implemented in the :mod:`!_ctypes` extension module so that " @@ -1009,20 +1153,20 @@ msgid "" "called through ctypes." msgstr "" -#: ../NEWS:496 +#: ../NEWS:583 msgid "" ":gh:`154225`: Fix :func:`os.openpty` on Solaris and illumos: it no longer " "leaves the pseudo-terminal as the controlling terminal of the calling " "process." msgstr "" -#: ../NEWS:500 +#: ../NEWS:587 msgid "" ":gh:`154227`: Fix :func:`os.posix_openpt` on OpenBSD, where it rejected the :" "data:`~os.O_CLOEXEC` flag." msgstr "" -#: ../NEWS:503 +#: ../NEWS:590 msgid "" ":gh:`145030`: Fix :mod:`asyncio` write pipe transports for named FIFOs on " "macOS and Solaris. Unread data sitting in the FIFO made the transport " @@ -1030,13 +1174,13 @@ msgid "" "transport." msgstr "" -#: ../NEWS:508 +#: ../NEWS:595 msgid "" ":gh:`154176`: Fix a crash in :func:`locale.strxfrm` on DragonFly BSD, whose " "``wcsxfrm()`` does not support the zero size." msgstr "" -#: ../NEWS:511 +#: ../NEWS:598 msgid "" ":gh:`154836`: Fix :meth:`subprocess.Popen.wait` raising :exc:`TypeError` " "(macOS and other BSDs) or :exc:`OverflowError` (Linux) for very large " @@ -1045,7 +1189,7 @@ msgid "" "`OverflowError` for out-of-range timeouts as :exc:`TypeError`." msgstr "" -#: ../NEWS:517 +#: ../NEWS:604 msgid "" ":gh:`154053`: Fix compilation of the :mod:`ssl` module against LibreSSL, " "which does not provide ``SSL_CTX_set1_sigalgs_list()`` and " @@ -1054,23 +1198,23 @@ msgid "" "`NotImplementedError` on LibreSSL." msgstr "" -#: ../NEWS:523 +#: ../NEWS:610 msgid "" ":gh:`154001`: Fix :func:`random.binomialvariate` raising :exc:" "`ZeroDivisionError` when :func:`random.random` returns zero." msgstr "" -#: ../NEWS:526 +#: ../NEWS:613 msgid "" ":gh:`153908`: Fix data race when calling :func:`repr` on :class:`itertools." "count` under the :term:`free-threaded build`." msgstr "" -#: ../NEWS:529 +#: ../NEWS:616 msgid ":gh:`153896`: Deduplicate unhashable args in :data:`typing.Literal`." msgstr "" -#: ../NEWS:531 +#: ../NEWS:618 msgid "" ":gh:`153864`: On a wide :mod:`curses` build, :meth:`curses.window.insch` now " "inserts a non-ASCII byte as the character it encodes in the window's " @@ -1078,27 +1222,27 @@ msgid "" "code point." msgstr "" -#: ../NEWS:536 +#: ../NEWS:623 msgid "" ":gh:`153862`: On a wide :mod:`curses` build, :meth:`curses.window.inch` now " "returns the locale-encoded byte of a non-ASCII character, matching :meth:" "`~curses.window.instr`, instead of the low byte of its code point." msgstr "" -#: ../NEWS:540 +#: ../NEWS:627 msgid "" ":gh:`146011`: Fix a heap-use-after-free in the C implementation of :mod:" "`decimal` when calling :func:`repr` after deleting the :class:`~decimal." "Context`." msgstr "" -#: ../NEWS:544 +#: ../NEWS:631 msgid "" ":gh:`153761`: Fix cancelling :meth:`asyncio.loop.sock_accept` dropping a " "pending connection." msgstr "" -#: ../NEWS:547 +#: ../NEWS:634 msgid "" ":gh:`127049`: Fix a race condition in :mod:`asyncio` on Unix where :meth:" "`asyncio.subprocess.Process.send_signal`, :meth:`~asyncio.subprocess.Process." @@ -1107,7 +1251,7 @@ msgid "" "when ThreadedChildWatcher is used. Patch by Kumar Aditya." msgstr "" -#: ../NEWS:554 +#: ../NEWS:641 msgid "" ":gh:`153404`: :class:`urllib.robotparser.RobotFileParser` now silently " "ignores a ``Crawl-delay`` or ``Request-rate`` value written with non-decimal " @@ -1115,7 +1259,7 @@ msgid "" "`ValueError` and aborting the parse of the whole ``robots.txt`` file." msgstr "" -#: ../NEWS:559 +#: ../NEWS:646 msgid "" ":gh:`153291`: Fix a data race in :func:`readline.get_completer` and :func:" "`readline.get_pre_input_hook` on the :term:`free-threaded ` " @@ -1123,25 +1267,25 @@ msgid "" "the corresponding setters hold." msgstr "" -#: ../NEWS:564 +#: ../NEWS:651 msgid "" ":gh:`153133`: Fix a socket leak in :meth:`asyncio.loop.create_connection` " "when the transport cannot be created." msgstr "" -#: ../NEWS:567 +#: ../NEWS:654 msgid "" ":gh:`152431`: Fix ``asyncio.StreamWriter.start_tls()`` to keep the linked " "``StreamReader`` transport in sync with the upgraded transport." msgstr "" -#: ../NEWS:570 +#: ../NEWS:657 msgid "" ":gh:`151955`: Allow more types to be used in the ``bound`` argument to :" "class:`typing.ParamSpec` and :class:`typing.TypeVarTuple`." msgstr "" -#: ../NEWS:573 +#: ../NEWS:660 msgid "" ":gh:`119710`: Fix :mod:`asyncio` subprocess :meth:`~asyncio.subprocess." "Process.wait` hanging when the process has exited but one of its pipes is " @@ -1150,118 +1294,118 @@ msgid "" "pipes' state." msgstr "" -#: ../NEWS:579 +#: ../NEWS:666 msgid "" ":gh:`151022`: Fix ``_remote_debugging`` stack traces for code objects with " "large line tables." msgstr "" -#: ../NEWS:582 +#: ../NEWS:669 msgid "" ":gh:`149319`: The :mod:`asyncio` REPL now ignores :envvar:`PYTHONSTARTUP` " "and :envvar:`PYTHON_BASIC_REPL` when :option:`-E` or :option:`-I` is used. " "Patch by Jonathan Dung." msgstr "" -#: ../NEWS:586 +#: ../NEWS:673 msgid "" ":gh:`148665`: socket.shutdown function is now enabled for Emscripten builds. " "However, if the runtime does not implement the shutdown syscall, it will " "show \"Function not implemented\" error." msgstr "" -#: ../NEWS:590 +#: ../NEWS:677 msgid "" ":gh:`140326`: Fix the :mod:`asyncio` REPL namespace so that relative imports " "no longer resolve against the :mod:`asyncio` package and ``__file__`` is no " "longer set." msgstr "" -#: ../NEWS:594 +#: ../NEWS:681 msgid "" ":gh:`103925`: Fix :meth:`csv.Sniffer.sniff` for a sample with ``\\r\\n`` " "line endings in which a quoted field ends a line: a letter could be detected " "as the delimiter." msgstr "" -#: ../NEWS:599 ../NEWS:1532 ../NEWS:2646 ../NEWS:3305 ../NEWS:3668 ../NEWS:4508 -#: ../NEWS:5142 ../NEWS:7568 ../NEWS:8884 ../NEWS:9473 ../NEWS:9933 -#: ../NEWS:10511 ../NEWS:11358 ../NEWS:11978 ../NEWS:13554 ../NEWS:15149 -#: ../NEWS:15614 ../NEWS:16092 ../NEWS:16629 ../NEWS:17444 ../NEWS:19967 -#: ../NEWS:21494 ../NEWS:21939 ../NEWS:22210 ../NEWS:22489 ../NEWS:22900 -#: ../NEWS:23225 ../NEWS:23657 ../NEWS:25413 ../NEWS:26658 ../NEWS:27264 -#: ../NEWS:27791 ../NEWS:28154 ../NEWS:28618 ../NEWS:29014 ../NEWS:29513 -#: ../NEWS:31176 ../NEWS:32255 ../NEWS:32723 ../NEWS:33015 ../NEWS:33291 -#: ../NEWS:33656 ../NEWS:34116 ../NEWS:34588 ../NEWS:35632 ../NEWS:36180 -#: ../NEWS:36624 ../NEWS:37082 ../NEWS:37486 ../NEWS:37909 ../NEWS:38224 -#: ../NEWS:39569 ../NEWS:40875 ../NEWS:41342 ../NEWS:41820 ../NEWS:42062 -#: ../NEWS:44246 ../NEWS:45222 ../NEWS:45432 ../NEWS:45582 ../NEWS:45800 -#: ../NEWS:46045 ../NEWS:46370 ../NEWS:46710 ../NEWS:47193 ../NEWS:47536 -#: ../NEWS:49146 ../NEWS:49900 ../NEWS:50256 ../NEWS:50653 ../NEWS:51052 -#: ../NEWS:51621 ../NEWS:51941 ../NEWS:52097 ../NEWS:52200 ../NEWS:53559 -#: ../NEWS:53810 ../NEWS:54977 ../NEWS:55537 ../NEWS:56204 ../NEWS:56930 -#: ../NEWS:57491 ../NEWS:57744 ../NEWS:57943 ../NEWS:58254 ../NEWS:60455 +#: ../NEWS:686 ../NEWS:1619 ../NEWS:2733 ../NEWS:3392 ../NEWS:3755 ../NEWS:4595 +#: ../NEWS:5229 ../NEWS:7655 ../NEWS:8971 ../NEWS:9560 ../NEWS:10020 +#: ../NEWS:10598 ../NEWS:11445 ../NEWS:12065 ../NEWS:13641 ../NEWS:15236 +#: ../NEWS:15701 ../NEWS:16179 ../NEWS:16716 ../NEWS:17531 ../NEWS:20054 +#: ../NEWS:21581 ../NEWS:22026 ../NEWS:22297 ../NEWS:22576 ../NEWS:22987 +#: ../NEWS:23312 ../NEWS:23744 ../NEWS:25500 ../NEWS:26745 ../NEWS:27351 +#: ../NEWS:27878 ../NEWS:28241 ../NEWS:28705 ../NEWS:29101 ../NEWS:29600 +#: ../NEWS:31263 ../NEWS:32342 ../NEWS:32810 ../NEWS:33102 ../NEWS:33378 +#: ../NEWS:33743 ../NEWS:34203 ../NEWS:34675 ../NEWS:35719 ../NEWS:36267 +#: ../NEWS:36711 ../NEWS:37169 ../NEWS:37573 ../NEWS:37996 ../NEWS:38311 +#: ../NEWS:39656 ../NEWS:40962 ../NEWS:41429 ../NEWS:41907 ../NEWS:42149 +#: ../NEWS:44333 ../NEWS:45309 ../NEWS:45519 ../NEWS:45669 ../NEWS:45887 +#: ../NEWS:46132 ../NEWS:46457 ../NEWS:46797 ../NEWS:47280 ../NEWS:47623 +#: ../NEWS:49233 ../NEWS:49987 ../NEWS:50343 ../NEWS:50740 ../NEWS:51139 +#: ../NEWS:51708 ../NEWS:52028 ../NEWS:52184 ../NEWS:52287 ../NEWS:53646 +#: ../NEWS:53897 ../NEWS:55064 ../NEWS:55624 ../NEWS:56291 ../NEWS:57017 +#: ../NEWS:57578 ../NEWS:57831 ../NEWS:58030 ../NEWS:58341 ../NEWS:60542 msgid "Documentation" msgstr "" -#: ../NEWS:601 +#: ../NEWS:688 msgid "" ":gh:`118150`: Clarify in the :mod:`difflib` documentation what *junk* " "actually does, its drawbacks, and how to control it." msgstr "" -#: ../NEWS:605 ../NEWS:1180 ../NEWS:1547 ../NEWS:1865 ../NEWS:2656 ../NEWS:3315 -#: ../NEWS:3432 ../NEWS:3888 ../NEWS:4307 ../NEWS:4642 ../NEWS:4787 -#: ../NEWS:5407 ../NEWS:6166 ../NEWS:8446 ../NEWS:9270 ../NEWS:9650 -#: ../NEWS:10214 ../NEWS:10764 ../NEWS:11112 ../NEWS:11580 ../NEWS:12265 -#: ../NEWS:15625 ../NEWS:16100 ../NEWS:16643 ../NEWS:17458 ../NEWS:18050 -#: ../NEWS:20014 ../NEWS:21514 ../NEWS:21945 ../NEWS:22219 ../NEWS:22496 -#: ../NEWS:22914 ../NEWS:23246 ../NEWS:23665 ../NEWS:25499 ../NEWS:26695 -#: ../NEWS:27290 ../NEWS:27797 ../NEWS:28160 ../NEWS:28631 ../NEWS:29045 -#: ../NEWS:29548 ../NEWS:31311 ../NEWS:32278 ../NEWS:32738 ../NEWS:33024 -#: ../NEWS:33300 ../NEWS:33665 ../NEWS:34128 ../NEWS:34609 ../NEWS:35674 -#: ../NEWS:36197 ../NEWS:36638 ../NEWS:37101 ../NEWS:37511 ../NEWS:38238 -#: ../NEWS:39673 ../NEWS:40924 ../NEWS:41377 ../NEWS:41834 ../NEWS:42073 -#: ../NEWS:44411 ../NEWS:45447 ../NEWS:45601 ../NEWS:45817 ../NEWS:46069 -#: ../NEWS:46383 ../NEWS:46715 ../NEWS:47199 ../NEWS:49194 ../NEWS:49938 -#: ../NEWS:50051 ../NEWS:50276 ../NEWS:50666 ../NEWS:51064 ../NEWS:51643 -#: ../NEWS:51954 ../NEWS:52205 ../NEWS:52340 ../NEWS:52611 ../NEWS:53041 -#: ../NEWS:53314 ../NEWS:53568 ../NEWS:53822 ../NEWS:54995 ../NEWS:55555 -#: ../NEWS:56209 ../NEWS:56330 ../NEWS:56953 ../NEWS:57515 ../NEWS:57759 -#: ../NEWS:57936 ../NEWS:58245 ../NEWS:58474 ../NEWS:58684 ../NEWS:60495 +#: ../NEWS:692 ../NEWS:1267 ../NEWS:1634 ../NEWS:1952 ../NEWS:2743 ../NEWS:3402 +#: ../NEWS:3519 ../NEWS:3975 ../NEWS:4394 ../NEWS:4729 ../NEWS:4874 +#: ../NEWS:5494 ../NEWS:6253 ../NEWS:8533 ../NEWS:9357 ../NEWS:9737 +#: ../NEWS:10301 ../NEWS:10851 ../NEWS:11199 ../NEWS:11667 ../NEWS:12352 +#: ../NEWS:15712 ../NEWS:16187 ../NEWS:16730 ../NEWS:17545 ../NEWS:18137 +#: ../NEWS:20101 ../NEWS:21601 ../NEWS:22032 ../NEWS:22306 ../NEWS:22583 +#: ../NEWS:23001 ../NEWS:23333 ../NEWS:23752 ../NEWS:25586 ../NEWS:26782 +#: ../NEWS:27377 ../NEWS:27884 ../NEWS:28247 ../NEWS:28718 ../NEWS:29132 +#: ../NEWS:29635 ../NEWS:31398 ../NEWS:32365 ../NEWS:32825 ../NEWS:33111 +#: ../NEWS:33387 ../NEWS:33752 ../NEWS:34215 ../NEWS:34696 ../NEWS:35761 +#: ../NEWS:36284 ../NEWS:36725 ../NEWS:37188 ../NEWS:37598 ../NEWS:38325 +#: ../NEWS:39760 ../NEWS:41011 ../NEWS:41464 ../NEWS:41921 ../NEWS:42160 +#: ../NEWS:44498 ../NEWS:45534 ../NEWS:45688 ../NEWS:45904 ../NEWS:46156 +#: ../NEWS:46470 ../NEWS:46802 ../NEWS:47286 ../NEWS:49281 ../NEWS:50025 +#: ../NEWS:50138 ../NEWS:50363 ../NEWS:50753 ../NEWS:51151 ../NEWS:51730 +#: ../NEWS:52041 ../NEWS:52292 ../NEWS:52427 ../NEWS:52698 ../NEWS:53128 +#: ../NEWS:53401 ../NEWS:53655 ../NEWS:53909 ../NEWS:55082 ../NEWS:55642 +#: ../NEWS:56296 ../NEWS:56417 ../NEWS:57040 ../NEWS:57602 ../NEWS:57846 +#: ../NEWS:58023 ../NEWS:58332 ../NEWS:58561 ../NEWS:58771 ../NEWS:60582 msgid "Tests" msgstr "" -#: ../NEWS:607 +#: ../NEWS:694 msgid ":gh:`76595`: Add C API tests for :c:func:`PyCapsule_Import`." msgstr "" -#: ../NEWS:609 +#: ../NEWS:696 msgid "" ":gh:`154211`: Add ``test.support.skip_if_huge_c_stack()`` and use it to skip " "tests that exhaust the C stack if the stack limit is very large (e.g. on " "DragonFly BSD or with ``ulimit -s unlimited``)." msgstr "" -#: ../NEWS:613 +#: ../NEWS:700 msgid "" ":gh:`154167`: The test runner (regrtest) now restores the default SIGINT " "handler if it was inherited as ignored, so the test suite no longer hangs " "when run as a shell background job." msgstr "" -#: ../NEWS:617 +#: ../NEWS:704 msgid ":gh:`154144`: Fix building the :mod:`!_testcapi` module on NetBSD." msgstr "" -#: ../NEWS:619 +#: ../NEWS:706 msgid "" ":gh:`152548`: Add the :func:`test.support.isolation.runInSubprocess` " "decorator to run a test method or ``TestCase`` subclass in a fresh " "interpreter subprocess, isolated from the rest of the test run." msgstr "" -#: ../NEWS:626 +#: ../NEWS:713 msgid "" ":gh:`154070`: Build the :mod:`curses` module against a wide-character " "capable ncurses even when it is not named ``ncursesw`` -- for example the " @@ -1269,22 +1413,22 @@ msgid "" "a library previously produced a narrow build." msgstr "" -#: ../NEWS:631 +#: ../NEWS:718 msgid ":gh:`138800`: Fix library name in python3.pc on Android." msgstr "" -#: ../NEWS:636 +#: ../NEWS:723 msgid ":gh:`124111`: Updated Windows builds to use Tcl/Tk 9.0.4." msgstr "" -#: ../NEWS:641 +#: ../NEWS:728 msgid "" ":gh:`154580`: Fix ``python-gdb.py`` raising :exc:`UnicodeEncodeError` when " "pretty-printing a non-ASCII :class:`str` in a locale whose host charset " "cannot encode it, such as any non-ASCII string in the C locale." msgstr "" -#: ../NEWS:645 +#: ../NEWS:732 msgid "" ":gh:`152384`: The CPython Pixi packages are now all accessible at the same " "``Tools/pixi-packages`` subdirectory, rather than at ``Tools/pixi-packages/" @@ -1296,46 +1440,46 @@ msgid "" "previous names." msgstr "" -#: ../NEWS:657 +#: ../NEWS:744 msgid "" ":gh:`122931`: Allow importing stable ABI C extensions that include a " "multiarch tuple in their filename, e.g. ``foo.abi3-x86-64-linux-gnu.so``." msgstr "" -#: ../NEWS:662 +#: ../NEWS:749 msgid "Python 3.15.0 beta 4" msgstr "" -#: ../NEWS:664 +#: ../NEWS:751 msgid "*Release date: 2026-07-18*" msgstr "" -#: ../NEWS:669 +#: ../NEWS:756 msgid "" ":gh:`153030`: Fixed quadratic complexity in incremental parsing of long " "unterminated constructs (such as tags or comments) in :class:`html.parser." "HTMLParser`, which could be exploited for a denial of service." msgstr "" -#: ../NEWS:674 +#: ../NEWS:761 msgid "" ":gh:`152216`: Update bundled `libexpat `_ to " "version 2.8.2." msgstr "" -#: ../NEWS:677 +#: ../NEWS:764 msgid "" ":gh:`151987`: The :meth:`tarfile.TarFile.extract` method now applies the " "given filter when it extracts a link target from the archive as a fallback." msgstr "" -#: ../NEWS:681 +#: ../NEWS:768 msgid "" ":gh:`151981`: In :mod:`tarfile`, seeking a stream now stops when end of the " "stream is reached." msgstr "" -#: ../NEWS:684 +#: ../NEWS:771 msgid "" ":gh:`151558`: Fixed an vulnerability in the :mod:`tarfile` ``data`` and " "``tar`` extraction filters where crafted archives could create a symlink " @@ -1343,7 +1487,7 @@ msgid "" "`2025-4330`." msgstr "" -#: ../NEWS:689 +#: ../NEWS:776 msgid "" ":gh:`150743`: :mod:`http.client` now limits the number of chunked-response " "trailer lines it will read to :attr:`~http.client.HTTPConnection." @@ -1354,38 +1498,38 @@ msgid "" "``@YLChen-007`` via GHSA-w4q2-g22w-6fr4." msgstr "" -#: ../NEWS:697 +#: ../NEWS:784 msgid "" ":gh:`143927`: Normalize all line endings (CR, CRLF, and LF) to LF+TAB when " "writing multi-line configparser values." msgstr "" -#: ../NEWS:703 +#: ../NEWS:790 msgid "" ":gh:`153298`: Fixes a data race in :class:`types.GenericAlias` " "``__parameters__`` initialization on free-threading builds." msgstr "" -#: ../NEWS:706 +#: ../NEWS:793 msgid "" ":gh:`153205`: Fix a potential :exc:`SystemError` during vector calls when " "memory allocation fails. A :exc:`MemoryError` is now raised instead." msgstr "" -#: ../NEWS:709 +#: ../NEWS:796 msgid "" ":gh:`152682`: Fix NULL pointer dereference in :func:`compile` when a " "reserved name (e.g. ``__classdict__``) is used as a type parameter name and " "memory allocation fails while formatting the error message." msgstr "" -#: ../NEWS:713 +#: ../NEWS:800 msgid "" ":gh:`152635`: Fix a crash caused when running out of memory creating a :mod:" "`!_interpchannels` channel. Now a :exc:`MemoryError` is correctly raised." msgstr "" -#: ../NEWS:717 +#: ../NEWS:804 msgid "" ":gh:`152405`: Do not expose the internal mapping of :class:`types." "MappingProxyType` when performing rich-compare operations with non-stdlib " @@ -1394,98 +1538,98 @@ msgid "" "when dealing with custom types." msgstr "" -#: ../NEWS:723 +#: ../NEWS:810 msgid "" ":gh:`152492`: :type:`collections.OrderedDict` ``update`` method can now " "accept :type:`frozendict` as an argument." msgstr "" -#: ../NEWS:726 +#: ../NEWS:813 msgid "" ":gh:`152375`: Fix undefined behaviour when a :mod:`sys.monitoring` callback " "raised an exception while the program was following a branch or loop." msgstr "" -#: ../NEWS:729 +#: ../NEWS:816 msgid "" ":gh:`152235`: Defer GC tracking of :meth:`set.intersection`, :meth:`set." "difference`, :meth:`set.symmetric_difference`, :meth:`set.union` and ``set." "__sub__``. Patch by Donghee Na." msgstr "" -#: ../NEWS:733 +#: ../NEWS:820 msgid "" ":gh:`152235`: Defer GC tracking of a :class:`set` or :class:`frozenset` to " "the end of its construction from iterable. Patch by Donghee Na." msgstr "" -#: ../NEWS:736 +#: ../NEWS:823 msgid "" ":gh:`152228`: Fix an assertion failure when python is built in a debug mode " "that happened in :meth:`str.replace` under a limited memory situation." msgstr "" -#: ../NEWS:739 +#: ../NEWS:826 msgid "" ":gh:`151722`: :meth:`!frozendict.fromkeys` now only tracks the :class:" "`frozendict` in the garbage collector once the dictionary is fully " "initialized. Patch by Donghee Na and Victor Stinner." msgstr "" -#: ../NEWS:743 +#: ../NEWS:830 msgid "" ":gh:`151763`: Fixes possible crash on :class:`types.CodeType` deallocation." msgstr "" -#: ../NEWS:745 +#: ../NEWS:832 msgid "" ":gh:`152020`: On the free-threaded build, :func:`asyncio.all_tasks` no " "longer loses eager-started tasks when called from a thread other than the " "one running the event loop." msgstr "" -#: ../NEWS:749 +#: ../NEWS:836 msgid "" ":gh:`151763`: Fix a potential crash in :func:`compile`, :func:`exec`, :func:" "`eval` and :func:`ast.parse` when an allocation fails: the parser or " "compiler could return without setting an exception." msgstr "" -#: ../NEWS:753 +#: ../NEWS:840 msgid "" ":gh:`151912`: Fixed a crash in ``type()`` when selecting a metaclass whose " "``tp_new`` slot is ``NULL``. Such metaclasses are now rejected with " "``TypeError`` instead of causing a NULL pointer dereference." msgstr "" -#: ../NEWS:757 +#: ../NEWS:844 msgid "" ":gh:`151773`: Fix a crash in :func:`contextvars.ContextVar.set` when memory " "allocation fails." msgstr "" -#: ../NEWS:760 +#: ../NEWS:847 msgid "" ":gh:`151672`: Fix an inconsistency where calling ``__lazy_import__`` with a " "string ``fromlist`` would return a :class:`types.LazyImportType` that " "resolves to the named member, rather than the module being imported." msgstr "" -#: ../NEWS:764 +#: ../NEWS:851 msgid "" ":gh:`151619`: Fix an issue where using non-module global or builtin " "namespaces (such as dictionaries passed to :func:`exec`) could cause cached " "global loads to produce unresolved :ref:`lazy imports `." msgstr "" -#: ../NEWS:769 +#: ../NEWS:856 msgid "" ":gh:`151126`: Fix a crash when sharing :class:`memoryview` objects between " "interpreters fails due to running out of memory. It now raises a proper :exc:" "`MemoryError`." msgstr "" -#: ../NEWS:773 +#: ../NEWS:860 msgid "" ":gh:`151644`: Fix a data race in :func:`sys.setdlopenflags` and :func:`sys." "getdlopenflags` when called concurrently in the free-threaded build. The " @@ -1493,76 +1637,76 @@ msgid "" "functions now use atomic load/store operations." msgstr "" -#: ../NEWS:779 +#: ../NEWS:866 msgid "" ":gh:`151126`: Avoid possible crash in ``_winapi.c`` where a device has no " "memory left. Now it properly raises a :exc:`MemoryError`. Patch by Ivy Xu." msgstr "" -#: ../NEWS:782 +#: ../NEWS:869 msgid "" ":gh:`151029`: On Linux, fix :func:`sys.remote_exec` unable to find remote " "writable memory when ``libpython`` replaced on disk." msgstr "" -#: ../NEWS:785 +#: ../NEWS:872 msgid "" ":gh:`150459`: Fix :exc:`SyntaxError` error message for ``from x lazy import " "y``. Raise :exc:`SyntaxWarning` on ``from . lazy import x`` (with whitespace " "between the dots and a module named ``lazy``)." msgstr "" -#: ../NEWS:789 +#: ../NEWS:876 msgid "" ":gh:`150858`: Fix a data race while changing ``__qualname__`` of a type " "concurrently on free-threaded builds." msgstr "" -#: ../NEWS:792 +#: ../NEWS:879 msgid "" ":gh:`144774`: Fix data race in :class:`BaseException` when an exception is " "copied while being mutated." msgstr "" -#: ../NEWS:795 +#: ../NEWS:882 msgid "" ":gh:`150411`: Fix a data race in the free-threaded build when :func:`gc." "get_count` reads the young generation allocation count while another thread " "updates it." msgstr "" -#: ../NEWS:799 +#: ../NEWS:886 msgid "" ":gh:`149689`: Fix missing error propagation in parser action helpers when " "memory allocation fails. Patch by Thomas Kowalski." msgstr "" -#: ../NEWS:802 +#: ../NEWS:889 msgid "" ":gh:`149162`: Fix a potential deadlock in :c:func:" "`PyUnicode_InternFromString` and other interning functions in the :term:" "`free-threaded build` when called from C++ static local initializers." msgstr "" -#: ../NEWS:807 +#: ../NEWS:894 msgid ":gh:`148825`: Fix build error if specialization is disabled." msgstr "" -#: ../NEWS:812 +#: ../NEWS:899 msgid "" ":gh:`153695`: Hashing a :class:`sqlite3.Row` that contains an unhashable " "value now raises :exc:`TypeError` instead of :exc:`SystemError`. Patch by " "tonghuaroot." msgstr "" -#: ../NEWS:816 +#: ../NEWS:903 msgid "" ":gh:`153658`: Fix :meth:`sqlite3.Connection.iterdump` raising :exc:`sqlite3." "OperationalError` when a table name contains a single quote. Patch by " "tonghuaroot." msgstr "" -#: ../NEWS:820 +#: ../NEWS:907 msgid "" ":gh:`85943`: Fix :mod:`struct` functions raising :exc:`BytesWarning` under " "the ``-bb`` command line option when a :class:`str` format is used after an " @@ -1570,7 +1714,7 @@ msgid "" "longer mixes :class:`str` and :class:`bytes` keys." msgstr "" -#: ../NEWS:825 +#: ../NEWS:912 msgid "" ":gh:`151292`: Store the sample count in :mod:`profiling.sampling` binary " "format, as a 64-bit integer, widening from previously used 32-bit integer. " @@ -1579,46 +1723,46 @@ msgid "" "Pawłowski-Wieroński." msgstr "" -#: ../NEWS:831 +#: ../NEWS:918 msgid "" ":gh:`153417`: Error messages from :meth:`imaplib.IMAP4.select` and :meth:" "`imaplib.IMAP4.uid` no longer raise :exc:`BytesWarning` under :option:`!-bb` " "when the mailbox or command argument is :class:`bytes`." msgstr "" -#: ../NEWS:835 +#: ../NEWS:922 msgid "" ":gh:`153406`: :func:`email.utils.parsedate_to_datetime` now raises :exc:" "`ValueError` instead of :exc:`OverflowError` when the parsed year or " "timezone offset is out of range, matching its documented behavior." msgstr "" -#: ../NEWS:839 +#: ../NEWS:926 msgid "" ":gh:`153333`: The ``readprofile`` method of :class:`tkinter.Tk` now reads " "the user's profile scripts using the encoding declared in the file, instead " "of the locale encoding." msgstr "" -#: ../NEWS:843 +#: ../NEWS:930 msgid "" ":gh:`153083`: Defer GC tracking of an :class:`array.array` to the end of its " "construction. Patch by Donghee Na." msgstr "" -#: ../NEWS:846 +#: ../NEWS:933 msgid "" ":gh:`153292`: Fix data race in repr of :class:`threading.RLock` in free-" "threading build." msgstr "" -#: ../NEWS:849 +#: ../NEWS:936 msgid "" ":gh:`153293`: Fix the live sampling profiler TUI keeping stale aggregated " "opcode statistics after a stats reset." msgstr "" -#: ../NEWS:852 +#: ../NEWS:939 msgid "" ":gh:`143990`: A :class:`tkinter.font.Font` created from a named font, " "including by :meth:`~tkinter.font.Font.copy`, now copies its configured " @@ -1626,37 +1770,37 @@ msgid "" "preserving a size specified in pixels (a negative size)." msgstr "" -#: ../NEWS:857 +#: ../NEWS:944 msgid "" ":gh:`148286`: Fix undefined behavior in :attr:`compression.zstd." "ZstdDecompressor.unused_data` when a complete frame was decompressed in a " "single call." msgstr "" -#: ../NEWS:861 +#: ../NEWS:948 msgid ":gh:`153210`: Fix crash on :mod:`array` import under a memory pressure." msgstr "" -#: ../NEWS:863 +#: ../NEWS:950 msgid "" ":gh:`153200`: Fix :func:`math.isqrt` returning an incorrect result for " "arguments not less than 2**64 that are instances of an :class:`int` subclass " "with an overridden comparison operator." msgstr "" -#: ../NEWS:867 +#: ../NEWS:954 msgid "" ":gh:`153068`: Fix :meth:`!cProfile.Profile.enable` to no longer overwrite " "errors from :mod:`sys.monitoring`." msgstr "" -#: ../NEWS:870 +#: ../NEWS:957 msgid "" ":gh:`153062`: Fix a crash when concurrently iterating an :func:`itertools." "tee` iterator on the free-threaded build." msgstr "" -#: ../NEWS:873 +#: ../NEWS:960 msgid "" ":gh:`153056`: Fix :class:`string.Template` raising a spurious :exc:" "`ValueError` when the *pattern* attribute is a compiled regular expression " @@ -1664,7 +1808,7 @@ msgid "" "also occurred as a data race on the first concurrent use." msgstr "" -#: ../NEWS:878 +#: ../NEWS:965 msgid "" ":gh:`143921`: Narrow the control character check in :mod:`imaplib` commands: " "only NUL, CR and LF are now rejected. Other control characters are valid in " @@ -1672,27 +1816,27 @@ msgid "" "they are now accepted and sent quoted." msgstr "" -#: ../NEWS:883 +#: ../NEWS:970 msgid "" ":gh:`153037`: Fix :class:`~compression.zstd.ZstdFile` raising :exc:" "`AttributeError` instead of :exc:`io.UnsupportedOperation` when iterating " "over a file that is not open for reading." msgstr "" -#: ../NEWS:887 +#: ../NEWS:974 msgid "" ":gh:`135661`: Fix :class:`html.parser.HTMLParser`: an abruptly closed empty " "comment (```` or ````) no longer extends up to a later ``-->`` in " "the same :meth:`~html.parser.HTMLParser.feed` call." msgstr "" -#: ../NEWS:891 +#: ../NEWS:978 msgid "" ":gh:`152851`: Prevent a crash when allocation fails while copying a :func:" "`BLAKE-2s/2b ` object. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:894 +#: ../NEWS:981 msgid "" ":gh:`54930`: Error responses of :class:`http.server.BaseHTTPRequestHandler` " "to malformed request lines now include a status line and headers instead of " @@ -1700,7 +1844,7 @@ msgid "" "word ``GET`` request line) now receives an HTTP/0.9 style response." msgstr "" -#: ../NEWS:899 +#: ../NEWS:986 msgid "" ":gh:`119592`: Fix :class:`concurrent.futures.ProcessPoolExecutor` stranding " "submitted work forever when a worker process exited upon reaching its " @@ -1714,26 +1858,26 @@ msgid "" "crash the executor management thread." msgstr "" -#: ../NEWS:911 +#: ../NEWS:998 msgid "" ":gh:`150579`: :mod:`concurrent.futures` now uses lazy imports for its " "executor submodules instead of a module ``__getattr__`` hook." msgstr "" -#: ../NEWS:914 +#: ../NEWS:1001 msgid "" ":gh:`152951`: :class:`collections.deque` prevent rare crash when calling " "``extend`` under high memory pressure conditions." msgstr "" -#: ../NEWS:917 +#: ../NEWS:1004 msgid "" ":gh:`150880`: Normalize non-extended Windows paths before appending the " "wildcard used by ``os.listdir()`` and ``os.scandir()``, making paths with " "trailing spaces behave consistently with other filesystem APIs." msgstr "" -#: ../NEWS:921 +#: ../NEWS:1008 msgid "" ":gh:`152068`: Fixes a bug when a line was split (particularly on macOS " "Terminal.app) in the middle of a colorized keyword, causing the ANSI Color " @@ -1741,27 +1885,27 @@ msgid "" "colored when it shouldn't" msgstr "" -#: ../NEWS:926 +#: ../NEWS:1013 msgid "" ":gh:`152849`: Out-of-range float and integer timestamps now raise :exc:" "`OverflowError` with the same message. Patch by tonghuaroot." msgstr "" -#: ../NEWS:929 +#: ../NEWS:1016 msgid "" ":gh:`152847`: Reject a POSIX TZ transition rule with non-digit characters in " "the day-of-year field in the pure-Python :mod:`zoneinfo` parser. Patch by " "tonghuaroot." msgstr "" -#: ../NEWS:933 +#: ../NEWS:1020 msgid "" ":gh:`152718`: Fix unbounded memory allocation in the :mod:`profiling." "sampling` binary profile reader when a file declares more string or frame " "entries than it contains." msgstr "" -#: ../NEWS:937 +#: ../NEWS:1024 msgid "" ":gh:`108280`: Connecting :mod:`imaplib` to a server that does not send a " "valid IMAP4 greeting (for example a POP3 server answering on the IMAP port) " @@ -1769,7 +1913,7 @@ msgid "" "IMAP4.error: None``." msgstr "" -#: ../NEWS:942 +#: ../NEWS:1029 msgid "" ":gh:`63121`: :mod:`imaplib` now refreshes the cached capability list after a " "successful :meth:`~imaplib.IMAP4.login` or :meth:`~imaplib.IMAP4." @@ -1780,7 +1924,7 @@ msgid "" "redundant ``CAPABILITY`` command." msgstr "" -#: ../NEWS:951 +#: ../NEWS:1038 msgid "" ":gh:`88574`: :mod:`imaplib` no longer fails when a server sends a spurious " "blank line after the counted data of a literal, including after a literal " @@ -1788,7 +1932,7 @@ msgid "" "Such blank lines are now skipped without swallowing the following line." msgstr "" -#: ../NEWS:956 +#: ../NEWS:1043 msgid "" ":gh:`152502`: Detect the :mod:`curses` mouse interface (:func:`~curses." "getmouse`, the ``BUTTON*`` constants, and others) with a configure " @@ -1798,13 +1942,13 @@ msgid "" "``windows-curses``)." msgstr "" -#: ../NEWS:963 +#: ../NEWS:1050 msgid "" ":gh:`151842`: Fix a crash in :func:`!_interpreters.capture_exception` when :" "exc:`MemoryError` happens. Patch by Amrutha Modela." msgstr "" -#: ../NEWS:966 +#: ../NEWS:1053 msgid "" ":gh:`40038`: :mod:`imaplib` now again quotes command arguments when " "necessary, for example mailbox names containing a space. Such quoting was " @@ -1814,7 +1958,7 @@ msgid "" "unchanged, so code that quotes arguments itself keeps working." msgstr "" -#: ../NEWS:973 +#: ../NEWS:1060 msgid "" ":gh:`50966`: Fix unbounded recursion in :mod:`turtle` when a mouse event " "handler that moves the turtle is reentered while the screen is being " @@ -1822,7 +1966,7 @@ msgid "" "previously crash the interpreter." msgstr "" -#: ../NEWS:978 +#: ../NEWS:1065 msgid "" ":gh:`152569`: Fix :func:`asyncio.wait` leaking waiting tasks via the await-" "graph when racing a future that never resolves. The waiting task is now " @@ -1830,7 +1974,7 @@ msgid "" "returns, even for pending futures." msgstr "" -#: ../NEWS:983 +#: ../NEWS:1070 msgid "" ":gh:`110357`: Importing :mod:`hashlib` no longer logs an error to stderr " "when a normally guaranteed hash algorithm is unavailable in the current " @@ -1840,14 +1984,14 @@ msgid "" "`ValueError`." msgstr "" -#: ../NEWS:990 +#: ../NEWS:1077 msgid "" ":gh:`152356`: Fix a hang in ``profiling.sampling run --blocking`` on Windows " "when the target process exits. The profiler now finalizes binary profiles " "instead of continuing to sample the exited process." msgstr "" -#: ../NEWS:994 +#: ../NEWS:1081 msgid "" ":gh:`78335`: Update the docstrings of :mod:`tkinter` and :mod:`tkinter.ttk` " "widget classes to list all supported widget options, including options added " @@ -1855,20 +1999,20 @@ msgid "" "previously had no option list at all." msgstr "" -#: ../NEWS:999 +#: ../NEWS:1086 msgid "" ":gh:`151126`: Fix two crashes in :mod:`tkinter` and :mod:`socket` modules " "initialization under a memory pressure. Sets missing :exc:`MemoryError`." msgstr "" -#: ../NEWS:1002 +#: ../NEWS:1089 msgid "" ":gh:`133031`: :class:`curses.textpad.Textbox` now enters and reads back the " "non-ASCII characters of an 8-bit locale encoding, instead of mangling them " "with a 7-bit mask." msgstr "" -#: ../NEWS:1006 +#: ../NEWS:1093 msgid "" ":gh:`71880`: :class:`curses.textpad.Textbox` now lets the lower-right cell " "of the window be edited. Writing it with :meth:`~curses.window.addch` would " @@ -1877,7 +2021,7 @@ msgid "" "which keeps the cursor in place." msgstr "" -#: ../NEWS:1012 +#: ../NEWS:1099 msgid "" ":gh:`83274`: Deallocating a :mod:`tkinter` application from a thread other " "than the one it was created in no longer crashes the interpreter. The " @@ -1885,14 +2029,14 @@ msgid "" "reported." msgstr "" -#: ../NEWS:1017 +#: ../NEWS:1104 msgid "" ":gh:`152305`: Fix the pure-Python :meth:`datetime.time.strftime` " "implementation raising :exc:`AttributeError` for the year directives. Patch " "by tonghuaroot." msgstr "" -#: ../NEWS:1021 +#: ../NEWS:1108 msgid "" ":gh:`88758`: :meth:`!tkinter.Misc.focus_get`, :meth:`!focus_displayof`, :" "meth:`!focus_lastfor` and :meth:`!winfo_containing` now return ``None`` " @@ -1900,21 +2044,21 @@ msgid "" "`tkinter` (for example a torn-off menu)." msgstr "" -#: ../NEWS:1026 +#: ../NEWS:1113 msgid "" ":gh:`38464`: :meth:`!tkinter.Misc.nametowidget` now resolves the auto-" "generated names of cloned menus (a menu used as a menubar or a cascade) back " "to the original widget." msgstr "" -#: ../NEWS:1030 +#: ../NEWS:1117 msgid "" ":gh:`152248`: Make the C and pure-Python :mod:`zoneinfo` parsers validate " "POSIX TZ abbreviations consistently, rejecting unquoted abbreviations with " "non-letter characters and empty quoted abbreviations. Patch by tonghuaroot." msgstr "" -#: ../NEWS:1035 +#: ../NEWS:1122 msgid "" ":gh:`80937`: Fix a memory leak in :mod:`tkinter` when a Tcl command created " "with ``createcommand`` was not explicitly removed before the interpreter was " @@ -1922,14 +2066,14 @@ msgid "" "reference cycle." msgstr "" -#: ../NEWS:1040 +#: ../NEWS:1127 msgid "" ":gh:`152246`: Fix the pure-Python :mod:`zoneinfo` parser accepting an " "invalid POSIX TZ transition rule with a non-period separator. Patch by " "tonghuaroot." msgstr "" -#: ../NEWS:1044 +#: ../NEWS:1131 msgid "" ":gh:`151496`: Fixed ``profiling.sampling --gecko`` with ``--async-aware`` by " "flattening async task stacks before generating Gecko samples. ``--binary`` " @@ -1937,7 +2081,7 @@ msgid "" "data." msgstr "" -#: ../NEWS:1049 +#: ../NEWS:1136 msgid "" ":gh:`139816`: Fix a hang in :mod:`tkinter` on interactive Python built " "without :mod:`readline`. An exception raised in a callback no longer causes " @@ -1945,7 +2089,7 @@ msgid "" "callbacks now keep running until input is actually available on stdin." msgstr "" -#: ../NEWS:1055 +#: ../NEWS:1142 msgid "" ":gh:`139145`: Fix a busy loop in :mod:`tkinter` on interactive Python. When " "a Tcl command running its own event loop (such as ``vwait`` or :meth:`!" @@ -1954,7 +2098,7 @@ msgid "" "is available. Based on a patch by Michiel de Hoon." msgstr "" -#: ../NEWS:1061 +#: ../NEWS:1148 msgid "" ":gh:`152212`: Fix the pure-Python :mod:`zoneinfo` parser accepting a POSIX " "TZ string with a ``std`` abbreviation but no offset. This is invalid per " @@ -1962,13 +2106,13 @@ msgid "" "tonghuaroot." msgstr "" -#: ../NEWS:1066 +#: ../NEWS:1153 msgid "" ":gh:`152156`: Fix a possible crash in :func:`concurrent.interpreters.create` " "under limited memory conditions." msgstr "" -#: ../NEWS:1069 +#: ../NEWS:1156 msgid "" ":gh:`152157`: The C implementations of :meth:`~datetime.datetime." "fromisoformat` and :meth:`~datetime.time.fromisoformat` now reject a decimal " @@ -1976,107 +2120,107 @@ msgid "" "designator." msgstr "" -#: ../NEWS:1074 +#: ../NEWS:1161 msgid "" ":gh:`151763`: Fix crash in :func:`!_interpqueues.create` whe :exc:" "`MemoryError` happens on queue creation." msgstr "" -#: ../NEWS:1077 +#: ../NEWS:1164 msgid "" ":gh:`151669`: On Windows, when populating tar archives from filesystem " "content, to conform to the tar format standard, backslashes in symlink " "targets are be replaced by slashes." msgstr "" -#: ../NEWS:1081 +#: ../NEWS:1168 msgid "" ":gh:`105895`: Add :keyword:`match` and :keyword:`case` to the list of " "supported topics by :func:`help`." msgstr "" -#: ../NEWS:1084 +#: ../NEWS:1171 msgid "" ":gh:`151378`: Fix a bug in the binary collector in Tachyon that caused " "unbounded memory growth while profiling a thread that stayed asleep. Patch " "by Maurycy Pawłowski-Wieroński." msgstr "" -#: ../NEWS:1088 +#: ../NEWS:1175 msgid "" ":gh:`152079`: Fix :meth:`datetime.datetime.fromisoformat` in the C " "implementation dropping the sub-second part of a UTC offset whose whole-" "second part is zero, matching the pure-Python implementation." msgstr "" -#: ../NEWS:1092 +#: ../NEWS:1179 msgid "" ":gh:`152052`: The :mod:`json` C accelerator now correctly reports an " "unterminated string for a ``\\uXXXX`` escape at the end of the input." msgstr "" -#: ../NEWS:1095 +#: ../NEWS:1182 msgid "" ":gh:`152060`: Fix :meth:`datetime.datetime.fromisoformat` raising :exc:" "`AssertionError` instead of :exc:`ValueError` for some malformed strings in " "the pure-Python implementation, matching the C implementation." msgstr "" -#: ../NEWS:1099 +#: ../NEWS:1186 msgid "" ":gh:`127802`: The deprecated :class:`tkinter.Variable` methods :meth:`!" "trace_variable`, :meth:`!trace`, :meth:`!trace_vdelete` and :meth:`!" "trace_vinfo` are now scheduled for removal in Python 3.17." msgstr "" -#: ../NEWS:1103 +#: ../NEWS:1190 msgid "" ":gh:`126219`: Fixed a crash in :class:`tkinter.Tk` when *className* contains " "a non-BMP character and tkinter is built against Tcl/Tk 8.x. Such a name is " "now rejected with a :exc:`ValueError`." msgstr "" -#: ../NEWS:1107 +#: ../NEWS:1194 msgid "" ":gh:`86165`: Fix :func:`imaplib.Time2Internaldate` to use the local timezone " "offset for ``time.struct_time`` values with ``tm_gmtoff`` set to ``None``, " "as returned by ``datetime.datetime.timetuple()``. Contributed by Xiao Yuan." msgstr "" -#: ../NEWS:1112 +#: ../NEWS:1199 msgid "" ":gh:`151814`: Fix unbounded memory growth in :class:`io.TextIOWrapper` when " "repeatedly writing an empty string." msgstr "" -#: ../NEWS:1115 +#: ../NEWS:1202 msgid "" ":gh:`151596`: Add missing ``size`` positional argument to the pure-Python " "implementation of :meth:`io.TextIOBase.readline`." msgstr "" -#: ../NEWS:1118 +#: ../NEWS:1205 msgid "" ":gh:`151640`: Fix a data race in :class:`io.BytesIO` in free-threaded builds " "when whole-buffer reads or peeks, or :meth:`~io.BytesIO.getvalue`, share the " "internal buffer with concurrent writes." msgstr "" -#: ../NEWS:1122 +#: ../NEWS:1209 msgid "" ":gh:`151613`: Fix another way the Tachyon profiler frame cache could produce " "impossible mixed stack traces when ``_PyInterpreterFrame`` addresses are " "reused, by validating cached frame anchors with a sequence counter." msgstr "" -#: ../NEWS:1126 +#: ../NEWS:1213 msgid "" ":gh:`148660`: Fix a crash in :meth:`!collections.OrderedDict.copy` when a " "key's ``__eq__`` or a subclass method mutates the dict during the copy. Now " "raises :exc:`RuntimeError` instead, as iteration does." msgstr "" -#: ../NEWS:1130 +#: ../NEWS:1217 msgid "" ":gh:`151497`: Opening a :mod:`tarfile` archive no longer attempts to pre-" "allocate a huge buffer when a crafted or truncated member claims an " @@ -2085,7 +2229,7 @@ msgid "" "longer trigger memory exhaustion." msgstr "" -#: ../NEWS:1136 +#: ../NEWS:1223 msgid "" ":gh:`151416`: Fix a crash in :func:`os.spawnv` and :func:`os.spawnve` when " "an *argv* item's :meth:`~os.PathLike.__fspath__` method mutates the *argv* " @@ -2094,31 +2238,31 @@ msgid "" "embedded null, are no longer replaced with a generic :exc:`TypeError`." msgstr "" -#: ../NEWS:1142 +#: ../NEWS:1229 msgid "" ":gh:`150994`: Make the type annotations in the private ``_colorize`` module " "resolvable." msgstr "" -#: ../NEWS:1145 +#: ../NEWS:1232 msgid "" ":gh:`150583`: Correctly set the default compression level in :mod:" "`compression.zstd` when passing a digested dictionary during compression." msgstr "" -#: ../NEWS:1149 +#: ../NEWS:1236 msgid "" ":gh:`150641`: Fix bug where :func:`typing.evaluate_forward_ref` with the " "``STRING`` format could leak internal names used by the annotation machinery." msgstr "" -#: ../NEWS:1153 +#: ../NEWS:1240 msgid "" ":gh:`149816`: Fix a potential use after free condition in :func:`pickle." "dumps` in free-threaded mode when serializing lists." msgstr "" -#: ../NEWS:1156 +#: ../NEWS:1243 msgid "" ":gh:`47005`: Fix :meth:`!urllib.request.AbstractHTTPHandler.do_open` to give " "regular headers set via :meth:`~urllib.request.Request.add_header` priority " @@ -2126,14 +2270,14 @@ msgid "" "get_header` and :meth:`~urllib.request.Request.header_items`." msgstr "" -#: ../NEWS:1162 +#: ../NEWS:1249 msgid "" ":gh:`140729`: Fix a pickling error in the ``cProfile`` module when profiling " "a script that uses :class:`multiprocessing.Process` with the ``spawn`` and " "``forkserver`` start methods." msgstr "" -#: ../NEWS:1166 +#: ../NEWS:1253 msgid "" ":gh:`115634`: Fix a deadlock in :class:`concurrent.futures." "ProcessPoolExecutor` when using ``max_tasks_per_child``, present since the " @@ -2142,19 +2286,19 @@ msgid "" "Based on a fix proposed by Tabrez Mohammed." msgstr "" -#: ../NEWS:1173 +#: ../NEWS:1260 msgid "" ":gh:`79638`: Disallow all access in :mod:`urllib.robotparser` if the " "``robots.txt`` file is unreachable due to server or network errors." msgstr "" -#: ../NEWS:1176 +#: ../NEWS:1263 msgid "" ":gh:`105708`: Accept an uppercase V prefix in IPvFuture addresses in :func:" "`urllib.parse.urlsplit`." msgstr "" -#: ../NEWS:1182 +#: ../NEWS:1269 msgid "" ":gh:`151626`: Fix several tests in ``test.test_inspect``, ``test." "test_import``, ``test.test_importlib``, ``test.test_py_compile`` and ``test." @@ -2163,25 +2307,25 @@ msgid "" "where they assume the default ``__pycache__`` bytecode layout." msgstr "" -#: ../NEWS:1188 +#: ../NEWS:1275 msgid "" ":gh:`151096`: Fix ``test_embed`` failing when CPython is configured with a " "split exec prefix (``--exec-prefix`` differing from ``--prefix``)." msgstr "" -#: ../NEWS:1194 +#: ../NEWS:1281 msgid "" ":gh:`126877`: Fix the :program:`configure` check for Tcl/Tk which could " "wrongly succeed with optimizing compilers when the libraries are missing." msgstr "" -#: ../NEWS:1197 +#: ../NEWS:1284 msgid "" ":gh:`153438`: Update Windows build and installer tooling and documentation " "to use the current download URL for ``nuget.exe``." msgstr "" -#: ../NEWS:1200 +#: ../NEWS:1287 msgid "" ":gh:`152870`: Fix a compilation error in the :mod:`decimal` C extension " "(``_decimal``) when it is built with ``EXTRA_FUNCTIONALITY``. ``Context." @@ -2190,7 +2334,7 @@ msgid "" "function." msgstr "" -#: ../NEWS:1206 +#: ../NEWS:1293 msgid "" ":gh:`152769`: Enable the :ref:`perf profiler ` trampoline on " "Alpine Linux with the musl C library on ``x86_64`` and ``aarch64``. The " @@ -2198,7 +2342,7 @@ msgid "" "the same assembly trampoline used for glibc is reused for musl." msgstr "" -#: ../NEWS:1211 +#: ../NEWS:1298 msgid "" ":gh:`152502`: The :mod:`curses` module now detects ``set_escdelay()``, " "``set_tabsize()`` and the ``ESCDELAY`` and ``TABSIZE`` variables with :" @@ -2207,7 +2351,7 @@ msgid "" "curses implementations such as NetBSD curses that provide them." msgstr "" -#: ../NEWS:1220 +#: ../NEWS:1307 msgid "" ":gh:`140146`: Prevent :mod:`tkinter` from hanging on Windows if stdin is " "redirected to a pipe in an interactive session. This is helpful for testing " @@ -2215,95 +2359,79 @@ msgid "" "cpython test suite." msgstr "" -#: ../NEWS:1228 +#: ../NEWS:1315 msgid ":gh:`124111`: Update macOS installer to use Tcl/Tk 9.0.4." msgstr "" -#: ../NEWS:1230 +#: ../NEWS:1317 msgid "" ":gh:`152023`: Update macOS installer builds to SQLite 3.53.3. Enable " "median() and percentile() functions." msgstr "" -#: ../NEWS:1234 ../NEWS:1578 ../NEWS:2738 ../NEWS:4122 ../NEWS:7559 -#: ../NEWS:8879 ../NEWS:10505 ../NEWS:13533 ../NEWS:15216 ../NEWS:16184 -#: ../NEWS:16703 ../NEWS:17617 ../NEWS:18141 ../NEWS:20408 ../NEWS:21615 -#: ../NEWS:25842 ../NEWS:27864 ../NEWS:28263 ../NEWS:29673 ../NEWS:31533 -#: ../NEWS:32367 ../NEWS:32775 ../NEWS:33063 ../NEWS:33350 ../NEWS:34219 -#: ../NEWS:34652 ../NEWS:35810 ../NEWS:36693 ../NEWS:37162 ../NEWS:37544 -#: ../NEWS:37935 ../NEWS:38317 ../NEWS:40055 ../NEWS:41004 ../NEWS:41553 -#: ../NEWS:41873 ../NEWS:42122 ../NEWS:44842 ../NEWS:45246 ../NEWS:45476 -#: ../NEWS:45634 ../NEWS:45850 ../NEWS:46103 ../NEWS:47279 ../NEWS:47565 -#: ../NEWS:49436 ../NEWS:49976 ../NEWS:50330 ../NEWS:50722 ../NEWS:51100 -#: ../NEWS:51572 ../NEWS:51898 ../NEWS:53012 ../NEWS:53285 ../NEWS:53487 -#: ../NEWS:53748 ../NEWS:54867 ../NEWS:56167 ../NEWS:56335 ../NEWS:56877 -#: ../NEWS:57394 ../NEWS:57727 ../NEWS:58239 ../NEWS:60263 -msgid "IDLE" -msgstr "" - -#: ../NEWS:1236 +#: ../NEWS:1323 msgid "" ":gh:`82183`: When the shell is busy running code, using \"Run... " "Customized\" with \"Restart shell\" unchecked now reports that the shell is " "executing instead of restarting it anyway." msgstr "" -#: ../NEWS:1240 +#: ../NEWS:1327 msgid "" ":gh:`83653`: Blanking an integer entry in IDLE's Settings dialog, such as " "\"Auto squeeze min lines\", no longer saves an empty string as an invalid " "configuration value." msgstr "" -#: ../NEWS:1244 +#: ../NEWS:1331 msgid "" ":gh:`65339`: Saving the IDLE Shell or an Output window now defaults to a ``." "txt`` extension and lists text files before Python files, since their " "content is not Python source." msgstr "" -#: ../NEWS:1248 +#: ../NEWS:1335 msgid "" ":gh:`80504`: The \"In files:\" field of IDLE's Find in Files dialog now " "always contains a full directory path, even for an unsaved editor or the " "Shell. This shows in the grep output which directory was searched." msgstr "" -#: ../NEWS:1252 +#: ../NEWS:1339 msgid "" ":gh:`134300`: Do not add the ``idlelib`` directory to the path of the IDLE " "user process. User code run in IDLE can no longer import ``idlelib`` " "submodules as top-level modules, such as ``import help``." msgstr "" -#: ../NEWS:1256 +#: ../NEWS:1343 msgid "" ":gh:`89360`: Fix a rare crash in the IDLE editor when the completion window " "is closed: deleting a key binding for a sequence that is not bound to the " "virtual event is now ignored instead of raising a ``ValueError``." msgstr "" -#: ../NEWS:1260 +#: ../NEWS:1347 msgid "" ":gh:`71956`: Fix Replace All in the IDLE editor's Replace dialog when the " "search direction is \"Up\" and \"Wrap around\" is off: it now replaces all " "matches above the current position instead of only the first one." msgstr "" -#: ../NEWS:1264 +#: ../NEWS:1351 msgid "" ":gh:`152728`: Move functions run.fix_scaling, editor.fixwordbreaks (as " "fix_word_breaks) and pyshell.fix_x11_paste to idlelib.util." msgstr "" -#: ../NEWS:1267 +#: ../NEWS:1354 msgid "" ":gh:`66331`: Set the ``WM_CLASS`` window property of IDLE's windows to " "``Idle`` on X11, so that window managers group and label them correctly " "instead of using the default ``Toplevel``." msgstr "" -#: ../NEWS:1271 +#: ../NEWS:1358 msgid "" ":gh:`85320`: IDLE now reads and writes its configuration files and the " "breakpoints file using UTF-8 instead of the locale encoding. This keeps non-" @@ -2311,35 +2439,35 @@ msgid "" "files portable between environments." msgstr "" -#: ../NEWS:1279 +#: ../NEWS:1366 msgid "" ":gh:`152132`: Fix :c:func:`Py_RunMain` to return an exit code, rather than " "calling :c:func:`Py_Exit`, when running a script, a command, or the REPL. " "Patch by Victor Stinner." msgstr "" -#: ../NEWS:1283 +#: ../NEWS:1370 msgid "" ":gh:`145633`: :c:func:`PyFloat_Pack8` and ``PyFloat_Unpack*`` functions are " "no longer guaranteed to always succeed on CPython." msgstr "" -#: ../NEWS:1286 +#: ../NEWS:1373 msgid "" ":gh:`153300`: :c:func:`PyConfig_Set()` now also set global configuration " "variables. For example, ``PyConfig_Set(\"inspect\", value)`` now also sets :" "c:var:`Py_InspectFlag`. Patch by Victor Stinner." msgstr "" -#: ../NEWS:1292 +#: ../NEWS:1379 msgid "Python 3.15.0 beta 3" msgstr "" -#: ../NEWS:1294 +#: ../NEWS:1381 msgid "*Release date: 2026-06-23*" msgstr "" -#: ../NEWS:1299 +#: ../NEWS:1386 msgid "" ":gh:`151544`: :file:`Modules/Setup.local` is no longer used as a landmark to " "discover whether Python is running in a source tree, as it could potentially " @@ -2347,68 +2475,68 @@ msgid "" "indicator of running in a source tree." msgstr "" -#: ../NEWS:1304 +#: ../NEWS:1391 msgid ":gh:`151159`: Update macOS installer to use OpenSSL 3.5.7." msgstr "" -#: ../NEWS:1306 +#: ../NEWS:1393 msgid ":gh:`151159`: Update Android and iOS installers to use OpenSSL 3.5.7." msgstr "" -#: ../NEWS:1308 +#: ../NEWS:1395 msgid "" ":gh:`150599`: Fix a possible stack buffer overflow in :mod:`bz2` when a :" "class:`bz2.BZ2Decompressor` is reused after a decompression error. The " "decompressor now becomes unusable after libbz2 reports an error." msgstr "" -#: ../NEWS:1312 +#: ../NEWS:1399 msgid "" ":gh:`149835`: :func:`shutil.move` now resolves symlinks via :func:`os.path." "realpath` when checking whether the destination is inside the source " "directory, preventing a symlink-based bypass of that guard." msgstr "" -#: ../NEWS:1319 +#: ../NEWS:1406 msgid "" ":gh:`151905`: Fix OOM error handling in :c:func:`PyFrame_GetBack` to " "propagate exceptions instead of masking them as None." msgstr "" -#: ../NEWS:1322 +#: ../NEWS:1409 msgid "" ":gh:`151722`: Defer GC tracking of :class:`frozendict` to end of " "construction. Patch by Donghee Na." msgstr "" -#: ../NEWS:1325 +#: ../NEWS:1412 msgid "" ":gh:`151546`: Fix the stack limit check if Python is linked to musl (ex: " "Alpine Linux). Use the stack size set by the linker to compute the stack " "limits. Patch by Victor Stinner." msgstr "" -#: ../NEWS:1329 +#: ../NEWS:1416 msgid "" ":gh:`151510`: Fix a crash in :func:`!__lazy_import__` when called without an " "explicit ``globals`` argument and without a current Python frame." msgstr "" -#: ../NEWS:1332 +#: ../NEWS:1419 msgid "" ":gh:`151461`: Fix direct execution of files with invalid source encodings to " "report the underlying codec lookup or decoding error instead of the generic " "``SyntaxError: encoding problem`` message. Patch by Bartosz Sławecki." msgstr "" -#: ../NEWS:1337 +#: ../NEWS:1424 msgid "" ":gh:`151218`: :c:func:`PyConfig_Set` and :func:`sys.set_int_max_str_digits` " "now replace :data:`sys.flags` (create a new object), instead of modifying :" "data:`sys.flags` in-place. Patch by Victor Stinner." msgstr "" -#: ../NEWS:1341 +#: ../NEWS:1428 msgid "" ":gh:`151297`: Fix an invalid pointer dereference that could occur when " "calling :c:func:`PyObject_Realloc` with a NULL pointer in :term:`free-" @@ -2416,56 +2544,56 @@ msgid "" "``mimalloc``." msgstr "" -#: ../NEWS:1346 +#: ../NEWS:1433 msgid "" ":gh:`151253`: If ``import encodings`` (first import) fails at Python " "startup, dump the Python path configuration to help users debugging their " "configuration. Patch by Victor Stinner." msgstr "" -#: ../NEWS:1350 +#: ../NEWS:1437 msgid "" ":gh:`151238`: Fix a crash when compiling a concatenated f-string or t-string " "if an error occurs when processing one of it's parts." msgstr "" -#: ../NEWS:1353 +#: ../NEWS:1440 msgid "" ":gh:`151112`: Fix a crash in the compiler that could occur when running out " "of memory." msgstr "" -#: ../NEWS:1356 +#: ../NEWS:1443 msgid "" ":gh:`151126`: Fix a crash, when there's no memory left on a device, which " "happened in: code compilation, :mod:`!_interpchannels` module, :func:`!" "_winapi.CreateProcess` function." msgstr "" -#: ../NEWS:1360 +#: ../NEWS:1447 msgid "Now these places raise proper :exc:`MemoryError` errors." msgstr "" -#: ../NEWS:1362 +#: ../NEWS:1449 msgid "" ":gh:`150902`: Apply an existing optimization of PyCriticalSection (single " "mutex) to PyCriticalSection2: avoid acquiring the same locks that the " "current CS has already acquired." msgstr "" -#: ../NEWS:1366 +#: ../NEWS:1453 msgid "" ":gh:`151065`: Fix memory leak when using the :ref:`mimalloc memory allocator " "`." msgstr "" -#: ../NEWS:1369 +#: ../NEWS:1456 msgid "" ":gh:`150988`: Fix a reference leak in :exc:`OSError` when attributes are set " "before ``super().__init__()``." msgstr "" -#: ../NEWS:1372 +#: ../NEWS:1459 msgid "" ":gh:`150723`: Fix perf jitdump timestamps on macOS. Events were stamped " "using ``CLOCK_MONOTONIC``, but macOS profilers timestamp their samples with " @@ -2473,7 +2601,7 @@ msgid "" "lining up with the samples, so no Python frame could be resolved." msgstr "" -#: ../NEWS:1377 +#: ../NEWS:1464 msgid "" ":gh:`150723`: Fix malformed perf jitdump thread ids on macOS. The " "``thread_id`` field of the ``JR_CODE_LOAD`` record was written as a 64-bit " @@ -2482,7 +2610,7 @@ msgid "" "frames." msgstr "" -#: ../NEWS:1383 +#: ../NEWS:1470 msgid "" ":gh:`150700`: Fix a :exc:`SystemError` when compiling a class-scope " "comprehension containing a ``lambda`` that references ``__class__``, " @@ -2490,57 +2618,57 @@ msgid "" "Sławecki." msgstr "" -#: ../NEWS:1388 +#: ../NEWS:1475 msgid "" ":gh:`150633`: Fix the frozen importer accepting module names with embedded " "null bytes, which caused it to bypass the :data:`sys.modules` cache and " "create duplicate module objects." msgstr "" -#: ../NEWS:1392 +#: ../NEWS:1479 msgid "" ":gh:`148613`: Fix a data race in the free-threaded build between :func:`gc." "set_threshold` and garbage collection scheduling during object allocation." msgstr "" -#: ../NEWS:1396 +#: ../NEWS:1483 msgid "" ":gh:`150207`: Fix a crash when a memory allocation fails during tokenizer " "initialization. A proper :exc:`MemoryError` is now raised instead." msgstr "" -#: ../NEWS:1399 +#: ../NEWS:1486 msgid "" ":gh:`149805`: Fix a :exc:`SystemError` when compiling a compiling " "``__classdict__`` class annotation. Found by OSS-Fuzz in :oss-fuzz:" "`512907042`." msgstr "" -#: ../NEWS:1403 +#: ../NEWS:1490 msgid ":gh:`149321`: Do not support ``none`` as a lazy imports mode." msgstr "" -#: ../NEWS:1408 +#: ../NEWS:1495 msgid "" ":gh:`75666`: Fix a reference leak in :mod:`tkinter`: the Tcl commands " "created for event callbacks are now deleted when a binding is replaced or " "unbound." msgstr "" -#: ../NEWS:1411 +#: ../NEWS:1498 msgid "" ":gh:`151770`: Fix :meth:`datetime.datetime.fromisoformat` raising :exc:" "`AssertionError` instead of :exc:`ValueError` for an out-of-range month " "combined with a ``24:00`` time." msgstr "" -#: ../NEWS:1415 +#: ../NEWS:1502 msgid "" ":gh:`151665`: :func:`inspect.signature` now works on the lazy evaluators of " "type aliases and type parameters instead of raising :exc:`ValueError`." msgstr "" -#: ../NEWS:1418 +#: ../NEWS:1505 msgid "" ":gh:`151695`: Fix a use-after-free in the :mod:`curses` module. The " "encoding of the initial screen, used by :func:`curses.unctrl` and :func:" @@ -2549,7 +2677,7 @@ msgid "" "deallocated." msgstr "" -#: ../NEWS:1424 +#: ../NEWS:1511 msgid "" ":gh:`151436`: Fix skewed stack trackes in the Tachyon profiler when caching " "is enabled and when generators and coroutines are profiled, by updating " @@ -2558,7 +2686,7 @@ msgid "" "Wieroński." msgstr "" -#: ../NEWS:1430 +#: ../NEWS:1517 msgid "" ":gh:`151426`: Fix impossible stack traces (callers and callees cross called, " "orphans and incorrect lines) in the Tachyon profiler when caching frames, by " @@ -2566,43 +2694,43 @@ msgid "" "miss. Patch by Maurycy Pawłowski-Wieroński." msgstr "" -#: ../NEWS:1435 +#: ../NEWS:1522 msgid "" ":gh:`151403`: Fixed a crash in :class:`subprocess.Popen` (and " "``_posixsubprocess.fork_exec``) when an ``argv`` item's :meth:`~os.PathLike." "__fspath__` concurrently mutates the ``args`` sequence being converted." msgstr "" -#: ../NEWS:1440 +#: ../NEWS:1527 msgid "" ":gh:`151390`: Colorize ``match`` in the :term:`REPL` when followed by a " "unary ``+`` or ``-`` operator. Patch by Bartosz Sławecki." msgstr "" -#: ../NEWS:1443 +#: ../NEWS:1530 msgid "" ":gh:`151126`: Fix crash on unset :exc:`MemoryError` on allocation failure " "in :func:`ctypes.get_errno`." msgstr "" -#: ../NEWS:1446 +#: ../NEWS:1533 msgid ":gh:`151337`: Avoid possible memory leak in ``tkinter.c`` on Windows." msgstr "" -#: ../NEWS:1448 +#: ../NEWS:1535 msgid "" ":gh:`151126`: Fix a crash when :exc:`MemoryError` in :func:`!os." "_path_splitroot` was not set properly." msgstr "" -#: ../NEWS:1451 +#: ../NEWS:1538 msgid "" ":gh:`149671`: Restore compatibility with setuptools ``-nspkg.pth`` files in " "the :mod:`site` module. Inject ``sitedir`` variable in the frame which " "executes pth code. Patch by Victor Stinner." msgstr "" -#: ../NEWS:1455 +#: ../NEWS:1542 msgid "" ":gh:`151295`: Fixed a crash (use-after-free) in :meth:`bytes.join` and :meth:" "`bytearray.join` that could occur if an item's :meth:`~object.__buffer__` " @@ -2610,13 +2738,13 @@ msgid "" "as a :exc:`RuntimeError` instead." msgstr "" -#: ../NEWS:1460 +#: ../NEWS:1547 msgid "" ":gh:`109940`: Fix Windows :mod:`venv` activation in ``cmd.exe`` to respect " "``VIRTUAL_ENV_DISABLE_PROMPT``." msgstr "" -#: ../NEWS:1463 +#: ../NEWS:1550 msgid "" ":gh:`150771`: Fix :mod:`email` messages created with ``shift_jis`` or ``euc-" "jp`` charsets. ``set_content()`` now stores the payload using the output " @@ -2624,39 +2752,39 @@ msgid "" "`UnicodeEncodeError`." msgstr "" -#: ../NEWS:1468 +#: ../NEWS:1555 msgid "" ":gh:`151039`: Fix a crash when static :mod:`datetime` types outlive the " "``_datetime`` module." msgstr "" -#: ../NEWS:1471 +#: ../NEWS:1558 msgid "" ":gh:`151021`: Fix :meth:`mmap.mmap.find` and :meth:`~mmap.mmap.rfind` to " "return ``-1`` when searching for an empty subsequence with a start position " "past the end of the mapping." msgstr "" -#: ../NEWS:1475 +#: ../NEWS:1562 msgid "" ":gh:`62825`: Encodings \"KS_C_5601-1987\", \"KS X 1001\", etc are now " "aliases of \"CP949\" instead of \"EUC-KR\"." msgstr "" -#: ../NEWS:1478 +#: ../NEWS:1565 msgid "" ":gh:`150913`: Fix :class:`sqlite3.Blob` slice assignment to raise :exc:" "`TypeError` and :exc:`IndexError` for type and size mismatches respectively, " "even when the target slice is empty." msgstr "" -#: ../NEWS:1482 +#: ../NEWS:1569 msgid "" ":gh:`143008`: Fix race conditions when re-initializing a :class:`io." "TextIOWrapper` object." msgstr "" -#: ../NEWS:1485 +#: ../NEWS:1572 msgid "" ":gh:`150662`: Fix the ``--gecko`` collector in :mod:`profiling.sampling` " "that kept every sample in memory. It now writes sample and marker data to " @@ -2664,69 +2792,69 @@ msgid "" "the end. Patch by Pablo Galindo and Maurycy Pawłowski-Wieroński." msgstr "" -#: ../NEWS:1490 +#: ../NEWS:1577 msgid "" ":gh:`150750`: Fix a race condition in :meth:`collections.deque.index` with " "free-threading." msgstr "" -#: ../NEWS:1493 +#: ../NEWS:1580 msgid "" ":gh:`148932`: Fix ``profiling.sampling`` on Windows virtual environments to " "resolve the actual Python PID from a virtual environment shim." msgstr "" -#: ../NEWS:1496 +#: ../NEWS:1583 msgid ":gh:`149816`: Fix race condition in :attr:`ssl.SSLContext.sni_callback`" msgstr "" -#: ../NEWS:1498 +#: ../NEWS:1585 msgid "" ":gh:`53144`: The :mod:`email` package now supports all aliases of Python " "codecs and uses MIME/IANA names for all IANA registered charsets." msgstr "" -#: ../NEWS:1501 +#: ../NEWS:1588 msgid "" ":gh:`149891`: Add support for more encoding aliases `officially registered " "in IANA `__." msgstr "" -#: ../NEWS:1505 +#: ../NEWS:1592 msgid "" ":gh:`149473`: Calling ``os.environ.clear()`` now emits ``os._clearenv`` " "auditing event. Patch by Victor Stinner." msgstr "" -#: ../NEWS:1508 +#: ../NEWS:1595 msgid "" ":gh:`148954`: Fix XML injection vulnerability in :func:`xmlrpc.client.dumps` " "where the ``methodname`` was not being escaped before interpolation into the " "XML body." msgstr "" -#: ../NEWS:1512 +#: ../NEWS:1599 msgid "" ":gh:`143988`: Fixed crashes in :meth:`socket.socket.sendmsg` and :meth:" "`socket.socket.recvmsg_into` that could occur if buffer sequences are " "concurrently mutated." msgstr "" -#: ../NEWS:1516 +#: ../NEWS:1603 msgid "" ":gh:`120665`: Fixed an issue where ``unittest`` loaders would load and " "instantiate :class:`unittest.TestCase`-derived subclasses that are also " "abstract base classes, which can't be instantiated." msgstr "" -#: ../NEWS:1520 +#: ../NEWS:1607 msgid "" ":gh:`91099`: :meth:`imaplib.IMAP4.login` now raises exceptions with :class:" "`str` instead of :class:`bytes`. Patch by Florian Best." msgstr "" -#: ../NEWS:1523 +#: ../NEWS:1610 msgid "" ":gh:`101267`: When a worker process terminates unexpectedly, :class:" "`concurrent.futures.ProcessPoolExecutor` now sets a separate :exc:" @@ -2737,7 +2865,7 @@ msgid "" "appending another copy of the traceback to it." msgstr "" -#: ../NEWS:1534 +#: ../NEWS:1621 msgid "" ":gh:`86726`: Greatly expand the :mod:`tkinter` documentation to cover the " "full public API of the package and its submodules. The descriptions are " @@ -2745,104 +2873,104 @@ msgid "" "``versionadded``/``versionchanged`` information." msgstr "" -#: ../NEWS:1539 +#: ../NEWS:1626 msgid "" ":gh:`150319`: Generic builtin and standard library types now document the " "meaning of their type parameters." msgstr "" -#: ../NEWS:1542 +#: ../NEWS:1629 msgid "" ":gh:`109503`: Fix documentation for :func:`shutil.move` on usage of :func:" "`os.rename` since nonatomic move might be used even if the files are on the " "same filesystem. Patch by Fang Li" msgstr "" -#: ../NEWS:1549 +#: ../NEWS:1636 msgid ":gh:`151130`: Add more tests for ``PyWeakref_*`` C API." msgstr "" -#: ../NEWS:1551 +#: ../NEWS:1638 msgid "" ":gh:`150966`: Avoid prematurely terminating failing live sampling profiler " "test targets, which made stderr assertions flaky on ASAN buildbots." msgstr "" -#: ../NEWS:1554 +#: ../NEWS:1641 msgid "" ":gh:`148853`: Fix tests failing on FreeBSD in test.support's " "in_systemd_nspawn_sync_suppressed() due to unreadable /run directory." msgstr "" -#: ../NEWS:1560 +#: ../NEWS:1647 msgid ":gh:`151163`: Updated Android build to include SQLite version 3.53.2." msgstr "" -#: ../NEWS:1565 +#: ../NEWS:1652 msgid ":gh:`151163`: Updated Windows builds to include SQLite version 3.53.2." msgstr "" -#: ../NEWS:1567 +#: ../NEWS:1654 msgid ":gh:`151159`: Updated bundled version of OpenSSL to 3.5.7." msgstr "" -#: ../NEWS:1569 +#: ../NEWS:1656 msgid "" ":gh:`150836`: Make installed tkinter work with Tcl/Tk 9 builds that embed " "the Tk script library in the Tk DLL on Windows." msgstr "" -#: ../NEWS:1575 +#: ../NEWS:1662 msgid ":gh:`151163`: Updated macOS installer to include SQLite version 3.53.2." msgstr "" -#: ../NEWS:1580 +#: ../NEWS:1667 msgid ":issue:`6699`: Warn the user if a file will be overwritten when saving." msgstr "" -#: ../NEWS:1585 +#: ../NEWS:1672 msgid "" ":gh:`141510`: Add :class:`frozendict` to the fast paths of :c:func:" "`PyMapping_GetOptionalItem`, :c:func:`PyMapping_Keys`, :c:func:" "`PyMapping_Values`, and :c:func:`PyMapping_Items`." msgstr "" -#: ../NEWS:1589 +#: ../NEWS:1676 msgid "" ":gh:`123619`: :c:func:`PyUnstable_Object_EnableDeferredRefcount` now returns " "``0`` if the object is not tracked by the garbage collector: if :func:`gc." "is_tracked` is false. Patch by Victor Stinner." msgstr "" -#: ../NEWS:1593 +#: ../NEWS:1680 msgid "" ":gh:`149044`: Improved error message when specifying non-type base classes " "in :c:macro:`Py_tp_bases`, :c:macro:`Py_tp_base`, and *bases* argument to :c:" "func:`PyType_FromMetaclass` and other ``PyType_From*`` functions." msgstr "" -#: ../NEWS:1597 +#: ../NEWS:1684 msgid "" ":gh:`150907`: Fix ``dynamic_annotations.h`` header file when built with C++ " "and Valgrind: add ``extern \"C++\" scope`` for the C++ template. Patch by " "Victor Stinner." msgstr "" -#: ../NEWS:1603 +#: ../NEWS:1690 msgid "Python 3.15.0 beta 2" msgstr "" -#: ../NEWS:1605 +#: ../NEWS:1692 msgid "*Release date: 2026-06-02*" msgstr "" -#: ../NEWS:1610 +#: ../NEWS:1697 msgid "" ":gh:`149698`: Update bundled `libexpat `_ to " "version 2.8.1 for the fix for :cve:`2026-45186`." msgstr "" -#: ../NEWS:1613 +#: ../NEWS:1700 msgid "" ":gh:`87451`: The :mod:`ftplib` module's undocumented ``ftpcp`` function no " "longer trusts the IPv4 address value returned from the source server in " @@ -2853,14 +2981,14 @@ msgid "" "Aurascape AI for the report." msgstr "" -#: ../NEWS:1621 +#: ../NEWS:1708 msgid "" ":gh:`149474`: Fix the binary writer in :mod:`profiling.sampling` not firing " "the audit (:pep:`578`) when creating the output file. The writer and the " "reader now accept any path-like object. Patch by Maurycy Pawłowski-Wieroński." msgstr "" -#: ../NEWS:1626 +#: ../NEWS:1713 msgid "" ":gh:`149486`: :func:`tarfile.data_filter` now validates link targets using " "the same normalised value that is written to disk, strips trailing " @@ -2870,7 +2998,7 @@ msgid "" "filter." msgstr "" -#: ../NEWS:1633 +#: ../NEWS:1720 msgid "" ":gh:`149079`: Fix a potential denial of service in :func:`unicodedata." "normalize`. The canonical ordering step of Unicode normalization used a " @@ -2880,27 +3008,27 @@ msgid "" "runs." msgstr "" -#: ../NEWS:1640 +#: ../NEWS:1727 msgid "" ":gh:`149018`: Improved protection against XML hash-flooding attacks in :mod:" "`xml.parsers.expat` and :mod:`xml.etree.ElementTree` when Python is compiled " "with libExpat 2.8.0 or later." msgstr "" -#: ../NEWS:1647 +#: ../NEWS:1734 msgid "" ":gh:`150374`: Fix double release of the import lock on lazy import " "reification errors." msgstr "" -#: ../NEWS:1650 +#: ../NEWS:1737 msgid "" ":gh:`149156`: Fix an intermittent crash after :func:`os.fork` when perf " "trampoline profiling is enabled and the child returns through trampoline " "frames inherited from the parent process." msgstr "" -#: ../NEWS:1654 +#: ../NEWS:1741 msgid "" ":gh:`149449`: Fix a use-after-free crash when the :mod:`unicodedata` module " "was removed from :data:`sys.modules` and garbage-collected between calls " @@ -2908,110 +3036,110 @@ msgid "" "handler." msgstr "" -#: ../NEWS:1659 +#: ../NEWS:1746 msgid "" ":gh:`150107`: :mod:`asyncio`: ``sendfile()`` and ``sock_sendfile()`` event " "loop methods now call ``file.seek(offset)`` if *file* has a ``seek()`` " "method, even if *offset* is ``0`` (default value)." msgstr "" -#: ../NEWS:1663 +#: ../NEWS:1750 msgid ":gh:`150146`: Fix a crash on a complex type variable substitution." msgstr "" -#: ../NEWS:1665 +#: ../NEWS:1752 msgid "" "``from typing import TypeVar; memoryview[TypeVar(\"\")][*typing." "Mapping[..., ...]]`` used to fail due to missing ``NULL`` check on " "``_unpack_args`` C function call." msgstr "" -#: ../NEWS:1669 +#: ../NEWS:1756 msgid "" ":gh:`148587`: :py:attr:`sys.lazy_modules` is now a set instead of a dict as " "initially spelled out in PEP 810." msgstr "" -#: ../NEWS:1672 +#: ../NEWS:1759 msgid "" ":gh:`150042`: Fix refleak in queue.SimpleQueue.put if memory allocation " "fails." msgstr "" -#: ../NEWS:1675 +#: ../NEWS:1762 msgid ":gh:`149590`: Fix crash when faulthandler is imported more than once." msgstr "" -#: ../NEWS:1677 +#: ../NEWS:1764 msgid "" ":gh:`149816`: Fix a race condition in ``_PyBytes_FromList`` in free-" "threading mode." msgstr "" -#: ../NEWS:1680 +#: ../NEWS:1767 msgid "" ":gh:`149816`: Fix a race condition in :class:`memoryview` with free-" "threading." msgstr "" -#: ../NEWS:1683 +#: ../NEWS:1770 msgid "" ":gh:`149807`: Fix ``hash(frozendict)``: compute the hash of each ``(key, " "value)`` pair correctly. Patch by Victor Stinner." msgstr "" -#: ../NEWS:1686 +#: ../NEWS:1773 msgid "" ":gh:`149738`: :mod:`sqlite3`: Disallow removing ``row_factory`` and " "``text_factory`` attributes of a connection to prevent a crash on a query." msgstr "" -#: ../NEWS:1689 +#: ../NEWS:1776 msgid "" ":gh:`139808`: Add branch protections for AArch64 (BTI/PAC) in assembly code " "used by :option:`-X perf_jit <-X>` (Linux perf profiler integration)." msgstr "" -#: ../NEWS:1692 +#: ../NEWS:1779 msgid ":gh:`149676`: Fix ``frozendict | frozendict`` hash." msgstr "" -#: ../NEWS:1694 +#: ../NEWS:1781 msgid "" ":gh:`148829`: :class:`sentinel` objects now support a ``repr=`` argument and " "their :attr:`~sentinel.__module__` attribute is writable." msgstr "" -#: ../NEWS:1697 +#: ../NEWS:1784 msgid "" ":gh:`149642`: Allow imports inside ``exec()`` calls within functions under " "``PYTHON_LAZY_IMPORTS=all``." msgstr "" -#: ../NEWS:1700 +#: ../NEWS:1787 msgid "" ":gh:`144957`: Fix lazy ``from`` imports of module attributes provided by " "module-level ``__getattr__``." msgstr "" -#: ../NEWS:1703 +#: ../NEWS:1790 msgid "" ":gh:`149459`: Fix a crash in the JIT optimizer when a specialized " "``LOAD_SPECIAL`` guard deoptimized after inserting the synthetic ``NULL`` " "stack entry." msgstr "" -#: ../NEWS:1707 +#: ../NEWS:1794 msgid "" ":gh:`148450`: Fix ``abc.register()`` so it invalidates type version tags for " "registered classes." msgstr "" -#: ../NEWS:1713 +#: ../NEWS:1800 msgid ":gh:`150685`: Update bundled pip to 26.1.2" msgstr "" -#: ../NEWS:1715 +#: ../NEWS:1802 msgid "" ":gh:`150228`: The new :class:`site.StartupState` class lets callers batch-" "process :pep:`829` startup configuration files across multiple site " @@ -3024,34 +3152,34 @@ msgid "" "have been removed; use :class:`!site.StartupState` instead." msgstr "" -#: ../NEWS:1727 +#: ../NEWS:1814 msgid "" ":gh:`150406`: Fix a possible crash occurring during :mod:`socket` module " "initialization when the system is out of memory on platforms without a " "reentrant ``gethostbyname``." msgstr "" -#: ../NEWS:1731 +#: ../NEWS:1818 msgid "" ":gh:`150372`: :mod:`readline`: Fix a potential crash during tab completion " "caused by an out-of-memory error during module initialization." msgstr "" -#: ../NEWS:1734 +#: ../NEWS:1821 msgid "" ":gh:`150157`: Fix a crash in free-threaded builds that occurs when pickling " "by name objects without a ``__module__`` attribute while :data:`sys.modules` " "is concurrently being modified." msgstr "" -#: ../NEWS:1738 +#: ../NEWS:1825 msgid "" ":gh:`150175`: Fix race condition in :class:`unittest.mock.ThreadingMock` " "where concurrent calls could lose increments to ``call_count`` and other " "attributes due to a missing lock in ``_increment_mock_call``." msgstr "" -#: ../NEWS:1742 +#: ../NEWS:1829 msgid "" ":gh:`84353`: Preserve non-UTF-8 encoded filenames when appending to a :class:" "`zipfile.ZipFile`. Previously, non-ASCII names stored in a legacy encoding " @@ -3060,43 +3188,43 @@ msgid "" "UTF-8." msgstr "" -#: ../NEWS:1748 +#: ../NEWS:1835 msgid "" ":gh:`149189`: Revert the changes to :mod:`pprint` defaults. Patch by Hugo " "van Kemenade." msgstr "" -#: ../NEWS:1751 +#: ../NEWS:1838 msgid ":gh:`149995`: Update various docstrings in :mod:`typing`." msgstr "" -#: ../NEWS:1753 +#: ../NEWS:1840 msgid "" ":gh:`88726`: The :mod:`email` package now uses standard MIME charset names " "\"gb2312\" and \"big5\" instead of non-standard names \"eucgb2312_cn\" and " "\"big5_tw\"." msgstr "" -#: ../NEWS:1757 +#: ../NEWS:1844 msgid "" ":gh:`149571`: Fix the C implementation of :meth:`xml.etree.ElementTree." "Element.itertext`: it no longer emits text for comments and processing " "instructions." msgstr "" -#: ../NEWS:1761 +#: ../NEWS:1848 msgid "" ":gh:`149921`: Fix reference leaks in error paths of the :mod:`!" "_interpchannels` and :mod:`!_interpqueues` extension modules." msgstr "" -#: ../NEWS:1764 +#: ../NEWS:1851 msgid "" ":gh:`142349`: Add :keyword:`lazy` to the list of support topic by :func:" "`help`." msgstr "" -#: ../NEWS:1767 +#: ../NEWS:1854 msgid "" ":gh:`149819`: Fix regression in :func:`site.addsitedir` where ``.pth`` files " "were no longer processed in Python subprocesses. This happened because :func:" @@ -3104,20 +3232,20 @@ msgid "" "process, causing ``addsitedir`` to skip ``.pth`` processing." msgstr "" -#: ../NEWS:1772 +#: ../NEWS:1859 msgid "" ":gh:`149816`: Fix a race condition in ``_random.Random.__init__`` method in " "free-threading mode." msgstr "" -#: ../NEWS:1775 +#: ../NEWS:1862 msgid "" ":gh:`149801`: Add IANA registered names and aliases with leading zeros " "before number (like IBM00858, CP00858, IBM01140, CP01140) for corresponding " "codecs." msgstr "" -#: ../NEWS:1779 +#: ../NEWS:1866 msgid "" ":gh:`149718`: Coalesce consecutive identical stack frames in Tachyon, so " "aggregating collectors (pstats, collapsed, flamegraph, gecko) receive one " @@ -3125,13 +3253,13 @@ msgid "" "Patch by Maurycy Pawłowski-Wieroński." msgstr "" -#: ../NEWS:1784 +#: ../NEWS:1871 msgid "" ":gh:`149701`: Fix bad return code from Lib/venv/bin/activate if hashing is " "disabled" msgstr "" -#: ../NEWS:1787 +#: ../NEWS:1874 msgid "" ":gh:`149504`: Fix :func:`site.addsitedir` to allow re-entrant calls from " "within startup files. Previously, a ``.pth`` file containing an ``import`` " @@ -3141,7 +3269,7 @@ msgid "" "with``." msgstr "" -#: ../NEWS:1794 +#: ../NEWS:1881 msgid "" ":gh:`149584`: Fix excessive overhead in the Tachyon profiler when inspecting " "a remote process by avoiding repeated remote page-cache scans, batching " @@ -3149,17 +3277,17 @@ msgid "" "Pablo Galindo and Maurycy Pawłowski-Wieroński." msgstr "" -#: ../NEWS:1799 +#: ../NEWS:1886 msgid ":gh:`139489`: Add :func:`xml.is_valid_text` to ``xml.__all__``." msgstr "" -#: ../NEWS:1801 +#: ../NEWS:1888 msgid "" ":gh:`149614`: Fix a regression that broke the ability to deepcopy :class:" "`argparse.ArgumentParser` instances." msgstr "" -#: ../NEWS:1804 +#: ../NEWS:1891 msgid "" ":gh:`112821`: In the REPL, autocompletion might run arbitrary code in the " "getter of a descriptor. If that getter raised an exception, autocompletion " @@ -3167,19 +3295,19 @@ msgid "" "works as expected for these objects." msgstr "" -#: ../NEWS:1809 +#: ../NEWS:1896 msgid "" ":gh:`149534`: Fix merging of :class:`collections.defaultdict` and :class:" "`frozendict`." msgstr "" -#: ../NEWS:1812 +#: ../NEWS:1899 msgid "" ":gh:`149388`: Make :class:`!asyncio.windows_utils.PipeHandle` closing " "idempotent." msgstr "" -#: ../NEWS:1815 +#: ../NEWS:1902 msgid "" ":gh:`149489`: Fix :mod:`~xml.etree.ElementTree` serialization to HTML. The " "content of comments, processing instructions and elements \"xmp\", " @@ -3188,19 +3316,19 @@ msgid "" "support of empty attributes (with value ``None``)." msgstr "" -#: ../NEWS:1821 +#: ../NEWS:1908 msgid "" ":gh:`149056`: Fix :func:`json.load` not forwarding the *array_hook* argument " "to :func:`json.loads`. Patch by Thomas Kowalski." msgstr "" -#: ../NEWS:1824 +#: ../NEWS:1911 msgid "" ":gh:`149046`: :mod:`io`: Fix :class:`io.StringIO` serialization: no longer " "call ``str(obj)`` on :class:`str` subclasses. Patch by Thomas Kowalski." msgstr "" -#: ../NEWS:1827 +#: ../NEWS:1914 msgid "" ":gh:`148441`: :mod:`xml.parsers.expat`: prevent a crash in :meth:`~xml." "parsers.expat.xmlparser.CharacterDataHandler` when the character data size " @@ -3208,13 +3336,13 @@ msgid "" "buffer_size>`." msgstr "" -#: ../NEWS:1832 +#: ../NEWS:1919 msgid "" ":gh:`146452`: Fix segfault in :mod:`pickle` when pickling a dictionary " "concurrently mutated by another thread in the free-threaded build." msgstr "" -#: ../NEWS:1835 +#: ../NEWS:1922 msgid "" ":gh:`86533`: The :func:`os.makedirs` function and :meth:`pathlib.Path.mkdir` " "method now have a *parent_mode* parameter to specify the mode for " @@ -3222,13 +3350,13 @@ msgid "" "to match the behavior from Python 3.6 and earlier for :func:`os.makedirs`." msgstr "" -#: ../NEWS:1840 +#: ../NEWS:1927 msgid "" ":gh:`134261`: zip: On reproducible builds, ZipFile uses UTC instead of the " "local time when writing file datetimes to avoid underflows." msgstr "" -#: ../NEWS:1843 +#: ../NEWS:1930 msgid "" ":gh:`133998`: Fix :exc:`struct.error` exception when creating a file with :" "class:`gzip.GzipFile` or compressing data with :func:`gzip.compress` if the " @@ -3237,7 +3365,7 @@ msgid "" "outside the range ``0`` to ``2**32-1``." msgstr "" -#: ../NEWS:1849 +#: ../NEWS:1936 msgid "" ":gh:`128110`: Fix bug in the parsing of :mod:`email` address headers that " "could result in extraneous spaces in the decoded text when using a modern " @@ -3246,25 +3374,25 @@ msgid "" "unstructured headers like *Subject*)." msgstr "" -#: ../NEWS:1855 +#: ../NEWS:1942 msgid "" ":gh:`107398`: Fix :mod:`tarfile` stream mode exception when process the file " "with the gzip extra field." msgstr "" -#: ../NEWS:1858 +#: ../NEWS:1945 msgid "" ":gh:`121109`: Fix :mod:`tarfile` performance issue when reading archives in " "streaming mode (e.g. ``r|*``)." msgstr "" -#: ../NEWS:1861 +#: ../NEWS:1948 msgid "" ":issue:`45509`: Gzip headers are now checked for corrupted NAME, COMMENT and " "HCRC fields." msgstr "" -#: ../NEWS:1867 +#: ../NEWS:1954 msgid "" ":gh:`150387`: Fix hang in ``test.test_profiling.test_sampling_profiler." "test_live_collector_ui.TestLiveModeErrors.test_run_failed_script_live`` on " @@ -3273,36 +3401,36 @@ msgid "" "the post-finished input loop." msgstr "" -#: ../NEWS:1873 +#: ../NEWS:1960 msgid "" ":gh:`149776`: Fix test_socket on Linux kernel 7.1 and newer: skip UDP Lite " "tests if it's not supported. Patch by Victor Stinner." msgstr "" -#: ../NEWS:1879 +#: ../NEWS:1966 msgid "" ":gh:`148294`: Corrected the use of ``AC_PATH_TOOL`` in ``configure.ac`` to " "allow a C++ compiler to be found on :envvar:`!PATH`." msgstr "" -#: ../NEWS:1882 +#: ../NEWS:1969 msgid "" ":gh:`148260`: On Linux when Python is linked to the musl C library, use a " "thread stack size of at least 1 MiB instead of musl default which is 128 " "kiB. Patch by Victor Stinner." msgstr "" -#: ../NEWS:1889 +#: ../NEWS:1976 msgid "" ":gh:`149786`: Fixes virtual environment launchers on Windows free-threaded " "builds." msgstr "" -#: ../NEWS:1892 +#: ../NEWS:1979 msgid ":gh:`124111`: Updated Windows builds to use Tcl/Tk 9.0.3." msgstr "" -#: ../NEWS:1894 +#: ../NEWS:1981 msgid "" ":gh:`138489`: Windows distributions now include a :file:`build-details.json` " "file (see :pep:`739`). The legacy installer does not install it, but all " @@ -3310,81 +3438,81 @@ msgid "" "``PC\\layout`` script will include one." msgstr "" -#: ../NEWS:1899 +#: ../NEWS:1986 msgid ":gh:`149029`: Update Windows installer to ship with SQLite 3.53.1." msgstr "" -#: ../NEWS:1904 +#: ../NEWS:1991 msgid "" ":gh:`150644`: When system logging is enabled (with ``config." "use_system_logger``, messages are now tagged as public. This allows the " "macOS 26 system logger to view messages without special configuration." msgstr "" -#: ../NEWS:1909 +#: ../NEWS:1996 msgid "" ":gh:`149029`: Update macOS installer to ship with SQLite version 3.53.1." msgstr "" -#: ../NEWS:1914 +#: ../NEWS:2001 msgid "" ":gh:`150258`: Update the tooltip on the Tachyon flame graph to show both " "absolute and relative percentages." msgstr "" -#: ../NEWS:1920 +#: ../NEWS:2007 msgid "" ":gh:`149725`: Add :c:func:`PySentinel_CheckExact` for exact :class:" "`sentinel` type tests to accompany the existing :c:func:`PySentinel_Check`." msgstr "" -#: ../NEWS:1923 +#: ../NEWS:2010 msgid "" ":gh:`145235`: Made :c:func:`PyDict_AddWatcher`, :c:func:" "`PyDict_ClearWatcher`, :c:func:`PyDict_Watch`, and :c:func:`PyDict_Unwatch` " "thread-safe on the :term:`free threaded ` build." msgstr "" -#: ../NEWS:1930 +#: ../NEWS:2017 msgid "Python 3.15.0 beta 1" msgstr "" -#: ../NEWS:1932 +#: ../NEWS:2019 msgid "*Release date: 2026-05-07*" msgstr "" -#: ../NEWS:1937 +#: ../NEWS:2024 msgid ":gh:`149254`: Update Android and iOS installer to use OpenSSL 3.5.6." msgstr "" -#: ../NEWS:1939 +#: ../NEWS:2026 msgid "" ":gh:`149017`: Update bundled `libexpat `_ to " "version 2.8.0." msgstr "" -#: ../NEWS:1942 +#: ../NEWS:2029 msgid "" ":gh:`148252`: Fixed string table and sample record bounds checks in :mod:`!" "_remote_debugging` when decoding certain ``.pyb`` inputs on 32-bit builds. " "Patch by Maurycy Pawłowski-Wieroński." msgstr "" -#: ../NEWS:1946 +#: ../NEWS:2033 msgid "" ":gh:`90309`: Base64-encode values when embedding cookies to JavaScript using " "the :meth:`http.cookies.BaseCookie.js_output` method to avoid injection and " "escaping." msgstr "" -#: ../NEWS:1950 +#: ../NEWS:2037 msgid "" ":gh:`148808`: Added buffer boundary check when using ``nbytes`` parameter " "with :meth:`!asyncio.AbstractEventLoop.sock_recvfrom_into`. Only relevant " "for Windows and the :class:`asyncio.ProactorEventLoop`." msgstr "" -#: ../NEWS:1954 +#: ../NEWS:2041 msgid "" ":gh:`148395`: Fix a dangling input pointer in :class:`lzma." "LZMADecompressor`, :class:`bz2.BZ2Decompressor`, and internal :class:`!zlib." @@ -3393,27 +3521,27 @@ msgid "" "a stale pointer to the already-released caller buffer." msgstr "" -#: ../NEWS:1961 +#: ../NEWS:2048 msgid "" ":gh:`148252`: Fixed stack depth calculation in :mod:`!_remote_debugging` " "when decoding certain ``.pyb`` inputs on 32-bit builds. Issue originally " "identified and diagnosed by Tristan Madani (@TristanInSec on GitHub)." msgstr "" -#: ../NEWS:1965 +#: ../NEWS:2052 msgid "" ":gh:`148178`: Hardened :mod:`!_remote_debugging` by validating remote debug " "offset tables before using them to size memory reads or interpret remote " "layouts." msgstr "" -#: ../NEWS:1969 +#: ../NEWS:2056 msgid "" ":gh:`148169`: A bypass in :mod:`webbrowser` allowed URLs prefixed with " "``%action`` to pass the dash-prefix safety check." msgstr "" -#: ../NEWS:1972 +#: ../NEWS:2059 msgid "" ":gh:`146581`: Fix vulnerability in :func:`shutil.unpack_archive` for ZIP " "files on Windows which allowed to write files outside of the destination " @@ -3422,7 +3550,7 @@ msgid "" "\"foo..bar\") are no longer skipped." msgstr "" -#: ../NEWS:1978 +#: ../NEWS:2065 msgid "" ":gh:`137586`: Fix a PATH-injection vulnerability in :mod:`webbrowser` on " "macOS where ``osascript`` was invoked without an absolute path. The new :" @@ -3430,7 +3558,7 @@ msgid "" "dependency on ``osascript`` entirely." msgstr "" -#: ../NEWS:1983 +#: ../NEWS:2070 msgid "" ":gh:`146333`: Fix quadratic backtracking in :class:`configparser." "RawConfigParser` option parsing regexes (``OPTCRE`` and ``OPTCRE_NV``). A " @@ -3438,13 +3566,13 @@ msgid "" "excessive CPU usage." msgstr "" -#: ../NEWS:1988 +#: ../NEWS:2075 msgid "" ":gh:`146211`: Reject CR/LF characters in tunnel request headers for the " "HTTPConnection.set_tunnel() method." msgstr "" -#: ../NEWS:1994 +#: ../NEWS:2081 msgid "" ":gh:`148940`: Revert the process size based deferral of garbage collection (:" "gh:`133464`). The performance issue this change resolves is also fixed by :" @@ -3454,25 +3582,25 @@ msgid "" "This change applies to the free-threaded GC only." msgstr "" -#: ../NEWS:2001 +#: ../NEWS:2088 msgid "" ":gh:`149243`: Check for recursion limits in ``CALL_ALLOC_AND_ENTER_INIT`` " "opcode." msgstr "" -#: ../NEWS:2004 +#: ../NEWS:2091 msgid "" ":gh:`126910`: Add support for unwinding JIT frames using GNU backtrace. " "Patch by Diego Russo and Pablo Galindo" msgstr "" -#: ../NEWS:2007 +#: ../NEWS:2094 msgid "" ":gh:`149171`: Allow assignment to the ``__module__`` attribute of :class:" "`typing.TypeAliasType` instances." msgstr "" -#: ../NEWS:2010 +#: ../NEWS:2097 msgid "" ":gh:`149122`: Fix a crash in optimized calls to :func:`all`, :func:`any`, :" "func:`tuple`, :func:`list`, and :func:`set` with an async generator " @@ -3480,11 +3608,11 @@ msgid "" "calls now correctly raise ``TypeError`` instead of crashing." msgstr "" -#: ../NEWS:2015 +#: ../NEWS:2102 msgid ":gh:`149049`: Fix stack underflow for ``BINARY_OP`` in tier 2." msgstr "" -#: ../NEWS:2017 +#: ../NEWS:2104 msgid "" ":gh:`83065`: Fix a deadlock that could occur when one thread is importing a " "submodule (for example ``import pkg.sub.mod``) while another thread is " @@ -3494,7 +3622,7 @@ msgid "" "so the two threads serialise instead of raising ``_DeadlockError``." msgstr "" -#: ../NEWS:2024 +#: ../NEWS:2111 msgid "" ":gh:`113956`: Fix a data race in :func:`sys.intern` in the free-threaded " "build when interning a string owned by another thread. An interned copy " @@ -3502,13 +3630,13 @@ msgid "" "immortalize the original." msgstr "" -#: ../NEWS:2029 +#: ../NEWS:2116 msgid "" ":gh:`148850`: Fix the memory sanitizer false positive in :func:`os." "getrandom`." msgstr "" -#: ../NEWS:2032 +#: ../NEWS:2119 msgid "" ":gh:`148820`: Fix a race in :c:type:`!_PyRawMutex` on the free-threaded " "build where a ``Py_PARK_INTR`` return from ``_PySemaphore_Wait`` could let " @@ -3517,43 +3645,43 @@ msgid "" "error." msgstr "" -#: ../NEWS:2038 +#: ../NEWS:2125 msgid "" ":gh:`148829`: Add :class:`sentinel`, implementing :pep:`661`. PEP by Tal " "Einat; patch by Jelle Zijlstra." msgstr "" -#: ../NEWS:2041 +#: ../NEWS:2128 msgid ":gh:`146270`: Fix a sequential consistency bug in ``structmember.c``." msgstr "" -#: ../NEWS:2043 +#: ../NEWS:2130 msgid "" ":gh:`148766`: The interpreter help (such as ``python --help``) is now in " "color. Patch by Hugo van Kemenade." msgstr "" -#: ../NEWS:2046 +#: ../NEWS:2133 msgid "" ":gh:`148571`: Fix a crash in the JIT optimizer when specialized opcode " "families inherited incompatible recorded operand layouts." msgstr "" -#: ../NEWS:2049 +#: ../NEWS:2136 msgid "" ":gh:`148653`: Forbid :mod:`marshalling ` recursive code objects, :" "class:`slice` and :class:`frozendict` objects which cannot be correctly " "unmarshalled." msgstr "" -#: ../NEWS:2053 +#: ../NEWS:2140 msgid "" ":gh:`142516`: Forward-port the generational cycle garbage collector to the " "default 3.15 build, replacing the incremental collector while leaving the " "free-threaded collector unchanged." msgstr "" -#: ../NEWS:2057 +#: ../NEWS:2144 msgid "" ":gh:`146462`: Added ``PyTypeObject.tp_basicsize``, ``PyTypeObject." "tp_dictoffset``, and ``PyHeapTypeObject.ht_cached_keys`` offsets to :c:type:" @@ -3561,20 +3689,20 @@ msgid "" "introspection tools." msgstr "" -#: ../NEWS:2062 +#: ../NEWS:2149 msgid "" ":gh:`145239`: Unary plus is now accepted in :keyword:`match` literal " "patterns, mirroring the existing support for unary minus. Patch by Bartosz " "Sławecki." msgstr "" -#: ../NEWS:2066 +#: ../NEWS:2153 msgid "" ":gh:`148515`: Fix a bug in the JIT optimizer reading operands for uops with " "multiple caches." msgstr "" -#: ../NEWS:2069 +#: ../NEWS:2156 msgid "" ":gh:`148390`: Fix an undefined behavior in :class:`memoryview` when using " "the native boolean format (``?``) in :meth:`~memoryview.cast`. Previously, " @@ -3583,26 +3711,26 @@ msgid "" "*b*. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:2075 +#: ../NEWS:2162 msgid "" ":gh:`148418`: Fix a possible reference leak in a corrupted ``TYPE_CODE`` " "marshal stream." msgstr "" -#: ../NEWS:2078 +#: ../NEWS:2165 msgid "" ":gh:`148393`: Fix data races between :c:func:`PyDict_Watch` / :c:func:" "`PyDict_Unwatch` and concurrent dict mutation in the :term:`free-threaded " "build`." msgstr "" -#: ../NEWS:2082 +#: ../NEWS:2169 msgid "" ":gh:`148398`: Fix a bug in the JIT optimizer where class attribute loads " "were not invalidated after type mutation." msgstr "" -#: ../NEWS:2085 +#: ../NEWS:2172 msgid "" ":gh:`146527`: Add a ``GCMonitor`` class with a ``get_gc_stats`` method to " "the :mod:`!_remote_debugging` module to allow reading GC statistics from an " @@ -3610,33 +3738,33 @@ msgid "" "functionality. Patch by Sergey Miryanov and Pablo Galindo." msgstr "" -#: ../NEWS:2090 +#: ../NEWS:2177 msgid "" ":gh:`148284`: Fix high stack consumption in Python's interpreter loop on " "Clang 22 by setting function limits for inlining when building with computed " "gotos." msgstr "" -#: ../NEWS:2094 +#: ../NEWS:2181 msgid "" ":gh:`148037`: Remove critical section from :c:func:`!PyCode_Addr2Line` in " "free-threading." msgstr "" -#: ../NEWS:2097 +#: ../NEWS:2184 msgid "" ":gh:`115802`: Improve JIT code generation on Linux AArch64 by reducing the " "indirect call to external symbols. Patch by Diego Russo." msgstr "" -#: ../NEWS:2100 +#: ../NEWS:2187 msgid "" ":gh:`148189`: Repaired undercount of bytes in type-specific free lists " "reported by sys._debugmallocstats(). For types that participate in cyclic " "garbage collection, it was missing two pointers used by GC." msgstr "" -#: ../NEWS:2104 +#: ../NEWS:2191 msgid "" ":gh:`148222`: Fix vectorcall support in :class:`types.GenericAlias` when the " "underlying type does not support the vectorcall protocol. Fix possible leaks " @@ -3644,18 +3772,18 @@ msgid "" "memory error." msgstr "" -#: ../NEWS:2109 +#: ../NEWS:2196 msgid ":gh:`148208`: Fix recursion depth leak in :c:func:`PyObject_Print`" msgstr "" -#: ../NEWS:2111 +#: ../NEWS:2198 msgid "" ":gh:`95004`: The specializing interpreter now specializes for :class:`enum." "Enum` improving performance and scaling in free-threading. Patch by Kumar " "Aditya." msgstr "" -#: ../NEWS:2115 +#: ../NEWS:2202 msgid "" ":gh:`149202`: Enable frame pointers by default for GCC-compatible CPython " "builds, including ``-mno-omit-leaf-frame-pointer``, ``-marm`` on 32-bit ARM, " @@ -3665,46 +3793,46 @@ msgid "" "configure`` to opt out." msgstr "" -#: ../NEWS:2122 +#: ../NEWS:2209 msgid "" ":gh:`148014`: Accept a function name in :option:`-X presite <-X>` command " "line option and :envvar:`PYTHON_PRESITE` environment variable. Patch by " "Victor Stinner." msgstr "" -#: ../NEWS:2126 +#: ../NEWS:2213 msgid "" ":gh:`147998`: Fixed a memory leak in interpreter helper calls so cleanup " "works when an operation falls across interpreter boundaries. Patch by " "Maurycy Pawłowski-Wieroński." msgstr "" -#: ../NEWS:2130 +#: ../NEWS:2217 msgid "" ":gh:`146455`: Fix O(N²) compile-time regression in constant folding after it " "was moved from AST to CFG optimizer." msgstr "" -#: ../NEWS:2133 +#: ../NEWS:2220 msgid "" ":gh:`146306`: Specialize float true division in the tier 2 optimizer with " "inplace mutation for uniquely-referenced operands." msgstr "" -#: ../NEWS:2136 +#: ../NEWS:2223 msgid "" ":gh:`142186`: Global :mod:`sys.monitoring` events can now be turned on and " "disabled on a per code object basis. Returning ``DISABLE`` from a callback " "disables the event for the entire code object (for the current tool)." msgstr "" -#: ../NEWS:2140 +#: ../NEWS:2227 msgid "" ":gh:`126910`: Add support for unwinding JIT frames using GDB. Patch by Diego " "Russo and Pablo Galindo." msgstr "" -#: ../NEWS:2143 +#: ../NEWS:2230 msgid "" ":gh:`146031`: The unstable API _PyInterpreterState_SetEvalFrameFunc has a " "companion function _PyInterpreterState_SetEvalFrameAllowSpecialization to " @@ -3714,49 +3842,49 @@ msgid "" "inlined dispatch." msgstr "" -#: ../NEWS:2150 +#: ../NEWS:2237 msgid "" ":gh:`145278`: The :mod:`encodings` is now partially frozen, including the " "``aliases`` and ``utf_8`` submodules." msgstr "" -#: ../NEWS:2153 +#: ../NEWS:2240 msgid "The :mod:`linecache` is now frozen." msgstr "" -#: ../NEWS:2155 +#: ../NEWS:2242 msgid "" ":gh:`134584`: Optimize and eliminate redundant ref-counting for " "``MAKE_FUNCTION`` in the JIT." msgstr "" -#: ../NEWS:2158 +#: ../NEWS:2245 msgid "" ":gh:`143886`: Reorder function annotations so positional-only arguments are " "returned before other arguments. This fixes how :func:`functools." "singledispatch` registers functions with positional-only arguments." msgstr "" -#: ../NEWS:2163 +#: ../NEWS:2250 msgid "" ":gh:`98894`: Restore ``function__entry`` and ``function__return`` DTrace/" "SystemTap probes that were broken since Python 3.11." msgstr "" -#: ../NEWS:2166 +#: ../NEWS:2253 msgid "" ":gh:`116021`: Support for creating instances of abstract AST nodes from the :" "mod:`ast` module is deprecated and scheduled for removal in Python 3.20. " "Patch by Brian Schubert." msgstr "" -#: ../NEWS:2170 +#: ../NEWS:2257 msgid "" ":gh:`137814`: Fix the ``__qualname__`` attribute of ``__annotate__`` " "functions on functions." msgstr "" -#: ../NEWS:2173 +#: ../NEWS:2260 msgid "" ":gh:`137600`: :mod:`ast`: The constructors of AST nodes now raise a :exc:" "`TypeError` when a required argument is omitted or when a keyword argument " @@ -3765,71 +3893,71 @@ msgid "" "Brian Schubert." msgstr "" -#: ../NEWS:2179 +#: ../NEWS:2266 msgid "" ":gh:`137293`: Fix :exc:`SystemError` when searching ELF Files in :func:`sys." "remote_exec`." msgstr "" -#: ../NEWS:2182 +#: ../NEWS:2269 msgid ":gh:`135357`: Add support for :data:`!socket.SO_PASSRIGHTS` on Linux." msgstr "" -#: ../NEWS:2184 +#: ../NEWS:2271 msgid "" ":gh:`134690`: Removed deprecated in :pep:`626` since Python 3.12 :attr:`!" "codeobject.co_lnotab` from :class:`types.CodeType`." msgstr "" -#: ../NEWS:2187 +#: ../NEWS:2274 msgid "" ":gh:`100239`: Specialize ``BINARY_OP`` for concatenation of lists and " "tuples, and propagate the result type through ``_BINARY_OP_EXTEND`` in the " "tier 2 optimizer so that follow-up type guards can be eliminated." msgstr "" -#: ../NEWS:2194 +#: ../NEWS:2281 msgid "" ":gh:`148823`: Defer the import of ``_colorize`` in ``argparse`` until needed " "for coloring output." msgstr "" -#: ../NEWS:2197 +#: ../NEWS:2284 msgid "" ":gh:`141560`: Add an *annotation_format* parameter to :func:`inspect." "getfullargspec`." msgstr "" -#: ../NEWS:2200 +#: ../NEWS:2287 msgid "" ":gh:`139489`: Add the :func:`xml.is_valid_text` function, which allows to " "check whether a string can be used in the XML document." msgstr "" -#: ../NEWS:2203 +#: ../NEWS:2290 msgid "" ":gh:`142389`: Add backticks to stdlib argparse help to display in colour. " "Patch by Hugo van Kemenade." msgstr "" -#: ../NEWS:2206 +#: ../NEWS:2293 msgid ":gh:`149377`: Update bundled pip to 26.1.1" msgstr "" -#: ../NEWS:2208 +#: ../NEWS:2295 msgid "" ":gh:`142389`: Add backtick markup support in :mod:`argparse` option help " "text to highlight inline code when color output is enabled. Patch by Hugo " "van Kemenade." msgstr "" -#: ../NEWS:2212 +#: ../NEWS:2299 msgid "" ":gh:`148675`: Remove ``F`` and ``D`` formats from :mod:`array` and :class:" "`memoryview`. Patch by Victor Stinner." msgstr "" -#: ../NEWS:2215 +#: ../NEWS:2302 msgid "" ":gh:`149342`: Fix :mod:`!_remote_debugging` binary writing so that sampling " "a thread whose Python frame stack is empty (for example while it is in a C " @@ -3839,7 +3967,7 @@ msgid "" "buffer. Patch by Maurycy Pawłowski-Wieroński." msgstr "" -#: ../NEWS:2222 +#: ../NEWS:2309 msgid "" ":gh:`149010`: The ``inspect`` module CLI now reports as much information as " "it has available for non-source modules when ``--details`` is specified, and " @@ -3849,36 +3977,36 @@ msgid "" "value rather than a class or function definition." msgstr "" -#: ../NEWS:2229 +#: ../NEWS:2316 msgid "" ":gh:`146609`: Use :mod:`argparse` for colour help :mod:`timeit` CLI. Patch " "by Hugo van Kemenade." msgstr "" -#: ../NEWS:2232 +#: ../NEWS:2319 msgid "" ":gh:`142389`: Add backticks for colour to regrtest and pdb's help " "description. Patch by Hugo van Kemenade." msgstr "" -#: ../NEWS:2235 +#: ../NEWS:2322 msgid "" ":gh:`144384`: Lazily import :mod:`!_colorize`. Patch by Hugo van Kemenade." msgstr "" -#: ../NEWS:2237 +#: ../NEWS:2324 msgid "" ":gh:`149321`: Fix import cycles exposed by running standard library modules " "with ``-X lazy_imports=none``." msgstr "" -#: ../NEWS:2240 +#: ../NEWS:2327 msgid "" ":gh:`145378`: Generate consistent colors for :mod:`pdb` commands in :mod:" "`pdb` REPL." msgstr "" -#: ../NEWS:2243 +#: ../NEWS:2330 msgid "" ":gh:`149296`: Add a ``dump`` subcommand to :mod:`profiling.sampling` that " "prints a single traceback-style snapshot of a running process's Python " @@ -3887,13 +4015,13 @@ msgid "" "Galindo." msgstr "" -#: ../NEWS:2249 +#: ../NEWS:2336 msgid "" ":gh:`143231`: A *module* attribute has been added to :class:`!warnings." "WarningMessage`." msgstr "" -#: ../NEWS:2252 +#: ../NEWS:2339 msgid "" ":gh:`148675`: :mod:`ctypes`: Change the :py:attr:`~ctypes._SimpleCData." "_type_` of :class:`~ctypes.c_float_complex`, :class:`~ctypes." @@ -3902,33 +4030,33 @@ msgid "" "Patch by Victor Stinner." msgstr "" -#: ../NEWS:2259 +#: ../NEWS:2346 msgid "" ":gh:`148675`: The :data:`array.typecodes` type changed from :class:`str` to :" "class:`tuple` to support type codes longer than 1 character (``Zf`` and " "``Zd``). Patch by Victor Stinner." msgstr "" -#: ../NEWS:2263 +#: ../NEWS:2350 msgid "" ":gh:`149221`: Catch rare math domain error for :func:`random." "binomialvariate`." msgstr "" -#: ../NEWS:2266 +#: ../NEWS:2353 msgid "" ":gh:`149231`: In :mod:`tomllib`, the number of parts in TOML keys is now " "limited." msgstr "" -#: ../NEWS:2269 +#: ../NEWS:2356 msgid "" ":gh:`143231`: :func:`unittest.TestCase.assertWarns` and :func:`unittest." "TestCase.assertWarnsRegex` no longer swallow warnings that do not match the " "specified category or regex. Nested context managers are now supported." msgstr "" -#: ../NEWS:2274 +#: ../NEWS:2361 msgid "" ":gh:`149214`: Fix :mod:`!_remote_debugging` misreading non-ASCII Unicode " "strings (Latin-1, BMP and non-BMP) from a remote process. Filenames and " @@ -3937,7 +4065,7 @@ msgid "" "introspection." msgstr "" -#: ../NEWS:2280 +#: ../NEWS:2367 msgid "" ":gh:`149189`: :mod:`pprint` now uses modern defaults: ``indent=4`` and " "``width=88``, and the default ``compact=False`` output is now formatted " @@ -3948,32 +4076,32 @@ msgid "" "van Kemenade." msgstr "" -#: ../NEWS:2288 +#: ../NEWS:2375 msgid "" ":gh:`149173`: Fix inverted :envvar:`PYTHON_BASIC_REPL` environment check in " "``pdb._pyrepl_available``." msgstr "" -#: ../NEWS:2291 +#: ../NEWS:2378 msgid "" ":gh:`149117`: Fix :func:`runpy.run_module` and :func:`runpy.run_path` to set " "the :attr:`~ImportError.name` attribute on the :exc:`ImportError` they raise." msgstr "" -#: ../NEWS:2295 +#: ../NEWS:2382 msgid "" ":gh:`149148`: :mod:`ensurepip`: Upgrade bundled pip to 26.1. This version " "fixes the :cve:`2026-3219` vulnerability. Patch by Victor Stinner." msgstr "" -#: ../NEWS:2298 +#: ../NEWS:2385 msgid "" ":gh:`149009`: Validate that :mod:`profiling.sampling` binary profiles do not " "contain more unique (thread, interpreter) pairs than declared in the header. " "Patch by Maurycy Pawłowski-Wieroński." msgstr "" -#: ../NEWS:2302 +#: ../NEWS:2389 msgid "" ":gh:`148292`: :mod:`ssl`: Update :class:`ssl.SSLSocket` and :class:`ssl." "SSLObject` for OpenSSL 4. The classes now remember if they get a :exc:`ssl." @@ -3984,33 +4112,33 @@ msgid "" "the same on all OpenSSL versions on EOF. Patch by Victor Stinner." msgstr "" -#: ../NEWS:2311 +#: ../NEWS:2398 msgid "" ":gh:`149085`: Add a *max_threads* keyword argument to :func:`faulthandler." "dump_traceback`, :func:`faulthandler.dump_traceback_later`, :func:" "`faulthandler.enable`, and :func:`faulthandler.register`." msgstr "" -#: ../NEWS:2316 +#: ../NEWS:2403 msgid "" ":gh:`148641`: :func:`pkgutil.resolve_name` gets a new optional, keyword-only " "argument called ``strict``. The default is ``False`` for backward " "compatibility." msgstr "" -#: ../NEWS:2320 +#: ../NEWS:2407 msgid "" ":gh:`148093`: Fix an out-of-bounds read of one byte in :func:`binascii." "a2b_uu`. Raise :exc:`binascii.Error`, instead of reading past the buffer end." msgstr "" -#: ../NEWS:2324 +#: ../NEWS:2411 msgid "" ":gh:`149083`: :data:`dataclasses.MISSING` and :data:`dataclasses.KW_ONLY` " "are now instances of :class:`sentinel`." msgstr "" -#: ../NEWS:2327 +#: ../NEWS:2414 msgid "" ":gh:`148914`: Fix memoization of in-band :class:`~pickle.PickleBuffer` in " "the Python implementation of :mod:`pickle`. Previously, identical :class:`!" @@ -4019,27 +4147,27 @@ msgid "" "following references to ``b''`` were unpickled as an empty bytearray object." msgstr "" -#: ../NEWS:2334 +#: ../NEWS:2421 msgid "" ":gh:`149026`: Add colour to :mod:`pickletools` CLI output. Patch by Hugo van " "Kemenade." msgstr "" -#: ../NEWS:2337 +#: ../NEWS:2424 msgid "" ":gh:`148991`: Add colour to :mod:`tokenize` CLI output. Patch by Hugo van " "Kemenade." msgstr "" -#: ../NEWS:2340 +#: ../NEWS:2427 msgid ":gh:`138907`: Support :rfc:`9309` in :mod:`urllib.robotparser`." msgstr "" -#: ../NEWS:2342 +#: ../NEWS:2429 msgid ":gh:`148981`: Add *color* parameter to :func:`ast.dump`." msgstr "" -#: ../NEWS:2344 +#: ../NEWS:2431 msgid "" ":gh:`148849`: Deprecate :meth:`http.cookies.Morsel.js_output` and :meth:" "`http.cookies.BaseCookie.js_output`, which will be removed in Python 3.19. " @@ -4047,7 +4175,7 @@ msgid "" "output` instead." msgstr "" -#: ../NEWS:2349 +#: ../NEWS:2436 msgid "" ":gh:`146311`: Add a *canonical* keyword-only parameter to the base32, " "base64, base85, ascii85, and Z85 decoders in :mod:`base64` and :mod:" @@ -4058,14 +4186,14 @@ msgid "" "previously they were silently ignored and produced no output bytes." msgstr "" -#: ../NEWS:2358 +#: ../NEWS:2445 msgid "" ":gh:`148947`: Fix crash in :deco:`dataclasses.dataclass` with ``slots=True`` " "that occurred when a function found within the class had an empty " "``__class__`` cell." msgstr "" -#: ../NEWS:2362 +#: ../NEWS:2449 msgid "" ":gh:`148680`: ``ForwardRef`` objects that contain internal names to " "represent known objects now show the ``type_repr`` of the known object " @@ -4073,88 +4201,88 @@ msgid "" "strings." msgstr "" -#: ../NEWS:2366 +#: ../NEWS:2453 msgid "" ":gh:`124397`: The threading module added tooling to support concurrent " "iterator access: :class:`threading.serialize_iterator`, :func:`threading." "synchronized_iterator`, and :func:`threading.concurrent_tee`." msgstr "" -#: ../NEWS:2371 +#: ../NEWS:2458 msgid "" ":gh:`148801`: :mod:`xml.etree.ElementTree`: Fix a crash in :meth:`Element." "__deepcopy__ ` on deeply nested trees." msgstr "" -#: ../NEWS:2374 +#: ../NEWS:2461 msgid "" ":gh:`148735`: :mod:`xml.etree.ElementTree`: Fix a use-after-free in :meth:" "`Element.findtext ` when the element " "tree is mutated concurrently during the search." msgstr "" -#: ../NEWS:2378 +#: ../NEWS:2465 msgid "" ":gh:`148740`: Fix usage for :mod:`uuid` command-line interface to support a " "custom namespace be provided for uuid3 and uuid5." msgstr "" -#: ../NEWS:2381 +#: ../NEWS:2468 msgid "" ":gh:`148688`: :mod:`bz2`, :mod:`compression.zstd`, :mod:`lzma`, :mod:`zlib`: " "Fix a double free on memory allocation failure. Patch by Victor Stinner." msgstr "" -#: ../NEWS:2384 +#: ../NEWS:2471 msgid "" ":gh:`148675`: :mod:`array`, :mod:`struct`: Add support for ``Zd`` and ``Zf`` " "formats for double complex and float complex. Patch by Victor Stinner." msgstr "" -#: ../NEWS:2387 +#: ../NEWS:2474 msgid "" ":gh:`148651`: Fix reference leak in :class:`compression.zstd." "ZstdDecompressor` when an invalid option key is passed." msgstr "" -#: ../NEWS:2391 +#: ../NEWS:2478 msgid "" ":gh:`148641`: :pep:`829` (package startup configuration files) implements a " "new format ``.start`` parallel to ``.pth`` files, to replace " "``import`` lines in the latter." msgstr "" -#: ../NEWS:2395 +#: ../NEWS:2482 msgid "" ":gh:`148639`: Implement :pep:`800`, adding the :deco:`typing.disjoint_base` " "decorator. Patch by Jelle Zijlstra." msgstr "" -#: ../NEWS:2398 +#: ../NEWS:2485 msgid "" ":gh:`148615`: Fix :mod:`pdb` to accept standard -- end of options separator. " "Reported by haampie. Patched by Shrey Naithani." msgstr "" -#: ../NEWS:2401 +#: ../NEWS:2488 msgid "" ":gh:`146553`: Fix infinite loop in :func:`typing.get_type_hints` when " "``__wrapped__`` forms a cycle. Patch by Shamil Abdulaev." msgstr "" -#: ../NEWS:2404 +#: ../NEWS:2491 msgid "" ":gh:`148599`: Update the :mod:`socket` module's WSA error messages to match " "official documentation." msgstr "" -#: ../NEWS:2407 +#: ../NEWS:2494 msgid "" ":gh:`148508`: An intermittent timing error when running SSL tests on iOS has " "been resolved." msgstr "" -#: ../NEWS:2410 +#: ../NEWS:2497 msgid "" ":gh:`144881`: :mod:`asyncio` debugging tools (``python -m asyncio ps`` and " "``pstree``) now retry automatically on transient errors that can occur when " @@ -4162,7 +4290,7 @@ msgid "" "can be controlled with the ``--retries`` flag. Patch by Bartosz Sławecki." msgstr "" -#: ../NEWS:2416 +#: ../NEWS:2503 msgid "" ":gh:`148518`: If an email containing an address header that ended in an open " "double quote was parsed with a non-``compat32`` policy, accessing the " @@ -4171,76 +4299,76 @@ msgid "" "as the result." msgstr "" -#: ../NEWS:2422 +#: ../NEWS:2509 msgid "" ":gh:`148464`: Add missing ``__ctype_le/be__`` attributes for :class:`~ctypes." "c_float_complex` and :class:`~ctypes.c_double_complex`. Patch by Sergey B " "Kirpichev." msgstr "" -#: ../NEWS:2426 +#: ../NEWS:2513 msgid "" ":gh:`148370`: :mod:`configparser`: prevent quadratic behavior when a :exc:" "`~configparser.ParsingError` is raised after a parser fails to parse " "multiple lines. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:2430 +#: ../NEWS:2517 msgid "" ":gh:`121190`: ``importlib.resources.files()`` now emits a more meaningful " "error message when module spec is None (as found in some ``__main__`` " "modules)." msgstr "" -#: ../NEWS:2434 +#: ../NEWS:2521 msgid "" ":gh:`127012`: ``importlib.abc.Traversable.read_text`` now allows/solicits an " "``errors`` parameter." msgstr "" -#: ../NEWS:2437 +#: ../NEWS:2524 msgid "" ":gh:`137855`: Improve import time of :mod:`dataclasses` module by lazy " "importing :mod:`re` and :mod:`copy` modules." msgstr "" -#: ../NEWS:2440 +#: ../NEWS:2527 msgid "" ":gh:`148352`: Add more color to :mod:`calendar`'s CLI output. Patch by Hugo " "van Kemenade." msgstr "" -#: ../NEWS:2443 +#: ../NEWS:2530 msgid "" ":gh:`148254`: Use singular \"sec\" instead of \"secs\" in :mod:`timeit` " "verbose output for consistency with other time units." msgstr "" -#: ../NEWS:2446 +#: ../NEWS:2533 msgid ":gh:`130472`: Integrate fancycompleter with import completions." msgstr "" -#: ../NEWS:2448 +#: ../NEWS:2535 msgid "" ":gh:`148241`: :mod:`json`: Fix serialization: no longer call ``str(obj)`` " "on :class:`str` subclasses. Patch by Victor Stinner." msgstr "" -#: ../NEWS:2451 +#: ../NEWS:2538 msgid "" ":gh:`148225`: The :mod:`profiling.sampling` ``replay`` command now rejects " "non-binary profile files with a clear error explaining that replay only " "accepts files created with ``--binary``." msgstr "" -#: ../NEWS:2455 +#: ../NEWS:2542 msgid "" ":gh:`148192`: ``email.generator.Generator._make_boundary`` could fail to " "detect a duplicate boundary string if linesep was not \\n. It now correctly " "detects boundary strings when linesep is \\r\\n as well." msgstr "" -#: ../NEWS:2459 +#: ../NEWS:2546 msgid "" ":gh:`148207`: :class:`typing.TypeVarTuple` now accepts ``bound``, " "``covariant``, ``contravariant``, and ``infer_variance`` parameters, " @@ -4248,26 +4376,26 @@ msgid "" "ParamSpec`." msgstr "" -#: ../NEWS:2464 +#: ../NEWS:2551 msgid "" ":gh:`148100`: :term:`Soft deprecate ` :func:`re.match` and :" "meth:`re.Pattern.match` in favour of :func:`re.prefixmatch` and :meth:`re." "Pattern.prefixmatch`. Patch by Hugo van Kemenade." msgstr "" -#: ../NEWS:2468 +#: ../NEWS:2555 msgid "" ":gh:`147991`: Improve :mod:`tomllib` import time (up to 10x faster). Patch " "by Victor Stinner." msgstr "" -#: ../NEWS:2471 +#: ../NEWS:2558 msgid "" ":gh:`147957`: Guarantees that :meth:`collections.UserDict.popitem` will pop " "in the same order as the wrapped dictionary rather than an arbitrary order." msgstr "" -#: ../NEWS:2475 +#: ../NEWS:2562 msgid "" ":gh:`146256`: The ``profiling.sampling`` module now supports JSONL output " "format via ``--jsonl``. Each run emits a newline-delimited JSON file that is " @@ -4275,20 +4403,20 @@ msgid "" "consumers. Patch by Maurycy Pawłowski-Wieroński." msgstr "" -#: ../NEWS:2480 +#: ../NEWS:2567 msgid "" ":gh:`146609`: Add colour to :mod:`timeit` CLI output. Patch by Hugo van " "Kemenade." msgstr "" -#: ../NEWS:2483 +#: ../NEWS:2570 msgid "" ":gh:`146563`: :mod:`xml.parsers.expat`: add an exception note when a custom " "Expat handler return value cannot be properly interpreted. Patch by Bénédikt " "Tran." msgstr "" -#: ../NEWS:2487 +#: ../NEWS:2574 msgid "" ":gh:`137586`: Add :class:`!MacOS` to :mod:`webbrowser` for macOS, which " "opens URLs via ``/usr/bin/open`` instead of piping AppleScript to " @@ -4296,7 +4424,7 @@ msgid "" "MacOS`." msgstr "" -#: ../NEWS:2491 +#: ../NEWS:2578 msgid "" ":gh:`146406`: Cross-language method suggestions are now shown for :exc:" "`AttributeError` on builtin types and their subclasses. For example, ``[]." @@ -4305,7 +4433,7 @@ msgid "" "using an ``int``." msgstr "" -#: ../NEWS:2497 +#: ../NEWS:2584 msgid "" ":gh:`146313`: Fix a deadlock in :mod:`multiprocessing`'s resource tracker " "where the parent process could hang indefinitely in :func:`os.waitpid` " @@ -4313,19 +4441,19 @@ msgid "" "held the resource tracker's pipe open." msgstr "" -#: ../NEWS:2502 +#: ../NEWS:2589 msgid "" ":gh:`146292`: Add colour to :mod:`~http.server.BaseHTTPRequestHandler` logs, " "as used by the :mod:`http.server` CLI. Patch by Hugo van Kemenade." msgstr "" -#: ../NEWS:2505 +#: ../NEWS:2592 msgid "" ":gh:`145917`: Add MIME types for TTC and Haptics formats to :mod:" "`mimetypes`. (Contributed by Charlie Lin in :gh:`145918`.)" msgstr "" -#: ../NEWS:2508 +#: ../NEWS:2595 msgid "" ":gh:`145846`: Fix memory leak in ``_lsprof`` when ``clear()`` is called " "during active profiling with nested calls. ``clearEntries()`` now walks the " @@ -4333,69 +4461,69 @@ msgid "" "top context." msgstr "" -#: ../NEWS:2513 +#: ../NEWS:2600 msgid "" ":gh:`145831`: Fix :func:`!email.quoprimime.decode` leaving a stray ``\\r`` " "when ``eol='\\r\\n'`` by stripping the full *eol* string instead of one " "character." msgstr "" -#: ../NEWS:2517 +#: ../NEWS:2604 msgid "" ":gh:`145378`: Use ``PyREPL`` as the default input console for :mod:`pdb`" msgstr "" -#: ../NEWS:2519 +#: ../NEWS:2606 msgid "" ":gh:`145244`: Fixed a use-after-free in :mod:`json` encoder when a " "``default`` callback mutates the dictionary being serialized." msgstr "" -#: ../NEWS:2522 +#: ../NEWS:2609 msgid "" ":gh:`117716`: Fix :mod:`wave` writing of odd-sized ``data`` chunks by " "appending the required RIFF pad byte and correcting the RIFF chunk size " "field accordingly." msgstr "" -#: ../NEWS:2526 +#: ../NEWS:2613 msgid "" ":gh:`145200`: :mod:`hashlib`: fix a memory leak when allocating or " "initializing an OpenSSL HMAC context fails." msgstr "" -#: ../NEWS:2529 +#: ../NEWS:2616 msgid "" ":gh:`145056`: Add support for :class:`frozendict` in :meth:`dataclasses." "asdict` and :meth:`dataclasses.astuple`." msgstr "" -#: ../NEWS:2532 +#: ../NEWS:2619 msgid "" ":gh:`145105`: Fix crash in :mod:`csv` reader when iterating with a re-" "entrant iterator that calls :func:`next` on the same reader from within " "``__next__``." msgstr "" -#: ../NEWS:2536 +#: ../NEWS:2623 msgid "" ":gh:`130750`: Restore quoting of choices in :mod:`argparse` error messages " "for improved clarity and consistency with documentation." msgstr "" -#: ../NEWS:2539 +#: ../NEWS:2626 msgid "" ":gh:`137855`: Reduce the import time of :mod:`dataclasses` module by ~20%." msgstr "" -#: ../NEWS:2541 +#: ../NEWS:2628 msgid "" ":gh:`70647`: :meth:`~datetime.datetime.strptime` now raises :exc:" "`ValueError` when the format string contains ``%d`` without a year " "directive. Using ``%e`` without a year now emits a :exc:`DeprecationWarning`." msgstr "" -#: ../NEWS:2545 +#: ../NEWS:2632 msgid "" ":gh:`105936`: Attempting to mutate non-field attributes of :mod:" "`dataclasses` with both *frozen* and *slots* being ``True`` now raises :" @@ -4404,23 +4532,23 @@ msgid "" "and the original non-slotted class can be garbage collected." msgstr "" -#: ../NEWS:2551 +#: ../NEWS:2638 msgid "" ":gh:`142831`: Fix a crash in the :mod:`json` module where a use-after-free " "could occur if the object being encoded is modified during serialization." msgstr "" -#: ../NEWS:2554 +#: ../NEWS:2641 msgid "" ":gh:`108411`: ``typing.IO`` and ``typing.BinaryIO`` method arguments are now " "positional-only." msgstr "" -#: ../NEWS:2557 +#: ../NEWS:2644 msgid ":gh:`130273`: Fix traceback color output with Unicode characters." msgstr "" -#: ../NEWS:2559 +#: ../NEWS:2646 msgid "" ":gh:`142307`: :mod:`imaplib`: deprecate support for :attr:`IMAP4.file " "`. This attribute was never meant to be part of the " @@ -4429,31 +4557,31 @@ msgid "" "Tran." msgstr "" -#: ../NEWS:2565 +#: ../NEWS:2652 msgid "" ":gh:`141449`: Improve tests and documentation for non-function callables as :" "term:`annotate functions `." msgstr "" -#: ../NEWS:2568 +#: ../NEWS:2655 msgid "" ":gh:`140287`: The :mod:`asyncio` REPL now handles exceptions when executing :" "envvar:`PYTHONSTARTUP` scripts. Patch by Bartosz Sławecki." msgstr "" -#: ../NEWS:2571 +#: ../NEWS:2658 msgid "" ":gh:`139489`: Add the :func:`xml.is_valid_name` function, which allows to " "check whether a string can be used as an element or attribute name in XML." msgstr "" -#: ../NEWS:2574 +#: ../NEWS:2661 msgid "" ":gh:`75707`: Add optional ``mtime`` argument to :func:`tarfile.open`, for " "setting the ``mtime`` header field in ``.tar.gz`` archives." msgstr "" -#: ../NEWS:2577 +#: ../NEWS:2664 msgid "" ":gh:`125862`: The :func:`contextlib.contextmanager` and :func:`contextlib." "asynccontextmanager` decorators now work correctly with generators, " @@ -4461,51 +4589,51 @@ msgid "" "used as decorators." msgstr "" -#: ../NEWS:2582 +#: ../NEWS:2669 msgid "" ":gh:`135528`: :mod:`http.cookiejar`: add \"tv\", \"or\", \"nom\", \"sch\", " "and \"web\" to the default list of supported country code second-level " "domains." msgstr "" -#: ../NEWS:2585 +#: ../NEWS:2672 msgid "" ":gh:`135056`: Add a ``-H`` or ``--header`` CLI option to :program:`python -m " "http.server`. Contributed by Anton I. Sipos." msgstr "" -#: ../NEWS:2588 +#: ../NEWS:2675 msgid ":gh:`134551`: Add t-strings support to pprint functions" msgstr "" -#: ../NEWS:2590 +#: ../NEWS:2677 msgid "" ":gh:`133956`: Fix bug where :func:`@dataclass ` " "wouldn't detect ``ClassVar`` fields if ``ClassVar`` was re-exported from a " "module other than :mod:`typing`." msgstr "" -#: ../NEWS:2594 +#: ../NEWS:2681 msgid "" ":gh:`132631`: Fix \"I/O operation on closed file\" when parsing JSON Lines " "file with :mod:`JSON CLI `." msgstr "" -#: ../NEWS:2597 +#: ../NEWS:2684 msgid "" ":gh:`108951`: :mod:`asyncio`: Add :meth:`TaskGroup.cancel ` which cancels unfinished tasks and exits the group without raising :" "exc:`asyncio.CancelledError`." msgstr "" -#: ../NEWS:2601 +#: ../NEWS:2688 msgid "" ":gh:`123853`: Update the table of Windows language code identifiers (LCIDs) " "used by :func:`locale.getdefaultlocale` on Windows to protocol version 16.0 " "(2024-04-23)." msgstr "" -#: ../NEWS:2605 +#: ../NEWS:2692 msgid "" ":gh:`122476`: The :mod:`email` module no longer incorrectly uses :rfc:`2047` " "encoding for a mailbox with non-ASCII characters in its local-part. Under a " @@ -4517,7 +4645,7 @@ msgid "" "characters." msgstr "" -#: ../NEWS:2614 +#: ../NEWS:2701 msgid "" ":gh:`83938`: The :mod:`email` module no longer incorrectly uses :rfc:`2047` " "encoding for a mailbox with non-ASCII characters in its domain. Under a " @@ -4529,7 +4657,7 @@ msgid "" "internationalized domain name as Unicode characters." msgstr "" -#: ../NEWS:2624 +#: ../NEWS:2711 msgid "" ":gh:`81074`: The :mod:`email` module no longer treats email addresses with " "non-ASCII characters as defects when parsing a Unicode string or in the " @@ -4538,76 +4666,76 @@ msgid "" "bytes and in the Address ``username`` parameter." msgstr "" -#: ../NEWS:2630 +#: ../NEWS:2717 msgid "" "The (undocumented) :exc:`!email.errors.NonASCIILocalPartDefect` is no longer " "used and should be considered deprecated." msgstr "" -#: ../NEWS:2633 +#: ../NEWS:2720 msgid "" ":gh:`70039`: Fixed bug where :meth:`smtplib.SMTP.starttls` could fail if :" "meth:`smtplib.SMTP.connect` is called explicitly rather than implicitly." msgstr "" -#: ../NEWS:2636 +#: ../NEWS:2723 msgid "" ":gh:`113471`: Allow :mod:`http.server` to set a default content-type when " "serving files with an unknown or missing extension." msgstr "" -#: ../NEWS:2639 +#: ../NEWS:2726 msgid "" ":gh:`83281`: :mod:`email`: improve handling trailing garbage in address " "lists to avoid throwing AttributeError in certain edge cases" msgstr "" -#: ../NEWS:2642 +#: ../NEWS:2729 msgid "" ":gh:`96894`: Do not turn echo off for subsequent commands in batch " "activators (``activate.bat`` and ``deactivate.bat``) of :mod:`venv`." msgstr "" -#: ../NEWS:2648 +#: ../NEWS:2735 msgid "" ":gh:`148663`: Document that :class:`calendar.IllegalMonthError` is a " "subclass of both :exc:`ValueError` and :exc:`IndexError` since Python 3.12." msgstr "" -#: ../NEWS:2651 +#: ../NEWS:2738 msgid "" ":gh:`146646`: Document that :func:`glob.glob`, :func:`glob.iglob`, :meth:" "`pathlib.Path.glob`, and :meth:`pathlib.Path.rglob` silently suppress :exc:" "`OSError` exceptions raised from scanning the filesystem." msgstr "" -#: ../NEWS:2658 +#: ../NEWS:2745 msgid "" ":gh:`149425`: Increase time delta in ``test.test_zipfile.test_core." "OtherTests.test_write_without_source_date_epoch``" msgstr "" -#: ../NEWS:2661 +#: ../NEWS:2748 msgid ":gh:`148600`: Add OpenSSL 4.0.0 support to test configurations." msgstr "" -#: ../NEWS:2666 +#: ../NEWS:2753 msgid "" ":gh:`149353`: Avoid unnecessary JIT-related rebuilds during ``make install`` " "after ``--enable-optimizations`` builds." msgstr "" -#: ../NEWS:2669 +#: ../NEWS:2756 msgid "" ":gh:`149351`: Avoid possible broken macOS framework install names when " "DESTDIR is specified during builds." msgstr "" -#: ../NEWS:2672 +#: ../NEWS:2759 msgid ":gh:`149252`: Update to WASI SDK 33." msgstr "" -#: ../NEWS:2674 +#: ../NEWS:2761 msgid "" ":gh:`148690`: Windows free-threaded builds now output to a different default " "path with default filenames, for example, ``PCbuild/amd64t/python.exe`` " @@ -4615,19 +4743,19 @@ msgid "" "been updated to ensure compatibility of generated layouts." msgstr "" -#: ../NEWS:2679 +#: ../NEWS:2766 msgid "" ":gh:`146475`: Block Apple Clang from being used to build the JIT as it ships " "without required LLVM tools." msgstr "" -#: ../NEWS:2682 +#: ../NEWS:2769 msgid "" ":gh:`148644`: Errors during the PGO training job on Windows are no longer " "ignored, and a non-zero return code will cause the build to fail." msgstr "" -#: ../NEWS:2685 +#: ../NEWS:2772 msgid "" ":gh:`148535`: No longer use the ``gcc -fprofile-update=atomic`` flag on " "i686. The flag has been added to fix a random GCC internal error on PGO " @@ -4637,36 +4765,36 @@ msgid "" "fprofile-update=atomic`` on i686 anymore. Patch by Victor Stinner." msgstr "" -#: ../NEWS:2692 +#: ../NEWS:2779 msgid ":gh:`148483`: Use ``Py_GCC_ATTRIBUTE(unused)`` for stop_tracing label." msgstr "" -#: ../NEWS:2694 +#: ../NEWS:2781 msgid "" ":gh:`148474`: Fixed compilation of :file:`Python/pystrhex.c` with older " "clang versions." msgstr "" -#: ../NEWS:2697 +#: ../NEWS:2784 msgid "" ":gh:`146445`: The Android build tools have been moved to the Platforms " "folder." msgstr "" -#: ../NEWS:2700 +#: ../NEWS:2787 msgid "" ":gh:`146264`: Fix static module builds on non-WASI targets by linking HACL " "dependencies as static libraries when ``MODULE_BUILDTYPE=static``, " "preventing duplicate ``_Py_LibHacl_*`` symbol errors at link time." msgstr "" -#: ../NEWS:2704 +#: ../NEWS:2791 msgid "" ":gh:`138451`: Allow for custom LLVM path using ``LLVM_TOOLS_INSTALL_DIR`` " "during JIT build." msgstr "" -#: ../NEWS:2707 +#: ../NEWS:2794 msgid "" ":gh:`133312`: Add a new ``./configure`` option :option:`--enable-static-" "libpython-for-interpreter` which, when used with :option:`--enable-shared`, " @@ -4677,58 +4805,58 @@ msgid "" "library but also get a shared library for use by other programs." msgstr "" -#: ../NEWS:2719 +#: ../NEWS:2806 msgid ":gh:`149254`: Updated bundled version of OpenSSL to 3.5.6." msgstr "" -#: ../NEWS:2721 +#: ../NEWS:2808 msgid "" ":gh:`148690`: Non-freethreaded builds on Windows now support extensions " "linked to ``python3t.dll``, and will include a copy of that library in " "normal installs that references the non-freethreaded runtime." msgstr "" -#: ../NEWS:2725 +#: ../NEWS:2812 msgid "" ":gh:`146458`: Fix incorrect REPL height and width tracking on console window " "resize on Windows." msgstr "" -#: ../NEWS:2731 +#: ../NEWS:2818 msgid "" ":gh:`142295`: For Python macOS framework builds, update Info.plist files to " "be more compliant with current Apple guidelines. Original patch contributed " "by Martinus Verburg." msgstr "" -#: ../NEWS:2735 +#: ../NEWS:2822 msgid ":gh:`149254`: Update macOS installer to use OpenSSL 3.5.6." msgstr "" -#: ../NEWS:2740 +#: ../NEWS:2827 msgid "" ":gh:`94523`: Detect file if modified at local disk and prompt to ask " "refresh. Patch by Shixian Li." msgstr "" -#: ../NEWS:2743 +#: ../NEWS:2830 msgid ":gh:`139551`: Support rendering :exc:`BaseExceptionGroup` in IDLE." msgstr "" -#: ../NEWS:2745 +#: ../NEWS:2832 msgid "" ":gh:`89520`: Make IDLE extension configuration look at user config files, " "allowing user-installed extensions to have settings and key bindings defined " "in ~/.idlerc." msgstr "" -#: ../NEWS:2752 +#: ../NEWS:2839 msgid "" ":gh:`149225`: :c:type:`PyCriticalSection` and related functions are added to " "the Stable ABI." msgstr "" -#: ../NEWS:2755 +#: ../NEWS:2842 msgid "" ":gh:`149216`: :c:type:`PyType_WatchCallback` callbacks registered via :c:" "func:`PyType_AddWatcher` are now also invoked when a watched heap type is " @@ -4737,47 +4865,47 @@ msgid "" "reused." msgstr "" -#: ../NEWS:2761 +#: ../NEWS:2848 msgid ":gh:`149101`: Implement :pep:`788`." msgstr "" -#: ../NEWS:2763 +#: ../NEWS:2850 msgid ":gh:`149044`: Implement :pep:`820`: Unified slot system for the C API." msgstr "" -#: ../NEWS:2765 +#: ../NEWS:2852 msgid "" ":gh:`148267`: Using :c:macro:`Py_LIMITED_API` on a non-Windows free-threaded " "build no longer needs an extra :c:macro:`Py_GIL_DISABLED`." msgstr "" -#: ../NEWS:2768 +#: ../NEWS:2855 msgid "" ":gh:`145559`: Rename ``_Py_DumpTraceback`` and ``_Py_DumpTracebackThreads`` " "to :c:func:`PyUnstable_DumpTraceback` and :c:func:" "`PyUnstable_DumpTracebackThreads`." msgstr "" -#: ../NEWS:2772 +#: ../NEWS:2859 msgid "" ":gh:`146636`: Implement :pep:`803` -- ``abi3t``: Stable ABI for Free-" "Threaded Builds." msgstr "" -#: ../NEWS:2775 +#: ../NEWS:2862 msgid "" ":gh:`146302`: :c:func:`Py_IsInitialized` no longer returns true until " "initialization has fully completed, including import of the :mod:`site` " "module. The underlying runtime flags now use atomic operations." msgstr "" -#: ../NEWS:2779 +#: ../NEWS:2866 msgid "" ":gh:`146063`: Add :c:func:`PyObject_CallFinalizerFromDealloc` function to " "the limited C API. Patch by Victor Stinner." msgstr "" -#: ../NEWS:2782 +#: ../NEWS:2869 msgid "" ":gh:`145921`: Add functions that are guaranteed to be safe for use in :c:" "member:`~PyTypeObject.tp_traverse` handlers: :c:func:" @@ -4788,55 +4916,55 @@ msgid "" "func:`PyType_GetModuleByToken_DuringGC`." msgstr "" -#: ../NEWS:2795 +#: ../NEWS:2882 msgid "Python 3.15.0 alpha 8" msgstr "" -#: ../NEWS:2797 +#: ../NEWS:2884 msgid "*Release date: 2026-04-07*" msgstr "" -#: ../NEWS:2802 +#: ../NEWS:2889 msgid "" ":gh:`145986`: :mod:`xml.parsers.expat`: Fixed a crash caused by unbounded C " "recursion when converting deeply nested XML content models with :meth:`~xml." "parsers.expat.xmlparser.ElementDeclHandler`. This addresses :cve:`2026-4224`." msgstr "" -#: ../NEWS:2807 +#: ../NEWS:2894 msgid "" ":gh:`145599`: Reject control characters in :class:`http.cookies.Morsel` :" "meth:`~http.cookies.Morsel.update` and :meth:`~http.cookies.BaseCookie." "js_output`. This addresses :cve:`2026-3644`." msgstr "" -#: ../NEWS:2812 +#: ../NEWS:2899 msgid "" ":gh:`143930`: Reject leading dashes in URLs passed to :func:`webbrowser." "open`." msgstr "" -#: ../NEWS:2818 +#: ../NEWS:2905 msgid "" ":gh:`148157`: Fix an unlikely crash when parsing an invalid type comments " "for function parameters. Found by OSS Fuzz in :oss-fuzz:`492782951`." msgstr "" -#: ../NEWS:2821 +#: ../NEWS:2908 msgid "" ":gh:`100239`: Propagate result type and uniqueness information through " "``_BINARY_OP_EXTEND`` in the tier 2 optimizer, enabling elimination of " "downstream type guards and selection of inplace float operations." msgstr "" -#: ../NEWS:2825 +#: ../NEWS:2912 msgid "" ":gh:`148144`: Initialize ``_PyInterpreterFrame.visited`` when copying " "interpreter frames so incremental GC does not read an uninitialized byte " "from generator and frame-object copies." msgstr "" -#: ../NEWS:2829 +#: ../NEWS:2916 msgid "" ":gh:`148072`: Cache ``pickle.dumps`` and ``pickle.loads`` per interpreter in " "the XIData framework, avoiding repeated module lookups on every cross-" @@ -4845,73 +4973,73 @@ msgid "" "1.7x--3.3x." msgstr "" -#: ../NEWS:2835 +#: ../NEWS:2922 msgid "" ":gh:`148110`: Fix :func:`sys.set_lazy_imports_filter` so relative lazy " "imports pass the resolved imported module name to the filter callback. Patch " "by Pablo Galindo." msgstr "" -#: ../NEWS:2839 +#: ../NEWS:2926 msgid "" ":gh:`148083`: Constant-fold ``_CONTAINS_OP_SET`` for :class:`frozenset`. " "Patch by Donghee Na." msgstr "" -#: ../NEWS:2842 +#: ../NEWS:2929 msgid "" ":gh:`144319`: Fix a bug that could cause applications with specific " "allocation patterns to leak memory via Huge Pages if compiled with Huge Page " "support. Patch by Pablo Galindo" msgstr "" -#: ../NEWS:2846 +#: ../NEWS:2933 msgid "" ":gh:`147985`: Make :c:func:`PySet_Contains` attempt a lock-free lookup, " "similar to :meth:`!set.__contains__`. This avoids acquiring the set object " "mutex in the normal case." msgstr "" -#: ../NEWS:2850 +#: ../NEWS:2937 msgid "" ":gh:`147856`: Allow the *count* argument of :meth:`bytes.replace` to be a " "keyword." msgstr "" -#: ../NEWS:2853 +#: ../NEWS:2940 msgid "" ":gh:`146615`: Fix a crash in :meth:`~object.__get__` for :c:expr:" "`METH_METHOD` descriptors when an invalid (non-type) object is passed as the " "second argument. Patch by Steven Sun." msgstr "" -#: ../NEWS:2857 +#: ../NEWS:2944 msgid "" ":gh:`146306`: Optimize compact integer arithmetic in the JIT by mutating " "uniquely-referenced operands in place, avoiding allocation of a new int " "object. Speeds up the pyperformance ``spectral_norm`` benchmark by ~10%." msgstr "" -#: ../NEWS:2861 +#: ../NEWS:2948 msgid "" ":gh:`146587`: Fix type slot assignment incase of multiple slots for same " "name in type object implementation. Patch by Kumar Aditya." msgstr "" -#: ../NEWS:2864 +#: ../NEWS:2951 msgid "" ":gh:`126910`: Set frame pointers in ``aarch64-unknown-linux-gnu`` JIT code, " "allowing most native profilers and debuggers to unwind through them. Patch " "by Diego Russo" msgstr "" -#: ../NEWS:2868 +#: ../NEWS:2955 msgid "" ":gh:`146388`: Adds a null check to handle when the JIT optimizer runs out of " "space when dealing with contradictions in ``make_bottom``." msgstr "" -#: ../NEWS:2871 +#: ../NEWS:2958 msgid "" ":gh:`146308`: Fixed multiple error handling issues in the :mod:`!" "_remote_debugging` module including a double-free in code object caching, " @@ -4921,118 +5049,118 @@ msgid "" "Patch by Pablo Galindo." msgstr "" -#: ../NEWS:2878 +#: ../NEWS:2965 msgid "" ":gh:`146306`: Optimize float arithmetic in the JIT by mutating uniquely-" "referenced operands in place, avoiding allocation of a new float object. " "Speeds up the pyperformance ``nbody`` benchmark by ~19%." msgstr "" -#: ../NEWS:2882 +#: ../NEWS:2969 msgid "" ":gh:`146128`: Fix a bug which could cause constant values to be partially " "corrupted in AArch64 JIT code. This issue is theoretical, and hasn't " "actually been observed in unmodified Python interpreters." msgstr "" -#: ../NEWS:2886 +#: ../NEWS:2973 msgid "" ":gh:`146250`: Fixed a memory leak in :exc:`SyntaxError` when re-initializing " "it." msgstr "" -#: ../NEWS:2889 +#: ../NEWS:2976 msgid "" ":gh:`146245`: Fixed reference leaks in :mod:`socket` when audit hooks raise " "exceptions in :func:`socket.getaddrinfo` and :meth:`!socket.sendto`." msgstr "" -#: ../NEWS:2892 +#: ../NEWS:2979 msgid "" ":gh:`146151`: :class:`memoryview` now supports the :c:expr:`float complex` " "and :c:expr:`double complex` C types: formatting characters ``'F'`` and " "``'D'`` respectively. Patch by Sergey B Kirpichev." msgstr "" -#: ../NEWS:2896 +#: ../NEWS:2983 msgid "" ":gh:`146196`: Fix potential Undefined Behavior in :c:func:" "`PyUnicodeWriter_WriteASCII` by adding a zero-length check. Patch by Shamil " "Abdulaev." msgstr "" -#: ../NEWS:2900 +#: ../NEWS:2987 msgid "" ":gh:`146227`: Fix wrong type in ``_Py_atomic_load_uint16`` in the C11 " "atomics backend (``pyatomic_std.h``), which used a 32-bit atomic load " "instead of 16-bit. Found by Mohammed Zuhaib." msgstr "" -#: ../NEWS:2904 +#: ../NEWS:2991 msgid "" ":gh:`146205`: Fixed a bug where :meth:`select.epoll.close`, :meth:`select." "kqueue.close`, and :meth:`select.devpoll.close` silently ignored errors." msgstr "" -#: ../NEWS:2908 +#: ../NEWS:2995 msgid ":gh:`146199`: Comparison of code objects now handles errors correctly." msgstr "" -#: ../NEWS:2910 +#: ../NEWS:2997 msgid "" ":gh:`145667`: Remove the ``GET_ITER_YIELD_FROM`` instruction, modifying " "``SEND`` to pair with ``GET_ITER`` when compiling ``yield from`` expressions." msgstr "" -#: ../NEWS:2914 +#: ../NEWS:3001 msgid "" ":gh:`146192`: Add Base32 support to :mod:`binascii` and improve the " "performance of the Base32 converters in :mod:`base64`. Patch by James Seo." msgstr "" -#: ../NEWS:2917 +#: ../NEWS:3004 msgid "" ":gh:`135871`: Improve multithreaded scaling of PyMutex in low-contention " "scenarios by reloading the lock's internal state, without slowing down high-" "contention scenarios." msgstr "" -#: ../NEWS:2921 +#: ../NEWS:3008 msgid "" ":gh:`146096`: Fixed segmentation fault when called repr for " "BaseExceptionGroup with empty or 1-size tuple args." msgstr "" -#: ../NEWS:2924 +#: ../NEWS:3011 msgid "" ":gh:`146056`: Fix :func:`repr` for lists and tuples containing ``NULL``\\ s." msgstr "" -#: ../NEWS:2926 +#: ../NEWS:3013 msgid "" ":gh:`145059`: Fixed :py:attr:`sys.lazy_modules` to include lazy modules " "without submodules. Patch by Bartosz Sławecki." msgstr "" -#: ../NEWS:2929 +#: ../NEWS:3016 msgid "" ":gh:`146041`: Fix free-threading scaling bottleneck in :func:`sys.intern` " "and :c:func:`PyObject_SetAttr` by avoiding the interpreter-wide lock when " "the string is already interned and immortalized." msgstr "" -#: ../NEWS:2933 +#: ../NEWS:3020 msgid "" ":gh:`145990`: ``python --help-env`` sections are now sorted by environment " "variable name." msgstr "" -#: ../NEWS:2936 +#: ../NEWS:3023 msgid "" ":gh:`145990`: ``python --help-xoptions`` is now sorted by ``-X`` option name." msgstr "" -#: ../NEWS:2938 +#: ../NEWS:3025 msgid "" ":gh:`145876`: :exc:`AttributeError`\\ s and :exc:`KeyError`\\ s raised in :" "meth:`!keys` or :meth:`!__getitem__` during dictionary unpacking " @@ -5040,108 +5168,108 @@ msgid "" "`TypeError`." msgstr "" -#: ../NEWS:2943 +#: ../NEWS:3030 msgid "" ":gh:`127958`: Support tracing from function entrypoints in the JIT. Patch by " "Ken Jin." msgstr "" -#: ../NEWS:2946 +#: ../NEWS:3033 msgid ":gh:`145376`: Fix GC tracking in ``structseq.__replace__()``." msgstr "" -#: ../NEWS:2948 +#: ../NEWS:3035 msgid "" ":gh:`145792`: Fix out-of-bounds access when invoking faulthandler on a " "CPython build compiled without support for VLAs." msgstr "" -#: ../NEWS:2951 +#: ../NEWS:3038 msgid "" ":gh:`142183`: Avoid a pathological case where repeated calls at a specific " "stack depth could be significantly slower." msgstr "" -#: ../NEWS:2954 +#: ../NEWS:3041 msgid "" ":gh:`145779`: Improve scaling of :func:`classmethod` and :func:" "`staticmethod` calls in the free-threaded build by avoiding the descriptor " "``__get__`` call." msgstr "" -#: ../NEWS:2958 +#: ../NEWS:3045 msgid "" ":gh:`145783`: Fix an unlikely crash in the parser when certain errors were " "erroneously not propagated. Found by OSS Fuzz in :oss-fuzz:`491369109`." msgstr "" -#: ../NEWS:2961 +#: ../NEWS:3048 msgid "" ":gh:`145685`: Improve scaling of type attribute lookups in the :term:`free-" "threaded build` by avoiding contention on the internal type lock." msgstr "" -#: ../NEWS:2965 +#: ../NEWS:3052 msgid "" ":gh:`145713`: Make :meth:`bytearray.resize` thread-safe in the free-threaded " "build by using a critical section and calling the lock-held variant of the " "resize function." msgstr "" -#: ../NEWS:2969 +#: ../NEWS:3056 msgid "" ":gh:`145036`: In free-threaded build, fix race condition when calling :meth:" "`!__sizeof__` on a :class:`list`" msgstr "" -#: ../NEWS:2972 +#: ../NEWS:3059 msgid "" ":gh:`134584`: Eliminate redundant refcounting for ``MATCH_CLASS`` in the JIT." msgstr "" -#: ../NEWS:2974 +#: ../NEWS:3061 msgid "" ":gh:`69605`: Add :mod:`math.integer` to :term:`REPL` auto-completion of " "imports." msgstr "" -#: ../NEWS:2977 +#: ../NEWS:3064 msgid "" ":gh:`131798`: Optimize ``_ITER_CHECK_RANGE`` and ``_ITER_CHECK_LIST`` in the " "JIT" msgstr "" -#: ../NEWS:2980 +#: ../NEWS:3067 msgid "" ":gh:`143414`: Add tracking to the JIT optimizer to determine whether a " "reference is uniquely owned or shared" msgstr "" -#: ../NEWS:2983 +#: ../NEWS:3070 msgid "" ":gh:`143636`: Fix a crash when calling :class:`SimpleNamespace.__replace__() " "` on non-namespace instances. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:2987 +#: ../NEWS:3074 msgid "" ":gh:`126910`: Set frame pointers in ``x86_64-unknown-linux-gnu`` JIT code, " "allowing most native profilers and debuggers to unwind through them." msgstr "" -#: ../NEWS:2990 +#: ../NEWS:3077 msgid "" ":gh:`140594`: Fix an out of bounds read when a single NUL character is read " "from the standard input. Patch by Shamil Abdulaev." msgstr "" -#: ../NEWS:2993 +#: ../NEWS:3080 msgid "" ":gh:`140870`: Add support for module attributes in the :term:`REPL` auto-" "completion of imports." msgstr "" -#: ../NEWS:2999 +#: ../NEWS:3086 msgid "" ":gh:`144503`: Fix a regression introduced in 3.14.3 and 3.13.12 where the :" "mod:`multiprocessing` ``forkserver`` start method would fail with :exc:" @@ -5151,14 +5279,14 @@ msgid "" "the operating system's per-argument length limit." msgstr "" -#: ../NEWS:3006 +#: ../NEWS:3093 msgid "" ":gh:`148153`: :func:`base64.b32encode` now always raises :exc:`ValueError` " "instead of :exc:`AssertionError` for the value of *map01* with invalid " "length." msgstr "" -#: ../NEWS:3010 +#: ../NEWS:3097 msgid "" ":gh:`73613`: Add the *padded* parameter in functions related to Base32 and " "Base64 codecs in the :mod:`binascii` and :mod:`base64` modules. In the " @@ -5168,13 +5296,13 @@ msgid "" "urlsafe_b64decode` by default." msgstr "" -#: ../NEWS:3017 +#: ../NEWS:3104 msgid "" ":gh:`146613`: :mod:`itertools`: Fix a crash in :func:`itertools.groupby` " "when the grouper iterator is concurrently mutated." msgstr "" -#: ../NEWS:3020 +#: ../NEWS:3107 msgid "" ":gh:`147944`: Accepted range for the *bytes_per_sep* argument of :meth:" "`bytes.hex`, :meth:`bytearray.hex`, :meth:`memoryview.hex`, and :func:" @@ -5182,13 +5310,13 @@ msgid "" "maxsize`` is now valid." msgstr "" -#: ../NEWS:3025 +#: ../NEWS:3112 msgid "" ":gh:`146080`: :mod:`ssl`: fix a crash when an SNI callback tries to use an " "SSL object that has already been garbage-collected. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:3029 +#: ../NEWS:3116 msgid "" ":gh:`146556`: Fix :func:`annotationlib.get_annotations` hanging indefinitely " "when called with ``eval_str=True`` on a callable that has a circular " @@ -5197,47 +5325,47 @@ msgid "" "found so far, mirroring the approach of :func:`inspect.unwrap`." msgstr "" -#: ../NEWS:3035 +#: ../NEWS:3122 msgid "" ":gh:`146090`: :mod:`sqlite3`: fix a crash when :meth:`sqlite3.Connection." "create_collation` fails with `SQLITE_BUSY `__. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:3039 +#: ../NEWS:3126 msgid "" ":gh:`146090`: :mod:`sqlite3`: properly raise :exc:`MemoryError` instead of :" "exc:`SystemError` when a context callback fails to be allocated. Patch by " "Bénédikt Tran." msgstr "" -#: ../NEWS:3043 +#: ../NEWS:3130 msgid "" ":gh:`146507`: Make :meth:`asyncio.SelectorEventLoop` stream transport's :" "meth:`~asyncio.WriteTransport.get_write_buffer_size` O(1) by maintaining a " "running byte counter instead of iterating the buffer on every call." msgstr "" -#: ../NEWS:3047 +#: ../NEWS:3134 msgid "" ":gh:`145056`: Fix merging of :class:`collections.OrderedDict` and :class:" "`frozendict`." msgstr "" -#: ../NEWS:3050 +#: ../NEWS:3137 msgid "" ":gh:`145056`: Add support for merging :class:`collections.UserDict` and :" "class:`frozendict`." msgstr "" -#: ../NEWS:3053 +#: ../NEWS:3140 msgid "" ":gh:`145633`: Fix ``struct.pack('f', float)``: use :c:func:`PyFloat_Pack4` " "to raise :exc:`OverflowError`. Patch by Sergey B Kirpichev and Victor " "Stinner." msgstr "" -#: ../NEWS:3057 +#: ../NEWS:3144 msgid "" ":gh:`146440`: :mod:`json`: Add the *array_hook* parameter to :func:`~json." "load` and :func:`~json.loads` functions: allow a callback for JSON literal " @@ -5247,7 +5375,7 @@ msgid "" "structure representing the JSON data." msgstr "" -#: ../NEWS:3064 +#: ../NEWS:3151 msgid "" ":gh:`146431`: Add the *wrapcol* parameter to :mod:`base64` functions :func:" "`~base64.b16encode`, :func:`~base64.b32encode`, :func:`~base64." @@ -5260,38 +5388,38 @@ msgid "" "unhexlify`, :func:`~binascii.a2b_base32` and :func:`~binascii.a2b_base85`." msgstr "" -#: ../NEWS:3076 +#: ../NEWS:3163 msgid "" ":gh:`146310`: The :mod:`ensurepip` module no longer looks for ``pip-*.whl`` " "wheel packages in the current directory." msgstr "" -#: ../NEWS:3079 +#: ../NEWS:3166 msgid "" ":gh:`141510`: Support :class:`frozendict` in :mod:`plistlib`, for " "serialization only. Patch by Hugo van Kemenade." msgstr "" -#: ../NEWS:3082 +#: ../NEWS:3169 msgid "" ":gh:`146238`: Support half-floats (type code ``'e'`` of the :mod:`struct` " "module) in the :mod:`array` module. Patch by Sergey B Kirpichev." msgstr "" -#: ../NEWS:3085 +#: ../NEWS:3172 msgid "" ":gh:`140947`: Fix incorrect contextvars handling in server tasks created by :" "mod:`asyncio`. Patch by Kumar Aditya." msgstr "" -#: ../NEWS:3088 +#: ../NEWS:3175 msgid "" ":gh:`146151`: Support the :c:expr:`float complex` and :c:expr:`double " "complex` C types in the :mod:`array` module: formatting characters ``'F'`` " "and ``'D'`` respectively. Patch by Sergey B Kirpichev." msgstr "" -#: ../NEWS:3092 +#: ../NEWS:3179 msgid "" ":gh:`143387`: In importlib.metadata, when a distribution file is corrupt and " "there is no metadata file, calls to ``Distribution.metadata()`` (including " @@ -5302,63 +5430,63 @@ msgid "" "returned and would be indistinguishable from the presence of an empty file." msgstr "" -#: ../NEWS:3101 +#: ../NEWS:3188 msgid "" ":gh:`146228`: Cached FastPath objects in importlib.metadata are now cleared " "on fork, avoiding broken references to zip files during fork." msgstr "" -#: ../NEWS:3104 +#: ../NEWS:3191 msgid "" ":gh:`146171`: Nested :exc:`AttributeError` suggestions now include property-" "backed attributes on nested objects without executing the property getter." msgstr "" -#: ../NEWS:3108 +#: ../NEWS:3195 msgid "" ":gh:`145410`: On Windows, :func:`sysconfig.get_platform` now gets the " "platform from the ``_sysconfig`` module instead of parsing :data:`sys." "version` string. Patch by Victor Stinner." msgstr "" -#: ../NEWS:3112 +#: ../NEWS:3199 msgid "" ":gh:`146091`: Fix a bug in :func:`termios.tcsetwinsize` where passing a " "sequence that raises an exception in ``__getitem__`` would cause a :exc:" "`SystemError` instead of propagating the original exception." msgstr "" -#: ../NEWS:3116 +#: ../NEWS:3203 msgid "" ":gh:`146083`: Update bundled `libexpat `_ to " "version 2.7.5." msgstr "" -#: ../NEWS:3119 +#: ../NEWS:3206 msgid "" ":gh:`146076`: :mod:`zoneinfo`: fix crashes when deleting ``_weak_cache`` " "from a :class:`zoneinfo.ZoneInfo` subclass." msgstr "" -#: ../NEWS:3122 +#: ../NEWS:3209 msgid "" ":gh:`123471`: Make concurrent iteration over :class:`itertools.zip_longest` " "safe under free-threading." msgstr "" -#: ../NEWS:3125 +#: ../NEWS:3212 msgid "" ":gh:`146075`: Errors when calling :func:`functools.partial` with a malformed " "keyword will no longer crash the interpreter." msgstr "" -#: ../NEWS:3128 +#: ../NEWS:3215 msgid "" ":gh:`146054`: Limit the size of :func:`encodings.search_function` cache. " "Found by OSS Fuzz in :oss-fuzz:`493449985`." msgstr "" -#: ../NEWS:3131 +#: ../NEWS:3218 msgid "" ":gh:`146004`: All :option:`-X` options from the Python command line are now " "propagated to child processes spawned by :mod:`multiprocessing`, not just a " @@ -5372,7 +5500,7 @@ msgid "" "``warn_default_encoding``." msgstr "" -#: ../NEWS:3142 +#: ../NEWS:3229 msgid "" ":gh:`145980`: Added the *alphabet* parameter in :func:`~binascii." "b2a_base64`, :func:`~binascii.a2b_base64`, :func:`~binascii.b2a_base85` and :" @@ -5380,26 +5508,26 @@ msgid "" "mod:`binascii` module. Removed :func:`!b2a_z85` and :func:`!a2b_z85`." msgstr "" -#: ../NEWS:3147 +#: ../NEWS:3234 msgid "" ":gh:`145968`: Fix translation in :func:`base64.b64decode` when altchars " "overlaps with the standard ones." msgstr "" -#: ../NEWS:3150 +#: ../NEWS:3237 msgid "" ":gh:`145966`: Non-:exc:`AttributeError` exceptions raised during dialect " "attribute lookup in :mod:`csv` are no longer silently suppressed." msgstr "" -#: ../NEWS:3153 +#: ../NEWS:3240 msgid "" ":gh:`145883`: :mod:`zoneinfo`: Fix heap buffer overflow reads from malformed " "TZif data. Found by OSS Fuzz, issues :oss-fuzz:`492245058` and :oss-fuzz:" "`492230068`." msgstr "" -#: ../NEWS:3157 +#: ../NEWS:3244 msgid "" ":gh:`145850`: Changed some implementation details in :class:`struct.Struct`: " "calling it with non-ASCII string format will now raise a :exc:`ValueError` " @@ -5409,7 +5537,7 @@ msgid "" "`AttributeError` instead of :exc:`RuntimeError`." msgstr "" -#: ../NEWS:3164 +#: ../NEWS:3251 msgid "" ":gh:`123720`: asyncio: Fix :func:`asyncio.Server.serve_forever` shutdown " "regression. Since 3.12, cancelling ``serve_forever()`` could hang waiting " @@ -5419,7 +5547,7 @@ msgid "" "observe EOF." msgstr "" -#: ../NEWS:3171 +#: ../NEWS:3258 msgid "" ":gh:`138122`: The ``profiling.sampling`` module now supports differential " "flamegraph visualization via ``--diff-flamegraph`` to compare two profiling " @@ -5428,56 +5556,56 @@ msgid "" "between runs." msgstr "" -#: ../NEWS:3177 +#: ../NEWS:3264 msgid "" ":gh:`145754`: Request signature during mock autospec with ``FORWARDREF`` " "annotation format. This prevents runtime errors when an annotation uses a " "name that is not defined at runtime." msgstr "" -#: ../NEWS:3181 +#: ../NEWS:3268 msgid "" ":gh:`145750`: Avoid undefined behaviour from signed integer overflow when " "parsing format strings in the :mod:`struct` module. Found by OSS Fuzz in :" "oss-fuzz:`488466741`." msgstr "" -#: ../NEWS:3185 +#: ../NEWS:3272 msgid ":gh:`145719`: Add ``application/efi`` MIME type to :mod:`mimetypes`." msgstr "" -#: ../NEWS:3187 +#: ../NEWS:3274 msgid ":gh:`145717`: Add a few Microsoft-specific MIME types." msgstr "" -#: ../NEWS:3189 +#: ../NEWS:3276 msgid "" ":gh:`145703`: :mod:`asyncio`: Make sure that :meth:`loop.call_at ` and :meth:`loop.call_later ` trigger " "scheduled events on time when the clock resolution becomes too small." msgstr "" -#: ../NEWS:3194 +#: ../NEWS:3281 msgid "" ":gh:`145697`: Add ``application/sql`` and ``application/vnd.sqlite3`` into " "``mimetypes``." msgstr "" -#: ../NEWS:3197 +#: ../NEWS:3284 msgid "" ":gh:`145492`: Fix infinite recursion in :class:`collections.defaultdict` " "``__repr__`` when a ``defaultdict`` contains itself. Based on analysis by " "KowalskiThomas in :gh:`145492`." msgstr "" -#: ../NEWS:3201 +#: ../NEWS:3288 msgid "" ":gh:`145650`: Add :meth:`~object.__repr__` support to :class:`logging." "Formatter` and :class:`logging.Filter`, showing the format string and filter " "name respectively." msgstr "" -#: ../NEWS:3205 +#: ../NEWS:3292 msgid "" ":gh:`145587`: Resolved a performance regression in ``multiprocessing." "connection.wait`` on Windows that caused infinite busy loops when called " @@ -5485,25 +5613,25 @@ msgid "" "conserve CPU resources. Patch By Shrey Naithani" msgstr "" -#: ../NEWS:3210 +#: ../NEWS:3297 msgid "" ":gh:`145616`: Detect Android sysconfig ABI correctly on 32-bit ARM Android " "on 64-bit ARM kernel" msgstr "" -#: ../NEWS:3213 +#: ../NEWS:3300 msgid "" ":gh:`145546`: Fix ``unittest.util.sorted_list_difference()`` to deduplicate " "remaining elements when one input list is exhausted before the other." msgstr "" -#: ../NEWS:3216 +#: ../NEWS:3303 msgid "" ":gh:`145446`: Now :mod:`functools` is safer in free-threaded build when " "using keywords in :func:`functools.partial`" msgstr "" -#: ../NEWS:3219 +#: ../NEWS:3306 msgid "" ":gh:`145264`: Base64 decoder (see :func:`binascii.a2b_base64`, :func:`base64." "b64decode`, etc) no longer ignores excess data after the first padded quad " @@ -5512,7 +5640,7 @@ msgid "" "before the end of the encoded data." msgstr "" -#: ../NEWS:3225 +#: ../NEWS:3312 msgid "" ":gh:`145035`: Allows omitting the internal library ``_pyrepl`` with limited " "loss of functionality. This allows complete removal of the modern REPL, " @@ -5520,7 +5648,7 @@ msgid "" "distributions." msgstr "" -#: ../NEWS:3230 +#: ../NEWS:3317 msgid "" ":gh:`144270`: Made the *tag* parameter of :class:`xml.etree.ElementTree." "Element` and the *parent* and *tag* parameters of :func:`xml.etree." @@ -5528,7 +5656,7 @@ msgid "" "accelerator." msgstr "" -#: ../NEWS:3235 +#: ../NEWS:3322 msgid "" ":gh:`144984`: Fix crash in :meth:`xml.parsers.expat.xmlparser." "ExternalEntityParserCreate` when an allocation fails. The error paths could " @@ -5536,59 +5664,59 @@ msgid "" "reference count." msgstr "" -#: ../NEWS:3240 +#: ../NEWS:3327 msgid "" ":gh:`144975`: :meth:`wave.Wave_write.setframerate` now validates the frame " "rate after rounding to an integer, preventing values like ``0.5`` from being " "accepted and causing confusing errors later. Patch by Michiel Beijen." msgstr "" -#: ../NEWS:3245 +#: ../NEWS:3332 msgid "" ":gh:`140715`: Add ``%n`` and ``%t`` support to :meth:`~datetime.datetime." "strptime`." msgstr "" -#: ../NEWS:3248 +#: ../NEWS:3335 msgid "" ":gh:`144259`: Fix inconsistent display of long multiline pasted content in " "the REPL." msgstr "" -#: ../NEWS:3251 +#: ../NEWS:3338 msgid "" ":gh:`140814`: :func:`multiprocessing.freeze_support` no longer sets the " "default start method as a side effect, which previously caused a subsequent :" "func:`multiprocessing.set_start_method` call to raise :exc:`RuntimeError`." msgstr "" -#: ../NEWS:3256 +#: ../NEWS:3343 msgid "" ":gh:`123471`: Make concurrent iteration over :class:`itertools.accumulate` " "safe under free-threading." msgstr "" -#: ../NEWS:3259 +#: ../NEWS:3346 msgid "" ":gh:`143715`: Calling the ``Struct.__new__()`` without required argument now " "is deprecated. Calling :meth:`~object.__init__` method on initialized :class:" "`~struct.Struct` objects is deprecated." msgstr "" -#: ../NEWS:3263 +#: ../NEWS:3350 msgid "" ":gh:`142763`: Fix a race condition between :class:`zoneinfo.ZoneInfo` " "creation and :func:`zoneinfo.ZoneInfo.clear_cache` that could raise :exc:" "`KeyError`." msgstr "" -#: ../NEWS:3267 +#: ../NEWS:3354 msgid "" ":gh:`141707`: Don't change :class:`tarfile.TarInfo` type from ``AREGTYPE`` " "to ``DIRTYPE`` when parsing GNU long name or link headers." msgstr "" -#: ../NEWS:3270 +#: ../NEWS:3357 msgid "" ":gh:`138577`: :func:`getpass.getpass` with non-empty ``echo_char`` now " "handles keyboard shortcuts including Ctrl+A/E (cursor movement), Ctrl+K/U " @@ -5597,75 +5725,75 @@ msgid "" "non-canonical mode. Patch by Sanyam Khurana." msgstr "" -#: ../NEWS:3276 +#: ../NEWS:3363 msgid "" ":gh:`140049`: :func:`traceback.format_exception_only` now colorizes " "exception notes." msgstr "" -#: ../NEWS:3279 +#: ../NEWS:3366 msgid "" ":gh:`139933`: Improve :exc:`AttributeError` suggestions for classes with a " "custom :meth:`~object.__dir__` method returning a list of unsortable values. " "Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:3283 +#: ../NEWS:3370 msgid "" ":gh:`139633`: The :mod:`netrc` security check is now run once per parse " "rather than once per entry." msgstr "" -#: ../NEWS:3286 +#: ../NEWS:3373 msgid "" ":gh:`130472`: Add fancycompleter and enable it by default when using pyrepl. " "This gives colored tab completion." msgstr "" -#: ../NEWS:3289 +#: ../NEWS:3376 msgid "" ":gh:`112632`: Add an *expand* keyword argument for :func:`pprint.pprint`, :" "func:`pprint.pformat`, :func:`pprint.pp` by passing on all *kwargs* and :" "class:`pprint.PrettyPrinter`. Contributed by Stefan Todoran and Semyon Moroz." msgstr "" -#: ../NEWS:3294 +#: ../NEWS:3381 msgid "" ":gh:`66419`: Optional argument with :ref:`nargs` equals to ``argparse." "REMAINDER`` now consumes all remaining arguments including ``'--'``." msgstr "" -#: ../NEWS:3298 +#: ../NEWS:3385 msgid "" ":gh:`60729`: Add support for floating point audio wave files in :mod:`wave`." msgstr "" -#: ../NEWS:3300 +#: ../NEWS:3387 msgid "" ":issue:`36461`: Make the target time of :meth:`timeit.Timer.autorange` " "configurable and add ``--target-time`` option to the command-line interface " "of :mod:`timeit`." msgstr "" -#: ../NEWS:3307 +#: ../NEWS:3394 msgid "" ":gh:`126676`: Expand :mod:`argparse` documentation for ``type=bool`` with a " "demonstration of the surprising behavior and pointers to common alternatives." msgstr "" -#: ../NEWS:3311 +#: ../NEWS:3398 msgid "" ":gh:`145649`: Fix text wrapping and formatting of ``-X`` option descriptions " "in the :manpage:`python(1)` man page by using proper roff markup." msgstr "" -#: ../NEWS:3317 +#: ../NEWS:3404 msgid "" ":gh:`144418`: The Android testbed's emulator RAM has been increased from 2 " "GB to 4 GB." msgstr "" -#: ../NEWS:3320 +#: ../NEWS:3407 msgid "" ":gh:`146202`: Fix a race condition in regrtest: make sure that the temporary " "directory is created in the worker process. Previously, temp_cwd() could " @@ -5673,48 +5801,48 @@ msgid "" "Stinner." msgstr "" -#: ../NEWS:3328 +#: ../NEWS:3415 msgid "" ":gh:`146541`: The Android testbed can now be built for 32-bit ARM and x86 " "targets." msgstr "" -#: ../NEWS:3331 +#: ../NEWS:3418 msgid "" ":gh:`146498`: The iOS XCframework build script now ensures libpython isn't " "included in installed app content, and is more robust in identifying " "standard library binary content that requires processing." msgstr "" -#: ../NEWS:3335 +#: ../NEWS:3422 msgid "" ":gh:`146450`: The Android build script was modified to improve parity with " "other platform build scripts." msgstr "" -#: ../NEWS:3338 +#: ../NEWS:3425 msgid "" ":gh:`146446`: The clean target for the Apple/iOS XCframework build script is " "now more selective when targeting a single architecture." msgstr "" -#: ../NEWS:3341 +#: ../NEWS:3428 msgid "" ":gh:`146444`: The Apple/iOS build script has been moved to the Platforms " "directory." msgstr "" -#: ../NEWS:3344 +#: ../NEWS:3431 msgid "" ":gh:`146210`: Fix building the jit stencils on Windows when the interpreter " "is built with a different clang version. Patch by Chris Eibl." msgstr "" -#: ../NEWS:3347 +#: ../NEWS:3434 msgid ":gh:`145844`: Update to WASI SDK 32." msgstr "" -#: ../NEWS:3349 +#: ../NEWS:3436 msgid "" ":gh:`145801`: When Python build is optimized with GCC using PGO, use ``-" "fprofile-update=atomic`` option to use atomic operations when updating " @@ -5722,58 +5850,58 @@ msgid "" "corruption which can cause random GCC crashes. Patch by Victor Stinner." msgstr "" -#: ../NEWS:3355 +#: ../NEWS:3442 msgid ":gh:`138850`: Add :option:`--disable-epoll` to ``configure``" msgstr "" -#: ../NEWS:3357 +#: ../NEWS:3444 msgid "" ":gh:`145633`: Remove support for ancient ARM platforms (ARMv4L and ARMv5L " "OABI boards), using mixed-endian representation for doubles. Patch by " "Sergey B Kirpichev." msgstr "" -#: ../NEWS:3361 +#: ../NEWS:3448 msgid ":gh:`85277`: Fix building without ``stropts.h`` or empty ``stropts.h``" msgstr "" -#: ../NEWS:3366 +#: ../NEWS:3453 msgid "" ":gh:`140131`: Fix REPL cursor position on Windows when module completion " "suggestion line hits console width." msgstr "" -#: ../NEWS:3372 +#: ../NEWS:3459 msgid "" ":gh:`137586`: Invoke :program:`osascript` with absolute path in :mod:" "`webbrowser` and :mod:`!turtledemo`." msgstr "" -#: ../NEWS:3378 +#: ../NEWS:3465 msgid "" ":gh:`135953`: Properly identify the main thread in the Gecko profiler " "collector by using a status flag from the interpreter state instead of " "relying on :func:`threading.main_thread` in the collector process." msgstr "" -#: ../NEWS:3382 +#: ../NEWS:3469 msgid "" ":gh:`145976`: Remove :file:`Misc/indent.pro`, a configuration file for GNU :" "manpage:`indent(1)`." msgstr "" -#: ../NEWS:3385 +#: ../NEWS:3472 msgid ":gh:`145976`: Remove :file:`Misc/vgrindefs` and :file:`Misc/Porting`." msgstr "" -#: ../NEWS:3390 +#: ../NEWS:3477 msgid "" ":gh:`146636`: The :c:data:`Py_mod_abi` slot is now mandatory for modules " "created from a slots array (using :c:func:`PyModule_FromSlotsAndSpec` or " "the :c:func:`PyModExport_* ` export hook)." msgstr "" -#: ../NEWS:3394 +#: ../NEWS:3481 msgid "" ":gh:`146175`: The following macros are :term:`soft deprecated`: :c:macro:" "`Py_ALIGNED`, :c:macro:`PY_FORMAT_SIZE_T`, :c:macro:`Py_LL`, :c:macro:" @@ -5783,103 +5911,103 @@ msgid "" "`PY_SIZE_MAX`, :c:macro:`Py_UNICODE_SIZE`, :c:macro:`Py_VA_COPY`." msgstr "" -#: ../NEWS:3401 +#: ../NEWS:3488 msgid "" "The macro :c:macro:`Py_UNICODE_WIDE`, which was scheduled for removal, is :" "term:`soft deprecated` instead." msgstr "" -#: ../NEWS:3404 +#: ../NEWS:3491 msgid "" ":gh:`146143`: :c:func:`PyUnicodeWriter_WriteUCS4` now accepts a pointer to a " "constant buffer of ``Py_UCS4``." msgstr "" -#: ../NEWS:3407 +#: ../NEWS:3494 msgid "" ":gh:`146056`: :c:func:`PyUnicodeWriter_WriteRepr` now supports ``NULL`` " "argument." msgstr "" -#: ../NEWS:3410 +#: ../NEWS:3497 msgid "" ":gh:`145010`: Use GCC dialect alternatives for inline assembly in ``object." "h`` so that the Python headers compile correctly with ``-masm=intel``." msgstr "" -#: ../NEWS:3416 +#: ../NEWS:3503 msgid "Python 3.15.0 alpha 7" msgstr "" -#: ../NEWS:3418 +#: ../NEWS:3505 msgid "*Release date: 2026-03-10*" msgstr "" -#: ../NEWS:3423 +#: ../NEWS:3510 msgid "" ":gh:`145731`: Fix negative timestamp during DST on Windows. Patch by Hugo " "van Kemenade." msgstr "" -#: ../NEWS:3426 +#: ../NEWS:3513 msgid "" ":gh:`145307`: Defers loading of the ``psapi.dll`` module until it is used " "by :func:`ctypes.util.dllist`." msgstr "" -#: ../NEWS:3429 +#: ../NEWS:3516 msgid ":gh:`144551`: Updated bundled version of OpenSSL to 3.5.5." msgstr "" -#: ../NEWS:3434 +#: ../NEWS:3521 msgid "" ":gh:`144741`: Fix ``test_frame_pointer_unwind`` when Python is built with :" "option:`--enable-shared`. Classify also libpython frames as ``\"python\"``. " "Patch by Victor Stinner." msgstr "" -#: ../NEWS:3438 +#: ../NEWS:3525 msgid "" ":gh:`144739`: When Python was compiled with system expat older then 2.7.2 " "but tests run with newer expat, still skip :class:`!test.test_pyexpat." "MemoryProtectionTest`." msgstr "" -#: ../NEWS:3445 +#: ../NEWS:3532 msgid "" ":gh:`145506`: Fixes :cve:`2026-2297` by ensuring that " "``SourcelessFileLoader`` uses :func:`io.open_code` when opening ``.pyc`` " "files." msgstr "" -#: ../NEWS:3449 +#: ../NEWS:3536 msgid "" ":gh:`144370`: Disallow usage of control characters in status in :mod:" "`wsgiref.handlers` to prevent HTTP header injections. Patch by Benedikt " "Johannes." msgstr "" -#: ../NEWS:3456 +#: ../NEWS:3543 msgid "" ":gh:`145623`: Fix crash in :mod:`struct` when calling :func:`repr` or " "``__sizeof__()`` on an uninitialized :class:`struct.Struct` object created " "via ``Struct.__new__()`` without calling ``__init__()``." msgstr "" -#: ../NEWS:3460 +#: ../NEWS:3547 msgid "" ":gh:`145551`: Fix InvalidStateError when cancelling process created by :func:" "`asyncio.create_subprocess_exec` or :func:`asyncio.create_subprocess_shell`. " "Patch by Daan De Meyer." msgstr "" -#: ../NEWS:3464 +#: ../NEWS:3551 msgid "" ":gh:`141510`: :mod:`marshal` now supports :class:`frozendict` objects. The " "marshal format version was increased to 6. Patch by Victor Stinner." msgstr "" -#: ../NEWS:3467 +#: ../NEWS:3554 msgid "" ":gh:`145417`: :mod:`venv`: Prevent incorrect preservation of SELinux context " "when copying the ``Activate.ps1`` script. The script inherited the SELinux " @@ -5887,7 +6015,7 @@ msgid "" "destination project directory." msgstr "" -#: ../NEWS:3472 +#: ../NEWS:3559 msgid "" ":gh:`145335`: ``os.listdir(-1)`` and ``os.scandir(-1)`` now fail with " "``OSError(errno.EBADF)`` rather than listing the current directory. ``os." @@ -5895,158 +6023,158 @@ msgid "" "extended attributes of the current directory. Patch by Victor Stinner." msgstr "" -#: ../NEWS:3478 +#: ../NEWS:3565 msgid "" ":gh:`145376`: Fix double free and null pointer dereference in unusual error " "scenarios in :mod:`hashlib` and :mod:`hmac` modules." msgstr "" -#: ../NEWS:3481 +#: ../NEWS:3568 msgid "" ":gh:`145301`: :mod:`hmac`: fix a crash when the initialization of the " "underlying C extension module fails." msgstr "" -#: ../NEWS:3484 +#: ../NEWS:3571 msgid "" ":gh:`145301`: :mod:`hashlib`: fix a crash when the initialization of the " "underlying C extension module fails." msgstr "" -#: ../NEWS:3487 +#: ../NEWS:3574 msgid "" ":gh:`76007`: The ``version`` attribute of the :mod:`tarfile` module is " "deprecated and slated for removal in Python 3.20." msgstr "" -#: ../NEWS:3490 +#: ../NEWS:3577 msgid "" ":gh:`145158`: Avoid undefined behaviour from signed integer overflow when " "parsing format strings in the :mod:`struct` module." msgstr "" -#: ../NEWS:3493 +#: ../NEWS:3580 msgid "" ":gh:`123853`: Removed Windows 95 compatibility for :func:`locale." "getdefaultlocale`." msgstr "" -#: ../NEWS:3496 +#: ../NEWS:3583 msgid "" ":gh:`66802`: Add :func:`unicodedata.block` function to return the `Unicode " "block `_ of a character." msgstr "" -#: ../NEWS:3501 +#: ../NEWS:3588 msgid "" ":gh:`145033`: Add :data:`typing.TypeForm`, implementing :pep:`747`. Patch by " "Jelle Zijlstra." msgstr "" -#: ../NEWS:3504 +#: ../NEWS:3591 msgid "" ":gh:`141510`: :func:`dataclasses.field`: if *metadata* is ``None``, use an " "empty :class:`frozendict`, instead of a :func:`~types.MappingProxyType` of " "an empty :class:`dict`. Patch by Victor Stinner." msgstr "" -#: ../NEWS:3508 +#: ../NEWS:3595 msgid "" ":gh:`145006`: Add :exc:`ModuleNotFoundError` hints when a module for a " "different ABI exists." msgstr "" -#: ../NEWS:3511 +#: ../NEWS:3598 msgid "" ":gh:`141510`: ``ParameterizedMIMEHeader.params`` of :mod:`email." "headerregistry` is now a :class:`frozendict` instead of a :class:`types." "MappingProxyType`. Patch by Victor Stinner." msgstr "" -#: ../NEWS:3515 +#: ../NEWS:3602 msgid "" ":gh:`134872`: Add valid import name suggestions on :exc:" "`ModuleNotFoundError`." msgstr "" -#: ../NEWS:3518 +#: ../NEWS:3605 msgid "" ":gh:`88091`: Fix :func:`unicodedata.decomposition` for Hangul characters." msgstr "" -#: ../NEWS:3520 +#: ../NEWS:3607 msgid "" ":gh:`144986`: Fix a memory leak in :func:`atexit.register`. Patch by Shamil " "Abdulaev." msgstr "" -#: ../NEWS:3523 +#: ../NEWS:3610 msgid "" ":gh:`144777`: Fix data races in :class:`io.IncrementalNewlineDecoder` in " "the :term:`free-threaded build`." msgstr "" -#: ../NEWS:3526 +#: ../NEWS:3613 msgid "" ":gh:`144809`: Make :class:`collections.deque` copy atomic in the :term:`free-" "threaded build`." msgstr "" -#: ../NEWS:3529 +#: ../NEWS:3616 msgid "" ":gh:`141510`: The :mod:`copy` module now supports the :class:`frozendict` " "type. Patch by Pieter Eendebak based on work by Victor Stinner." msgstr "" -#: ../NEWS:3532 +#: ../NEWS:3619 msgid "" ":gh:`141510`: The :mod:`json` module now supports the :class:`frozendict` " "type. Patch by Victor Stinner." msgstr "" -#: ../NEWS:3535 +#: ../NEWS:3622 msgid "" ":gh:`144835`: Added missing explanations for some parameters in :func:`glob." "glob` and :func:`glob.iglob`." msgstr "" -#: ../NEWS:3538 +#: ../NEWS:3625 msgid "" ":gh:`144833`: Fixed a use-after-free in :mod:`ssl` when ``SSL_new()`` " "returns NULL in ``newPySSLSocket()``. The error was reported via a dangling " "pointer after the object had already been freed." msgstr "" -#: ../NEWS:3542 +#: ../NEWS:3629 msgid "" ":gh:`140715`: Add ``'%D'`` support to :meth:`~datetime.datetime.strptime`." msgstr "" -#: ../NEWS:3544 +#: ../NEWS:3631 msgid "" ":gh:`144782`: Fix :class:`argparse.ArgumentParser` to be :mod:`pickleable " "`." msgstr "" -#: ../NEWS:3547 +#: ../NEWS:3634 msgid "" ":gh:`144763`: Fix a race condition in :mod:`tracemalloc`: it no longer " "detaches the attached thread state to acquire its internal lock. Patch by " "Victor Stinner." msgstr "" -#: ../NEWS:3551 +#: ../NEWS:3638 msgid "" ":gh:`142224`: :func:`unicodedata.bidirectional` now return the correct " "default bidi class for unassigned code points." msgstr "" -#: ../NEWS:3554 +#: ../NEWS:3641 msgid ":gh:`117865`: Reduce the import time of :mod:`inspect` module by ~20%." msgstr "" -#: ../NEWS:3556 +#: ../NEWS:3643 msgid "" ":gh:`144156`: Fix the folding of headers by the :mod:`email` library when :" "rfc:`2047` encoded words are used. Now whitespace is correctly preserved " @@ -6055,35 +6183,35 @@ msgid "" "failures to preserve whitespace." msgstr "" -#: ../NEWS:3562 +#: ../NEWS:3649 msgid "" ":gh:`66305`: Fixed a hang on Windows in the :mod:`tempfile` module when " "trying to create a temporary file or subdirectory in a non-writable " "directory." msgstr "" -#: ../NEWS:3566 +#: ../NEWS:3653 msgid "" ":gh:`144615`: Methods directly decorated with :deco:`functools." "singledispatchmethod` now dispatch on the second argument when called after " "being accessed as class attributes. Patch by Bartosz Sławecki." msgstr "" -#: ../NEWS:3571 +#: ../NEWS:3658 msgid "" ":gh:`144321`: The functional syntax for creating :class:`typing.NamedTuple` " "classes now supports passing any :term:`iterable` of fields and types. " "Previously, only sequences were supported." msgstr "" -#: ../NEWS:3575 +#: ../NEWS:3662 msgid "" ":gh:`144475`: Calling :func:`repr` on :func:`functools.partial` is now safer " "when the partial object's internal attributes are replaced while the string " "representation is being generated." msgstr "" -#: ../NEWS:3579 +#: ../NEWS:3666 msgid "" ":gh:`144285`: Attribute suggestions in :exc:`AttributeError` tracebacks are " "now formatted differently to make them easier to understand, for example: " @@ -6091,70 +6219,70 @@ msgid "" "Sławecki." msgstr "" -#: ../NEWS:3584 +#: ../NEWS:3671 msgid "" ":gh:`144316`: Fix crash in ``_remote_debugging`` that caused " "``test_external_inspection`` to intermittently fail. Patch by Taegyun Kim." msgstr "" -#: ../NEWS:3587 +#: ../NEWS:3674 msgid "" ":gh:`143637`: Fixed a crash in socket.sendmsg() that could occur if " "ancillary data is mutated re-entrantly during argument parsing." msgstr "" -#: ../NEWS:3590 +#: ../NEWS:3677 msgid "" ":gh:`140652`: Fix a crash in :func:`!_interpchannels.list_all` after closing " "a channel." msgstr "" -#: ../NEWS:3593 +#: ../NEWS:3680 msgid "" ":gh:`143698`: Allow *scheduler* and *setpgroup* arguments to be explicitly :" "const:`None` when calling :func:`os.posix_spawn` or :func:`os.posix_spawnp`. " "Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:3597 +#: ../NEWS:3684 msgid "" ":gh:`143698`: Raise :exc:`TypeError` instead of :exc:`SystemError` when the " "*scheduler* in :func:`os.posix_spawn` or :func:`os.posix_spawnp` is not a " "tuple. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:3601 +#: ../NEWS:3688 msgid "" ":gh:`142516`: :mod:`ssl`: fix reference leaks in :class:`ssl.SSLContext` " "objects. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:3604 +#: ../NEWS:3691 msgid "" ":gh:`85809`: Added :term:`path-like object` support for :func:`shutil." "make_archive`." msgstr "" -#: ../NEWS:3607 +#: ../NEWS:3694 msgid "" ":gh:`143304`: Fix :class:`ctypes.CDLL` to honor the ``handle`` parameter on " "POSIX systems." msgstr "" -#: ../NEWS:3610 +#: ../NEWS:3697 msgid "" ":gh:`142781`: :mod:`zoneinfo`: fix a crash when instantiating :class:" "`~zoneinfo.ZoneInfo` objects for which the internal class-level cache is " "inconsistent." msgstr "" -#: ../NEWS:3614 +#: ../NEWS:3701 msgid "" ":gh:`142787`: Fix assertion failure in :mod:`sqlite3` blob subscript when " "slicing with indices that result in an empty slice." msgstr "" -#: ../NEWS:3617 +#: ../NEWS:3704 msgid "" ":gh:`142352`: Fix :meth:`asyncio.StreamWriter.start_tls` to transfer " "buffered data from :class:`~asyncio.StreamReader` to the SSL layer, " @@ -6162,7 +6290,7 @@ msgid "" "when implementing PROXY protocol support)." msgstr "" -#: ../NEWS:3622 +#: ../NEWS:3709 msgid "" ":gh:`139899`: Introduced :meth:`importlib.abc.MetaPathFinder.discover` and :" "meth:`importlib.abc.PathEntryFinder.discover` to allow module and submodule " @@ -6170,30 +6298,30 @@ msgid "" "imports." msgstr "" -#: ../NEWS:3627 +#: ../NEWS:3714 msgid "" ":gh:`137335`: Get rid of any possibility of a name conflict for named pipes " "in :mod:`multiprocessing` and :mod:`asyncio` on Windows, no matter how small." msgstr "" -#: ../NEWS:3631 +#: ../NEWS:3718 msgid "" ":gh:`135883`: Fix :mod:`sqlite3`'s :ref:`interactive shell ` " "keeping part of previous commands when scrolling history." msgstr "" -#: ../NEWS:3634 +#: ../NEWS:3721 msgid "" ":gh:`124748`: Improve :exc:`TypeError` error message when :meth:`!weakref." "WeakKeyDictionary.update` is used with keyword-only parameters." msgstr "" -#: ../NEWS:3638 +#: ../NEWS:3725 msgid "" ":gh:`80667`: Add support for Tangut Ideographs names in :mod:`unicodedata`." msgstr "" -#: ../NEWS:3640 +#: ../NEWS:3727 msgid "" ":issue:`42353`: The :mod:`re` module gains a new :func:`re.prefixmatch` " "function as an explicit spelling of what has to date always been known as :" @@ -6201,7 +6329,7 @@ msgid "" "prefixmatch` method." msgstr "" -#: ../NEWS:3645 +#: ../NEWS:3732 msgid "" "Why? Explicit is better than implicit. Other widely used languages all use " "the term \"match\" to mean what Python uses the term \"search\" for. The " @@ -6210,123 +6338,123 @@ msgid "" "industry." msgstr "" -#: ../NEWS:3651 +#: ../NEWS:3738 msgid "We do not plan to deprecate and remove the older ``match`` name." msgstr "" -#: ../NEWS:3653 +#: ../NEWS:3740 msgid "" ":issue:`40243`: Fix :meth:`!unicodedata.ucd_3_2_0.numeric` for non-decimal " "values." msgstr "" -#: ../NEWS:3656 +#: ../NEWS:3743 msgid "" ":issue:`40212`: Re-enable :func:`os.posix_fallocate` and :func:`os." "posix_fadvise` on AIX." msgstr "" -#: ../NEWS:3659 +#: ../NEWS:3746 msgid "" ":issue:`3405`: Add support for user data of Tk virtual events and detail for " "``Enter``, ``Leave``, ``FocusIn``, ``FocusOut``, and ``ConfigureRequest`` " "events to :mod:`tkinter`." msgstr "" -#: ../NEWS:3663 +#: ../NEWS:3750 msgid "" ":issue:`32234`: :class:`mailbox.Mailbox` instances can now be used as a " "context manager. The Mailbox is locked on context entry and unlocked and " "closed at context exit." msgstr "" -#: ../NEWS:3670 +#: ../NEWS:3757 msgid "" ":gh:`145450`: Document missing public :class:`wave.Wave_write` getter " "methods." msgstr "" -#: ../NEWS:3673 +#: ../NEWS:3760 msgid "" ":gh:`110937`: Document rest of full public :class:`importlib.metadata." "Distribution` API. Also add the (already documented) :class:`~importlib." "metadata.PackagePath` to ``__all__``." msgstr "" -#: ../NEWS:3677 +#: ../NEWS:3764 msgid "" ":gh:`136246`: A new \"Improve this page\" link is available in the left-hand " "sidebar of the docs, offering links to create GitHub issues, discussion " "forum posts, or pull requests." msgstr "" -#: ../NEWS:3684 +#: ../NEWS:3771 msgid "" ":gh:`145701`: Fix :exc:`SystemError` when ``__classdict__`` or " "``__conditional_annotations__`` is in a class-scope inlined comprehension. " "Found by OSS Fuzz in :oss-fuzz:`491105000`." msgstr "" -#: ../NEWS:3688 +#: ../NEWS:3775 msgid "" ":gh:`145615`: Fixed a memory leak in the :term:`free-threaded build` where " "mimalloc pages could become permanently unreclaimable until the owning " "thread exited." msgstr "" -#: ../NEWS:3692 +#: ../NEWS:3779 msgid "" ":gh:`116738`: Make :meth:`!mmap.mmap.set_name` thread-safe on the :term:" "`free threaded ` build." msgstr "" -#: ../NEWS:3695 +#: ../NEWS:3782 msgid "" ":gh:`145566`: In the free threading build, skip the stop-the-world pause " "when reassigning ``__class__`` on a newly created object." msgstr "" -#: ../NEWS:3698 +#: ../NEWS:3785 msgid "" ":gh:`143055`: Fix crash in AST unparser when unparsing dict comprehension " "unpacking. Found by OSS Fuzz in :oss-fuzz:`489790200`." msgstr "" -#: ../NEWS:3701 +#: ../NEWS:3788 msgid "" ":gh:`145335`: Fix a crash in :func:`os.pathconf` when called with ``-1`` as " "the path argument." msgstr "" -#: ../NEWS:3704 +#: ../NEWS:3791 msgid ":gh:`145376`: Fix reference leaks in various unusual error scenarios." msgstr "" -#: ../NEWS:3706 +#: ../NEWS:3793 msgid "" ":gh:`145234`: Fixed a ``SystemError`` in the parser when an encoding cookie " "(for example, UTF-7) decodes to carriage returns (``\\r``). Newlines are now " "normalized after decoding in the string tokenizer." msgstr "" -#: ../NEWS:3710 +#: ../NEWS:3797 msgid "Patch by Pablo Galindo." msgstr "" -#: ../NEWS:3712 +#: ../NEWS:3799 msgid "" ":gh:`145275`: Added the :option:`-X pathconfig_warnings<-X>` and :envvar:" "`PYTHON_PATHCONFIG_WARNINGS` options, allowing to disable warnings from :ref:" "`sys-path-init`." msgstr "" -#: ../NEWS:3716 +#: ../NEWS:3803 msgid "" ":gh:`145273`: A warning is now shown during :ref:`sys-path-init` if it can't " "find a valid standard library." msgstr "" -#: ../NEWS:3719 +#: ../NEWS:3806 msgid "" ":gh:`145241`: Specialized the parser error for when ``with`` items are " "followed by a trailing comma (for example, ``with item,:``), raising a " @@ -6334,36 +6462,36 @@ msgid "" "Sławecki." msgstr "" -#: ../NEWS:3724 +#: ../NEWS:3811 msgid "" ":gh:`130555`: Fix use-after-free in :meth:`dict.clear` when the dictionary " "values are embedded in an object and a destructor causes re-entrant mutation " "of the dictionary." msgstr "" -#: ../NEWS:3728 +#: ../NEWS:3815 msgid "" ":gh:`145197`: Fix JIT trace crash when recording function from cleared " "generator frame." msgstr "" -#: ../NEWS:3731 +#: ../NEWS:3818 msgid "" ":gh:`145187`: Fix compiler assertion fail when a type parameter bound " "contains an invalid expression in a conditional block." msgstr "" -#: ../NEWS:3734 +#: ../NEWS:3821 msgid "" ":gh:`145142`: Fix a crash in the free-threaded build when the dictionary " "argument to :meth:`str.maketrans` is concurrently modified." msgstr "" -#: ../NEWS:3737 +#: ../NEWS:3824 msgid ":gh:`145118`: :meth:`str.maketrans` now accepts :class:`frozendict`." msgstr "" -#: ../NEWS:3739 +#: ../NEWS:3826 msgid "" ":gh:`144015`: Speed up :meth:`bytes.hex`, :meth:`bytearray.hex`, :func:" "`binascii.hexlify`, and :mod:`hashlib` ``.hexdigest()`` operations with SIMD " @@ -6373,70 +6501,70 @@ msgid "" "for larger data." msgstr "" -#: ../NEWS:3746 +#: ../NEWS:3833 msgid "" ":gh:`145118`: :func:`type` now accepts :class:`frozendict` as an argument." msgstr "" -#: ../NEWS:3748 +#: ../NEWS:3835 msgid "" ":gh:`145064`: Fix JIT optimizer assertion failure during " "``CALL_ALLOC_AND_ENTER_INIT`` side exit." msgstr "" -#: ../NEWS:3751 +#: ../NEWS:3838 msgid "" ":gh:`145055`: :func:`exec` and :func:`eval` now accept :class:`frozendict` " "for *globals*. Patch by Victor Stinner." msgstr "" -#: ../NEWS:3754 +#: ../NEWS:3841 msgid "" ":gh:`145058`: Fix a crash when :func:`!__lazy_import__` is passed a non-" "string argument, by raising an :exc:`TypeError` instead." msgstr "" -#: ../NEWS:3757 +#: ../NEWS:3844 msgid "" ":gh:`144995`: Optimize :class:`memoryview` comparison: a :class:`memoryview` " "is equal to itself, there is no need to compare values. Patch by Victor " "Stinner." msgstr "" -#: ../NEWS:3761 +#: ../NEWS:3848 msgid "" ":gh:`141510`: Update specializer to support frozendict. Patch by Donghee Na." msgstr "" -#: ../NEWS:3763 +#: ../NEWS:3850 msgid "" ":gh:`141510`: Optimize :meth:`!frozendict.fromkeys` to avoid unnecessary " "thread-safety operations in frozendict cases. Patch by Donghee Na." msgstr "" -#: ../NEWS:3766 +#: ../NEWS:3853 msgid "" ":gh:`100239`: Speedup ``BINARY_OP_EXTEND`` for exact floats and medium-size " "integers by up to 15%. Patch by Chris Eibl." msgstr "" -#: ../NEWS:3769 +#: ../NEWS:3856 msgid "" ":gh:`144914`: Use ``mimalloc`` for raw memory allocations such as via :c:" "func:`PyMem_RawMalloc` for better performance on :term:`free-threaded builds " "`. Patch by Kumar Aditya." msgstr "" -#: ../NEWS:3773 +#: ../NEWS:3860 msgid ":gh:`144872`: Fix heap buffer overflow in the parser found by OSS-Fuzz." msgstr "" -#: ../NEWS:3775 +#: ../NEWS:3862 msgid "" ":gh:`144766`: Fix a crash in fork child process when perf support is enabled." msgstr "" -#: ../NEWS:3777 +#: ../NEWS:3864 msgid "" ":gh:`144759`: Fix undefined behavior in the lexer when ``start`` and " "``multi_line_start`` pointers are ``NULL`` in " @@ -6445,84 +6573,84 @@ msgid "" "(``NULL - valid_pointer``) is now guarded with explicit ``NULL`` checks." msgstr "" -#: ../NEWS:3783 +#: ../NEWS:3870 msgid "" ":gh:`141510`: Add built-in :class:`frozendict` type. Patch by Victor Stinner." msgstr "" -#: ../NEWS:3785 +#: ../NEWS:3872 msgid "" ":gh:`144681`: Fix a JIT assertion failure when a conditional branch jumps to " "the same target as the fallthrough path." msgstr "" -#: ../NEWS:3788 +#: ../NEWS:3875 msgid "" ":gh:`143300`: Add :c:func:`PyUnstable_SetImmortal` C-API function to mark " "objects as :term:`immortal`." msgstr "" -#: ../NEWS:3791 +#: ../NEWS:3878 msgid "" ":gh:`144702`: Clarify the error message raised when a class pattern is used " "to match on a non-class object." msgstr "" -#: ../NEWS:3794 +#: ../NEWS:3881 msgid "" ":gh:`144569`: Optimize ``BINARY_SLICE`` for list, tuple, and unicode by " "avoiding temporary ``slice`` object creation." msgstr "" -#: ../NEWS:3797 +#: ../NEWS:3884 msgid "" ":gh:`144438`: Align the QSBR thread state array to a 64-byte cache line " "boundary to avoid false sharing in the :term:`free-threaded build`." msgstr "" -#: ../NEWS:3800 +#: ../NEWS:3887 msgid "" ":gh:`142349`: Implement :pep:`810`. Patch by Pablo Galindo and Dino Viehland." msgstr "" -#: ../NEWS:3802 +#: ../NEWS:3889 msgid "" ":gh:`141226`: Deprecate :pep:`456` support for providing an external " "definition of the string hashing scheme. Removal is scheduled for Python " "3.19. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:3806 +#: ../NEWS:3893 msgid "" ":gh:`138912`: Improve :opcode:`MATCH_CLASS` performance by up to 52% in " "certain cases. Patch by Marc Mueller." msgstr "" -#: ../NEWS:3809 +#: ../NEWS:3896 msgid "" ":gh:`130327`: Fix erroneous clearing of an object's :attr:`~object.__dict__` " "if overwritten at runtime." msgstr "" -#: ../NEWS:3812 +#: ../NEWS:3899 msgid "" ":gh:`80667`: Literals using the ``\\N{name}`` escape syntax can now " "construct CJK ideographs and Hangul syllables using case-insensitive names." msgstr "" -#: ../NEWS:3818 +#: ../NEWS:3905 msgid "" ":gh:`142417`: Restore private provisional ``_Py_InitializeMain()`` function " "removed in Python 3.14. Patch by Victor Stinner." msgstr "" -#: ../NEWS:3821 +#: ../NEWS:3908 msgid "" ":gh:`144748`: :c:func:`PyErr_CheckSignals` now raises the exception " "scheduled by :c:func:`PyThreadState_SetAsyncExc`, if any." msgstr "" -#: ../NEWS:3824 +#: ../NEWS:3911 msgid "" ":gh:`144981`: Made :c:func:`PyUnstable_Code_SetExtra`, :c:func:" "`PyUnstable_Code_GetExtra`, and :c:func:" @@ -6530,48 +6658,48 @@ msgid "" "threaded ` build." msgstr "" -#: ../NEWS:3829 +#: ../NEWS:3916 msgid "" ":gh:`141510`: Add the following functions for the new :class:`frozendict` " "type:" msgstr "" -#: ../NEWS:3832 +#: ../NEWS:3919 msgid ":c:func:`PyAnyDict_Check`" msgstr "" -#: ../NEWS:3833 +#: ../NEWS:3920 msgid ":c:func:`PyAnyDict_CheckExact`" msgstr "" -#: ../NEWS:3834 +#: ../NEWS:3921 msgid ":c:func:`PyFrozenDict_Check`" msgstr "" -#: ../NEWS:3835 +#: ../NEWS:3922 msgid ":c:func:`PyFrozenDict_CheckExact`" msgstr "" -#: ../NEWS:3836 +#: ../NEWS:3923 msgid ":c:func:`PyFrozenDict_New`" msgstr "" -#: ../NEWS:3838 ../NEWS:8249 ../NEWS:10161 ../NEWS:10725 ../NEWS:11515 -#: ../NEWS:14295 ../NEWS:14305 ../NEWS:14376 ../NEWS:14390 ../NEWS:14420 -#: ../NEWS:15233 ../NEWS:15242 ../NEWS:16757 ../NEWS:18216 ../NEWS:20692 -#: ../NEWS:20720 ../NEWS:20731 ../NEWS:25982 ../NEWS:29714 ../NEWS:29742 -#: ../NEWS:30522 ../NEWS:31651 ../NEWS:32797 ../NEWS:32853 +#: ../NEWS:3925 ../NEWS:8336 ../NEWS:10248 ../NEWS:10812 ../NEWS:11602 +#: ../NEWS:14382 ../NEWS:14392 ../NEWS:14463 ../NEWS:14477 ../NEWS:14507 +#: ../NEWS:15320 ../NEWS:15329 ../NEWS:16844 ../NEWS:18303 ../NEWS:20779 +#: ../NEWS:20807 ../NEWS:20818 ../NEWS:26069 ../NEWS:29801 ../NEWS:29829 +#: ../NEWS:30609 ../NEWS:31738 ../NEWS:32884 ../NEWS:32940 msgid "Patch by Victor Stinner." msgstr "" -#: ../NEWS:3840 +#: ../NEWS:3927 msgid "" ":gh:`121617`: ``Python.h`` now also includes ```` in the limited C " "API version 3.11 and newer to fix the :c:macro:`Py_CLEAR` macro which uses " "``memcpy()``. Patch by Victor Stinner." msgstr "" -#: ../NEWS:3844 +#: ../NEWS:3931 msgid "" ":gh:`144175`: Add :c:func:`PyArg_ParseArray` and :c:func:" "`PyArg_ParseArrayAndKeywords` functions to parse arguments of functions " @@ -6579,62 +6707,62 @@ msgid "" "Stinner." msgstr "" -#: ../NEWS:3852 +#: ../NEWS:3939 msgid "" ":gh:`144533`: Use wasmtime's ``--argv0`` to auto-discover sysconfig in WASI " "builds" msgstr "" -#: ../NEWS:3855 +#: ../NEWS:3942 msgid "" ":gh:`145110`: Fix targets \"Clean\" and \"CLeanAll\" in case of PGO builds " "on Windows. Patch by Chris Eibl." msgstr "" -#: ../NEWS:3858 +#: ../NEWS:3945 msgid "" ":gh:`144679`: When building with Visual Studio 2026 (Version 18), use " "PlatformToolSet v145 by default. Patch by Chris Eibl." msgstr "" -#: ../NEWS:3861 +#: ../NEWS:3948 msgid ":gh:`144675`: Update to WASI SDK 30." msgstr "" -#: ../NEWS:3863 +#: ../NEWS:3950 msgid "" ":gh:`136677`: Introduce executable specific linker flags to ``./configure``." msgstr "" -#: ../NEWS:3867 +#: ../NEWS:3954 msgid "Python 3.15.0 alpha 6" msgstr "" -#: ../NEWS:3869 +#: ../NEWS:3956 msgid "*Release date: 2026-02-11*" msgstr "" -#: ../NEWS:3874 +#: ../NEWS:3961 msgid "" ":gh:`144648`: Allowed _remote_debugging to build on more OS versions by " "using proc_listpids() rather than proc_listallpids()." msgstr "" -#: ../NEWS:3877 +#: ../NEWS:3964 msgid ":gh:`124111`: Update macOS installer to use Tcl/Tk 9.0.3." msgstr "" -#: ../NEWS:3879 +#: ../NEWS:3966 msgid ":gh:`144551`: Update macOS installer to use OpenSSL 3.5.5." msgstr "" -#: ../NEWS:3884 +#: ../NEWS:3971 msgid "" ":gh:`80620`: Support negative timestamps in :func:`time.gmtime`, :func:`time." "localtime`, and various :mod:`datetime` functions." msgstr "" -#: ../NEWS:3890 +#: ../NEWS:3977 msgid "" ":gh:`144415`: The Android testbed now distinguishes between stdout/stderr " "messages which were triggered by a newline, and those triggered by a manual " @@ -6642,14 +6770,14 @@ msgid "" "content." msgstr "" -#: ../NEWS:3895 +#: ../NEWS:3982 msgid "" ":gh:`65784`: Add support for parametrized resource ``wantobjects`` in " "regrtests, which allows to run Tkinter tests with the specified value of :" "data:`!tkinter.wantobjects`, for example ``-u wantobjects=0``." msgstr "" -#: ../NEWS:3902 +#: ../NEWS:3989 msgid "" ":gh:`144125`: :mod:`~email.generator.BytesGenerator` will now refuse to " "serialize (write) headers that are unsafely folded or delimited; see :attr:" @@ -6657,7 +6785,7 @@ msgid "" "Bloemsaat and Petr Viktorin in :gh:`121650`)." msgstr "" -#: ../NEWS:3907 +#: ../NEWS:3994 msgid "" ":gh:`143935`: Fixed a bug in the folding of comments when flattening an " "email message using a modern email policy. Comments consisting of a very " @@ -6667,36 +6795,36 @@ msgid "" "enabled header injection with carefully crafted inputs." msgstr "" -#: ../NEWS:3914 +#: ../NEWS:4001 msgid ":gh:`143925`: Reject control characters in ``data:`` URL media types." msgstr "" -#: ../NEWS:3916 +#: ../NEWS:4003 msgid ":gh:`143923`: Reject control characters in POP3 commands." msgstr "" -#: ../NEWS:3918 +#: ../NEWS:4005 msgid ":gh:`143921`: Reject control characters in IMAP commands." msgstr "" -#: ../NEWS:3920 +#: ../NEWS:4007 msgid "" ":gh:`143919`: Reject control characters in :class:`http.cookies.Morsel` " "fields and values." msgstr "" -#: ../NEWS:3923 +#: ../NEWS:4010 msgid "" ":gh:`143916`: Reject C0 control characters within wsgiref.headers.Headers " "fields, values, and parameters." msgstr "" -#: ../NEWS:3929 +#: ../NEWS:4016 msgid "" ":gh:`144538`: Bump the version of pip bundled in ensurepip to version 26.0.1" msgstr "" -#: ../NEWS:3931 +#: ../NEWS:4018 msgid "" ":gh:`144493`: Improve an exception error message in ``_overlapped." "BindLocal()`` that is raised when :meth:`asyncio.loop.sock_connect` is " @@ -6704,7 +6832,7 @@ msgid "" "invalid address family." msgstr "" -#: ../NEWS:3937 +#: ../NEWS:4024 msgid "" ":gh:`144386`: Add support for arbitrary descriptors :meth:`!__enter__`, :" "meth:`!__exit__`, :meth:`!__aenter__`, and :meth:`!__aexit__` in :class:" @@ -6712,20 +6840,20 @@ msgid "" "consistency with the :keyword:`with` and :keyword:`async with` statements." msgstr "" -#: ../NEWS:3942 +#: ../NEWS:4029 msgid "" ":gh:`123471`: Make concurrent iteration over :class:`itertools." "combinations_with_replacement` and :class:`itertools.permutations` safe " "under free-threading." msgstr "" -#: ../NEWS:3946 +#: ../NEWS:4033 msgid "" ":gh:`74453`: Deprecate :func:`os.path.commonprefix` in favor of :func:`os." "path.commonpath` for path segment prefixes." msgstr "" -#: ../NEWS:3949 +#: ../NEWS:4036 msgid "" "The :func:`os.path.commonprefix` function is being deprecated due to having " "a misleading name and module. The function is not safe to use for path " @@ -6734,106 +6862,106 @@ msgid "" "Python programs by using this function." msgstr "" -#: ../NEWS:3955 +#: ../NEWS:4042 msgid "" ":gh:`144380`: Improve performance of :class:`io.BufferedReader` line " "iteration by ~49%." msgstr "" -#: ../NEWS:3958 +#: ../NEWS:4045 msgid "" ":gh:`144363`: Update bundled `libexpat `_ to " "2.7.4" msgstr "" -#: ../NEWS:3961 +#: ../NEWS:4048 msgid "" ":gh:`140824`: When :mod:`faulthandler` dumps the list of third-party " "extension modules, ignore sub-modules of stdlib packages. Patch by Victor " "Stinner." msgstr "" -#: ../NEWS:3965 +#: ../NEWS:4052 msgid "" ":gh:`144206`: Improve error messages for buffer overflow in :func:`fcntl." "fcntl` and :func:`fcntl.ioctl`." msgstr "" -#: ../NEWS:3968 +#: ../NEWS:4055 msgid "" ":gh:`144264`: Speed up Base64 decoding of data containing ignored characters " "(both in non-strict mode and with an explicit *ignorechars* argument). It is " "now up to 2 times faster for multiline Base64 data." msgstr "" -#: ../NEWS:3972 +#: ../NEWS:4059 msgid "" ":gh:`144249`: Add filename context to :exc:`OSError` exceptions raised by :" "func:`ssl.SSLContext.load_cert_chain`, allowing users to have more context." msgstr "" -#: ../NEWS:3976 +#: ../NEWS:4063 msgid "" ":gh:`132888`: Fix incorrect use of :func:`ctypes.GetLastError` and add " "missing error checks for Windows API calls in :mod:`!_pyrepl." "windows_console`." msgstr "" -#: ../NEWS:3980 +#: ../NEWS:4067 msgid ":gh:`142956`: Updated :mod:`tomllib` to parse TOML 1.1.0." msgstr "" -#: ../NEWS:3982 +#: ../NEWS:4069 msgid "" ":gh:`144217`: :mod:`mimetypes`: Add support for DICOM files (for medical " "imaging) with the official MIME type ``application/dicom``. Patch by " "Benedikt Johannes." msgstr "" -#: ../NEWS:3986 +#: ../NEWS:4073 msgid "" ":gh:`144212`: Mime type ``image/jxl`` is now supported by :mod:`mimetypes`." msgstr "" -#: ../NEWS:3988 +#: ../NEWS:4075 msgid "" ":gh:`143594`: Add :meth:`symtable.Function.get_cells` and :meth:`symtable." "Symbol.is_cell` methods." msgstr "" -#: ../NEWS:3991 +#: ../NEWS:4078 msgid "" ":gh:`144169`: Fix three crashes when non-string keyword arguments are " "supplied to objects in the :mod:`ast` module." msgstr "" -#: ../NEWS:3994 +#: ../NEWS:4081 msgid "" ":gh:`144128`: Fix a crash in :meth:`array.array.fromlist` when an element's :" "meth:`~object.__index__` method mutates the input list during conversion." msgstr "" -#: ../NEWS:3997 +#: ../NEWS:4084 msgid "" ":gh:`144100`: Fixed a crash in ctypes when using a deprecated " "``POINTER(str)`` type in ``argtypes``. Instead of aborting, ctypes now " "raises a proper Python exception when the pointer target type is unresolved." msgstr "" -#: ../NEWS:4002 +#: ../NEWS:4089 msgid "" ":gh:`143658`: :mod:`importlib.metadata`: Use :meth:`str.lower` and :meth:" "`str.replace` to further improve performance of :meth:`!importlib.metadata." "Prepared.normalize`. Patch by Hugo van Kemenade and Henry Schreiner." msgstr "" -#: ../NEWS:4007 +#: ../NEWS:4094 msgid "" ":gh:`144050`: Fix :func:`stat.filemode` in the pure-Python implementation to " "avoid misclassifying invalid mode values as block devices." msgstr "" -#: ../NEWS:4010 +#: ../NEWS:4097 msgid "" ":gh:`83069`: :meth:`subprocess.Popen.wait`: when ``timeout`` is not " "``None``, an efficient event-driven mechanism now waits for process " @@ -6845,7 +6973,7 @@ msgid "" "blocking call and short sleeps). Patch by Giampaolo Rodola." msgstr "" -#: ../NEWS:4019 +#: ../NEWS:4106 msgid "" ":gh:`144030`: The Python implementation of :func:`functools.lru_cache` " "differed from the default C implementation in that it did not check that its " @@ -6853,69 +6981,69 @@ msgid "" "`TypeError`." msgstr "" -#: ../NEWS:4024 +#: ../NEWS:4111 msgid "" ":gh:`144001`: Added the *ignorechars* parameter in :func:`binascii." "a2b_base64` and :func:`base64.b64decode`." msgstr "" -#: ../NEWS:4027 +#: ../NEWS:4114 msgid "" ":gh:`144023`: Fixed validation of file descriptor 0 in posix functions when " "used with follow_symlinks parameter." msgstr "" -#: ../NEWS:4030 +#: ../NEWS:4117 msgid "" ":gh:`143999`: Fix an issue where :func:`inspect.getgeneratorstate` and :func:" "`inspect.getcoroutinestate` could fail for generators wrapped by :func:" "`types.coroutine` in the suspended state." msgstr "" -#: ../NEWS:4034 +#: ../NEWS:4121 msgid "" ":gh:`143952`: Fixed :mod:`asyncio` debugging tools to work with new remote " "debugging API. Patch by Bartosz Sławecki." msgstr "" -#: ../NEWS:4037 +#: ../NEWS:4124 msgid "" ":gh:`143904`: :func:`struct.pack_into` now raises OverflowError instead of " "IndexError for too large *offset* argument." msgstr "" -#: ../NEWS:4040 +#: ../NEWS:4127 msgid "" ":gh:`143897`: Remove the :meth:`!isxidstart` and :meth:`!isxidcontinue` " "methods of :data:`unicodedata.ucd_3_2_0`. They are now only exposed as :func:" "`unicodedata.isxidstart` and :func:`unicodedata.isxidcontinue`." msgstr "" -#: ../NEWS:4044 +#: ../NEWS:4131 msgid "" ":gh:`143831`: :class:`annotationlib.ForwardRef` objects are now hashable " "when created from annotation scopes with closures. Previously, hashing such " "objects would throw an exception. Patch by Bartosz Sławecki." msgstr "" -#: ../NEWS:4048 +#: ../NEWS:4135 msgid "" ":gh:`143874`: Fixed a bug in :mod:`pdb` where expression results were not " "sent back to remote client." msgstr "" -#: ../NEWS:4051 +#: ../NEWS:4138 msgid "" ":gh:`143754`: Add new :mod:`tkinter` widget methods :meth:`!pack_content`, :" "meth:`!place_content` and :meth:`!grid_content` which are alternative " "spelling of old :meth:`!*_slaves` methods." msgstr "" -#: ../NEWS:4055 +#: ../NEWS:4142 msgid ":gh:`143756`: Fix potential thread safety issues in :mod:`ssl` module." msgstr "" -#: ../NEWS:4057 +#: ../NEWS:4144 msgid "" ":gh:`132604`: Previously, :class:`~typing.Protocol` classes that were not " "decorated with :deco:`~typing.runtime_checkable`, but that inherited from " @@ -6925,70 +7053,70 @@ msgid "" "Patch by Bartosz Sławecki." msgstr "" -#: ../NEWS:4064 +#: ../NEWS:4151 msgid "" ":gh:`143543`: Fix a crash in itertools.groupby that could occur when a user-" "defined :meth:`~object.__eq__` method re-enters the iterator during key " "comparison." msgstr "" -#: ../NEWS:4068 +#: ../NEWS:4155 msgid "" ":gh:`143689`: Fix :meth:`io.BufferedReader.read1` state cleanup on buffer " "allocation failure." msgstr "" -#: ../NEWS:4071 +#: ../NEWS:4158 msgid "" ":gh:`143602`: Fix a inconsistency issue in :meth:`~io.RawIOBase.write` that " "leads to unexpected buffer overwrite by deduplicating the buffer exports." msgstr "" -#: ../NEWS:4074 +#: ../NEWS:4161 msgid "" ":gh:`142434`: Use ``ppoll()`` if available in :func:`select.poll` to have a " "timeout resolution of 1 nanosecond, instead of a resolution of 1 ms. Patch " "by Victor Stinner." msgstr "" -#: ../NEWS:4078 +#: ../NEWS:4165 msgid "" ":gh:`140557`: :class:`array.array` buffers now have the same alignment when " "empty as when allocated. Unaligned buffers can still be created by slicing." msgstr "" -#: ../NEWS:4082 +#: ../NEWS:4169 msgid "" ":gh:`143423`: Fix free-threaded build detection in the sampling profiler " "when Py_GIL_DISABLED is set to 0." msgstr "" -#: ../NEWS:4085 +#: ../NEWS:4172 msgid "" ":gh:`101178`: Add Ascii85, Base85, and Z85 support to :mod:`binascii` and " "improve the performance of the base-85 converters in :mod:`base64`." msgstr "" -#: ../NEWS:4088 +#: ../NEWS:4175 msgid "" ":gh:`142966`: Fix :func:`!ctypes.POINTER.set_type` not updating the format " "string to match the type." msgstr "" -#: ../NEWS:4091 +#: ../NEWS:4178 msgid "" ":gh:`142555`: :mod:`array`: fix a crash in ``a[i] = v`` when converting *i* " "to an index via :meth:`i.__index__ ` or :meth:`i.__float__ " "` mutates the array." msgstr "" -#: ../NEWS:4095 +#: ../NEWS:4182 msgid "" ":gh:`142438`: Fix _decimal builds configured with EXTRA_FUNCTIONALITY by " "correcting the Context.apply wrapper to pass the right argument." msgstr "" -#: ../NEWS:4098 +#: ../NEWS:4185 msgid "" ":gh:`141860`: Add an ``on_error`` keyword-only parameter to :func:" "`multiprocessing.set_forkserver_preload` to control how import failures " @@ -6997,7 +7125,7 @@ msgid "" "exception). Contributed by Nick Neumann and Gregory P. Smith." msgstr "" -#: ../NEWS:4104 +#: ../NEWS:4191 msgid "" ":gh:`125346`: Accepting ``+`` and ``/`` characters with an alternative " "alphabet in :func:`base64.b64decode` and :func:`base64.urlsafe_b64decode` is " @@ -7005,12 +7133,12 @@ msgid "" "mode and discarded in the non-strict mode." msgstr "" -#: ../NEWS:4109 +#: ../NEWS:4196 msgid "" ":gh:`140715`: Add ``'%F'`` support to :meth:`~datetime.datetime.strptime`." msgstr "" -#: ../NEWS:4111 +#: ../NEWS:4198 msgid "" ":gh:`67041`: Add the *missing_as_none* parameter to :func:`~urllib.parse." "urlparse`, :func:`~urllib.parse.urlsplit` and :func:`~urllib.parse." @@ -7020,24 +7148,24 @@ msgid "" "components." msgstr "" -#: ../NEWS:4118 +#: ../NEWS:4205 msgid "" ":gh:`77188`: The :mod:`pickle` module now properly handles name-mangled " "private methods." msgstr "" -#: ../NEWS:4124 +#: ../NEWS:4211 msgid "" ":gh:`143774`: Better explain the operation of Format / Format Paragraph." msgstr "" -#: ../NEWS:4129 +#: ../NEWS:4216 msgid "" ":gh:`134584`: Optimize and eliminate ref-counting in " "``_BINARY_OP_SUBSCR_LIST_SLICE``" msgstr "" -#: ../NEWS:4132 +#: ../NEWS:4219 msgid "" ":gh:`144563`: Fix interaction of the Tachyon profiler and :mod:`ctypes` and " "other modules that load the Python shared library (if present) in an " @@ -7045,41 +7173,41 @@ msgid "" "information to be confused. Patch by Pablo Galindo" msgstr "" -#: ../NEWS:4137 +#: ../NEWS:4224 msgid "" ":gh:`144601`: Fix crash when importing a module whose ``PyInit`` function " "raises an exception from a subinterpreter." msgstr "" -#: ../NEWS:4140 +#: ../NEWS:4227 msgid "" ":gh:`144549`: Fix building the tail calling interpreter on Visual Studio " "2026 with free-threading." msgstr "" -#: ../NEWS:4143 +#: ../NEWS:4230 msgid "" ":gh:`144513`: Fix potential deadlock when using critical sections during " "stop-the-world pauses in the free-threaded build." msgstr "" -#: ../NEWS:4146 +#: ../NEWS:4233 msgid ":gh:`131798`: Optimise ``_GUARD_TOS_SLICE`` in the JIT." msgstr "" -#: ../NEWS:4148 +#: ../NEWS:4235 msgid "" ":gh:`144330`: Move ``classmethod`` and ``staticmethod`` initialization from " "``__init__()`` to ``__new__()``. Patch by Victor Stinner." msgstr "" -#: ../NEWS:4151 +#: ../NEWS:4238 msgid "" ":gh:`144446`: Fix data races in the free-threaded build when reading frame " "object attributes while another thread is executing the frame." msgstr "" -#: ../NEWS:4154 +#: ../NEWS:4241 msgid "" ":gh:`120321`: Add ``gi_state``, ``cr_state``, and ``ag_state`` attributes to " "generators, coroutines, and async generators that return the current state " @@ -7088,123 +7216,123 @@ msgid "" "func:`~inspect.getasyncgenstate` now return these attributes directly." msgstr "" -#: ../NEWS:4161 +#: ../NEWS:4248 msgid ":gh:`141563`: Fix thread safety of :c:macro:`! PyDateTime_IMPORT`." msgstr "" -#: ../NEWS:4163 +#: ../NEWS:4250 msgid "" ":gh:`144280`: Fix a bug in JIT where the predicate symbol had no truthiness" msgstr "" -#: ../NEWS:4165 +#: ../NEWS:4252 msgid "" ":gh:`140550`: In :c:member:`PyModuleDef.m_slots`, allow slots that repeat " "information present in :c:type:`PyModuleDef`." msgstr "" -#: ../NEWS:4168 +#: ../NEWS:4255 msgid "" ":gh:`139103`: Improve scaling of :func:`~collections.namedtuple` " "instantiation in the free-threaded build." msgstr "" -#: ../NEWS:4171 +#: ../NEWS:4258 msgid "" ":gh:`144307`: Prevent a reference leak in module teardown at interpreter " "finalization." msgstr "" -#: ../NEWS:4174 +#: ../NEWS:4261 msgid "" ":gh:`144319`: Add huge pages support for the pymalloc allocator. Patch by " "Pablo Galindo" msgstr "" -#: ../NEWS:4177 +#: ../NEWS:4264 msgid "" ":gh:`120321`: Made ``gi_yieldfrom`` thread-safe in the free-threading build " "by using a lightweight lock on the frame state." msgstr "" -#: ../NEWS:4180 +#: ../NEWS:4267 msgid "" ":gh:`144194`: Fix error handling in perf jitdump initialization on memory " "allocation failure." msgstr "" -#: ../NEWS:4183 +#: ../NEWS:4270 msgid "" ":gh:`143962`: Name suggestion for not normalized name suggests now the " "normalized name or the closest name to the normalized name. If the suggested " "name is not ASCII, include also its ASCII representation." msgstr "" -#: ../NEWS:4187 +#: ../NEWS:4274 msgid "" ":gh:`144157`: :meth:`bytes.translate` now allows the compiler to unroll its " "loop more usefully for a 2x speedup in the common no-deletions specified " "case." msgstr "" -#: ../NEWS:4191 +#: ../NEWS:4278 msgid "" ":gh:`144068`: Fix JIT tracer memory leak, ensure the JIT tracer state is " "freed when daemon threads are cleaned up during interpreter shutdown." msgstr "" -#: ../NEWS:4194 +#: ../NEWS:4281 msgid "" ":gh:`144012`: Check if the result is ``NULL`` in ``BINARY_OP_EXTENT`` opcode." msgstr "" -#: ../NEWS:4196 +#: ../NEWS:4283 msgid "" ":gh:`144007`: Eliminate redundant refcounting in the JIT for ``BINARY_OP``." msgstr "" -#: ../NEWS:4198 +#: ../NEWS:4285 msgid "" ":gh:`144005`: Eliminate redundant refcounting from ``BINARY_OP_EXTEND``." msgstr "" -#: ../NEWS:4200 +#: ../NEWS:4287 msgid "" ":gh:`143939`: Fix erroneous \"cannot reuse already awaited coroutine\" error " "that could occur when a generator was run during the process of clearing a " "coroutine's frame." msgstr "" -#: ../NEWS:4204 +#: ../NEWS:4291 msgid "" ":gh:`141805`: Fix crash in :class:`set` when objects with the same hash are " "concurrently added to the set after removing an element with the same hash " "while the set still contains elements with the same hash." msgstr "" -#: ../NEWS:4208 +#: ../NEWS:4295 msgid ":gh:`143670`: Fixes a crash in ``ga_repr_items_list`` function." msgstr "" -#: ../NEWS:4210 +#: ../NEWS:4297 msgid "" ":gh:`143650`: Fix race condition in :mod:`importlib` where a thread could " "receive a stale module reference when another thread's import fails." msgstr "" -#: ../NEWS:4213 +#: ../NEWS:4300 msgid "" ":gh:`143569`: Generator expressions in 3.15 now conform to the documented " "behavior when the iterable does not support iteration. This matches the " "behavior in 3.14 and earlier" msgstr "" -#: ../NEWS:4217 +#: ../NEWS:4304 msgid "" ":gh:`143192`: Improve performance of bitwise operations on multi-digit ints." msgstr "" -#: ../NEWS:4219 +#: ../NEWS:4306 msgid "" ":gh:`132657`: If we are specializing to ``LOAD_GLOBAL_MODULE`` or " "``LOAD_ATTR_MODULE``, try to enable deferred reference counting for the " @@ -7214,13 +7342,13 @@ msgid "" "will be deallocated by the GC, rather than by :c:func:`Py_DECREF`." msgstr "" -#: ../NEWS:4226 +#: ../NEWS:4313 msgid "" ":gh:`143055`: Implement :pep:`798` (Unpacking in Comprehensions). Patch by " "Adam Hartz." msgstr "" -#: ../NEWS:4229 +#: ../NEWS:4316 msgid "" ":gh:`142037`: Improve error messages for printf-style formatting. For errors " "in the format string, always include the position of the start of the format " @@ -7230,25 +7358,25 @@ msgid "" "error)." msgstr "" -#: ../NEWS:4236 +#: ../NEWS:4323 msgid "" ":gh:`140557`: :class:`bytearray` buffers now have the same alignment when " "empty as when allocated. Unaligned buffers can still be created by slicing." msgstr "" -#: ../NEWS:4240 +#: ../NEWS:4327 msgid "" ":gh:`140232`: Frozenset objects with immutable elements are no longer " "tracked by the garbage collector." msgstr "" -#: ../NEWS:4243 +#: ../NEWS:4330 msgid "" ":gh:`115231`: Setup ``__module__`` attribute for built-in static methods. " "Patch by Sergey B Kirpichev." msgstr "" -#: ../NEWS:4249 +#: ../NEWS:4336 msgid "" ":gh:`143869`: Added :c:func:`PyLong_GetNativeLayout`, :c:struct:" "`PyLongLayout`, :c:struct:`PyLongExport`, :c:func:`PyLong_Export`, :c:func:" @@ -7257,25 +7385,25 @@ msgid "" "`PyLongWriter_Discard` to the limited API." msgstr "" -#: ../NEWS:4256 +#: ../NEWS:4343 msgid "" ":gh:`141070`: Renamed :c:func:`!PyUnstable_Object_Dump` to :c:func:" "`PyObject_Dump`." msgstr "" -#: ../NEWS:4262 +#: ../NEWS:4349 msgid "" ":gh:`140421`: Disable the perf trampoline on older macOS versions where it " "cannot be built." msgstr "" -#: ../NEWS:4265 +#: ../NEWS:4352 msgid "" ":gh:`144309`: Build Python with POSIX 2024, instead of POSIX 2008. Patch by " "Victor Stinner." msgstr "" -#: ../NEWS:4268 +#: ../NEWS:4355 msgid "" ":gh:`144278`: Enables defining the ``_PY_IMPL_NAME`` and " "``_PY_IMPL_CACHE_TAG`` preprocessor definitions to override :data:`sys." @@ -7284,70 +7412,70 @@ msgid "" "effect of completely disabling automatic creation and use of ``.pyc`` files." msgstr "" -#: ../NEWS:4275 +#: ../NEWS:4362 msgid "" ":gh:`143960`: Add support for OpenSSL 3.6, drop EOL 3.2. Patch by Hugo van " "Kemenade." msgstr "" -#: ../NEWS:4278 +#: ../NEWS:4365 msgid "" ":gh:`143941`: Move WASI-related files to :file:`Platforms/WASI`. Along the " "way, leave a deprecated :file:`Tools/wasm/wasi/__main__.py` behind for " "backwards-compatibility." msgstr "" -#: ../NEWS:4282 +#: ../NEWS:4369 msgid "" ":gh:`143842`: Prevent static builds from clashing with curses by making the " "optimizer COLORS table static." msgstr "" -#: ../NEWS:4287 +#: ../NEWS:4374 msgid "Python 3.15.0 alpha 5" msgstr "" -#: ../NEWS:4289 +#: ../NEWS:4376 msgid "*Release date: 2026-01-14*" msgstr "" -#: ../NEWS:4294 +#: ../NEWS:4381 msgid "" ":gh:`143082`: Fix :mod:`pdb` arrow key history not working when ``stdin`` is " "``sys.stdin``." msgstr "" -#: ../NEWS:4297 +#: ../NEWS:4384 msgid "" ":gh:`128067`: Fix a bug in PyREPL on Windows where output without a trailing " "newline was overwritten by the next prompt." msgstr "" -#: ../NEWS:4303 +#: ../NEWS:4390 msgid "" ":gh:`142095`: Make gdb 'py-bt' command use frame from thread local state " "when available. Patch by Sam Gross and Victor Stinner." msgstr "" -#: ../NEWS:4309 +#: ../NEWS:4396 msgid "" ":gh:`143460`: Skip tests relying on infinite recusion if stack size is " "unlimited." msgstr "" -#: ../NEWS:4312 +#: ../NEWS:4399 msgid "" ":gh:`143553`: Add support for parametrized resources, such as ``-u " "xpickle=2.7``." msgstr "" -#: ../NEWS:4315 +#: ../NEWS:4402 msgid "" ":issue:`31391`: Forward-port test_xpickle from Python 2 to Python 3 and add " "the resource back to test's command line." msgstr "" -#: ../NEWS:4321 +#: ../NEWS:4408 msgid "" ":gh:`143706`: Fix :mod:`multiprocessing` forkserver so that :data:`sys.argv` " "is correctly set before ``__main__`` is preloaded. Previously, :data:`sys." @@ -7356,7 +7484,7 @@ msgid "" "Aaron Wieczorek, test provided by Thomas Watson, thanks!" msgstr "" -#: ../NEWS:4327 +#: ../NEWS:4414 msgid "" ":gh:`143638`: Forbid reentrant calls of the :class:`pickle.Pickler` and :" "class:`pickle.Unpickler` methods for the C implementation. Previously, this " @@ -7364,48 +7492,48 @@ msgid "" "same object raise :exc:`RuntimeError`." msgstr "" -#: ../NEWS:4332 +#: ../NEWS:4419 msgid "" ":gh:`143658`: :mod:`importlib.metadata`: Use :meth:`str.translate` to " "improve performance of :meth:`!importlib.metadata.Prepared.normalize`. Patch " "by Hugo van Kemenade and Henry Schreiner." msgstr "" -#: ../NEWS:4336 +#: ../NEWS:4423 msgid "" ":gh:`78724`: Raise :exc:`RuntimeError`'s when user attempts to call methods " "on half-initialized :class:`~struct.Struct` objects, For example, created by " "``Struct.__new__(Struct)``. Patch by Sergey B Kirpichev." msgstr "" -#: ../NEWS:4340 +#: ../NEWS:4427 msgid "" ":gh:`143196`: Fix crash when the internal encoder object returned by " "undocumented function :func:`!json.encoder.c_make_encoder` was called with " "non-zero second (*_current_indent_level*) argument." msgstr "" -#: ../NEWS:4344 +#: ../NEWS:4431 msgid "" ":gh:`143191`: :func:`_thread.stack_size` now raises :exc:`ValueError` if the " "stack size is too small. Patch by Victor Stinner." msgstr "" -#: ../NEWS:4347 +#: ../NEWS:4434 msgid "" ":gh:`143547`: Fix :func:`sys.unraisablehook` when the hook raises an " "exception and changes :func:`sys.unraisablehook`: hold a strong reference to " "the old hook. Patch by Victor Stinner." msgstr "" -#: ../NEWS:4351 +#: ../NEWS:4438 msgid "" ":gh:`139686`: Revert 0a97941245f1dda6d838f9aaf0512104e5253929 and " "57db12514ac686f0a752ec8fe1c08b6daa0c6219 which made importlib.reload a no-op " "for lazy modules; caused Buildbot failures." msgstr "" -#: ../NEWS:4355 +#: ../NEWS:4442 msgid "" ":gh:`143517`: :func:`annotationlib.get_annotations` no longer raises a :exc:" "`SyntaxError` when evaluating a stringified starred annotation that starts " @@ -7413,99 +7541,99 @@ msgid "" "Sławecki." msgstr "" -#: ../NEWS:4360 +#: ../NEWS:4447 msgid ":gh:`143474`: Add :data:`os.RWF_ATOMIC` constant for Linux 6.11+." msgstr "" -#: ../NEWS:4362 +#: ../NEWS:4449 msgid ":gh:`143445`: Speed up :func:`copy.deepcopy` by 1.04x." msgstr "" -#: ../NEWS:4364 +#: ../NEWS:4451 msgid "" ":gh:`143378`: Fix use-after-free crashes when a :class:`~io.BytesIO` object " "is concurrently mutated during :meth:`~io.RawIOBase.write` or :meth:`~io." "IOBase.writelines`." msgstr "" -#: ../NEWS:4368 +#: ../NEWS:4455 msgid "" ":gh:`143368`: Fix endless retry loop in :mod:`profiling.sampling` blocking " "mode when threads cannot be seized due to ``EPERM``. Such threads are now " "skipped instead of causing repeated error messages. Patch by Pablo Galindo." msgstr "" -#: ../NEWS:4373 +#: ../NEWS:4460 msgid "" ":gh:`143346`: Fix incorrect wrapping of the Base64 data in :class:`!plistlib." "_PlistWriter` when the indent contains a mix of tabs and spaces." msgstr "" -#: ../NEWS:4377 +#: ../NEWS:4464 msgid "" ":gh:`140025`: :mod:`queue`: Fix :meth:`!SimpleQueue.__sizeof__` computation." msgstr "" -#: ../NEWS:4379 +#: ../NEWS:4466 msgid "" ":gh:`143310`: :mod:`tkinter`: fix a crash when a Python :class:`list` is " "mutated during the conversion to a Tcl object (e.g., when setting a Tcl " "variable). Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:4383 +#: ../NEWS:4470 msgid "" ":gh:`143309`: Fix a crash in :func:`os.execve` on non-Windows platforms when " "given a custom environment mapping which is then mutated during parsing. " "Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:4387 +#: ../NEWS:4474 msgid "" ":gh:`143308`: :mod:`pickle`: fix use-after-free crashes when a :class:" "`~pickle.PickleBuffer` is concurrently mutated by a custom buffer callback " "during pickling. Patch by Bénédikt Tran and Aaron Wieczorek." msgstr "" -#: ../NEWS:4391 +#: ../NEWS:4478 msgid "" ":gh:`142939`: Performance optimisations for :func:`difflib.get_close_matches`" msgstr "" -#: ../NEWS:4393 +#: ../NEWS:4480 msgid "" ":gh:`124951`: The base64 implementation behind the :mod:`binascii`, :mod:" "`base64`, and related codec has been optimized for modern pipelined CPU " "architectures and now performs 2-3x faster across all platforms." msgstr "" -#: ../NEWS:4397 +#: ../NEWS:4484 msgid "" ":gh:`143237`: Fix support of named pipes in the rotating :mod:`logging` " "handlers." msgstr "" -#: ../NEWS:4400 +#: ../NEWS:4487 msgid "" ":gh:`143249`: Fix possible buffer leaks in Windows overlapped I/O on error " "handling." msgstr "" -#: ../NEWS:4403 +#: ../NEWS:4490 msgid "" ":gh:`143241`: :mod:`zoneinfo`: fix infinite loop in :meth:`ZoneInfo." "from_file ` when parsing a malformed TZif file. " "Patch by Fatih Celik." msgstr "" -#: ../NEWS:4407 +#: ../NEWS:4494 msgid "" ":gh:`142830`: :mod:`sqlite3`: fix use-after-free crashes when the " "connection's callbacks are mutated during a callback execution. Patch by " "Bénédikt Tran." msgstr "" -#: ../NEWS:4411 +#: ../NEWS:4498 msgid "" ":gh:`143200`: :mod:`xml.etree.ElementTree`: fix use-after-free crashes in :" "meth:`~object.__getitem__` and :meth:`~object.__setitem__` methods of :class:" @@ -7513,50 +7641,50 @@ msgid "" "Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:4416 +#: ../NEWS:4503 msgid "" ":gh:`143214`: Add the *wrapcol* parameter in :func:`binascii.b2a_base64` " "and :func:`base64.b64encode`." msgstr "" -#: ../NEWS:4419 +#: ../NEWS:4506 msgid "" ":gh:`142195`: Updated timeout evaluation logic in :mod:`subprocess` to be " "compatible with deterministic environments like Shadow where time moves " "exactly as requested." msgstr "" -#: ../NEWS:4423 +#: ../NEWS:4510 msgid "" ":gh:`140739`: Fix several crashes due to reading invalid memory in the new " "Tachyon sampling profiler. Patch by Pablo Galindo." msgstr "" -#: ../NEWS:4426 +#: ../NEWS:4513 msgid "" ":gh:`142164`: Fix the ctypes bitfield overflow error message to report the " "correct offset and size calculation." msgstr "" -#: ../NEWS:4429 +#: ../NEWS:4516 msgid "" ":gh:`143145`: Fixed a possible reference leak in ctypes when constructing " "results with multiple output parameters on error." msgstr "" -#: ../NEWS:4432 +#: ../NEWS:4519 msgid "" ":gh:`143103`: Add padding support to :func:`base64.z85encode` via the " "``pad`` parameter." msgstr "" -#: ../NEWS:4435 +#: ../NEWS:4522 msgid "" ":gh:`130796`: Undeprecate the :func:`locale.getdefaultlocale` function. " "Patch by Victor Stinner." msgstr "" -#: ../NEWS:4438 +#: ../NEWS:4525 msgid "" ":gh:`74902`: Add the :func:`~unicodedata.iter_graphemes` function in the :" "mod:`unicodedata` module to iterate over grapheme clusters according to " @@ -7567,43 +7695,43 @@ msgid "" "character which are related to the above algorithm." msgstr "" -#: ../NEWS:4447 +#: ../NEWS:4534 msgid "" ":gh:`143004`: Fix a potential use-after-free in :meth:`collections.Counter." "update` when user code mutates the Counter during an update." msgstr "" -#: ../NEWS:4451 +#: ../NEWS:4538 msgid "" ":gh:`140648`: The :mod:`asyncio` REPL now respects the :option:`-I` flag " "(isolated mode). Previously, it would load and execute :envvar:" "`PYTHONSTARTUP` even if the flag was set. Contributed by Bartosz Sławecki." msgstr "" -#: ../NEWS:4456 +#: ../NEWS:4543 msgid "" ":gh:`142991`: Fixed socket operations such as recvfrom() and sendto() for " "FreeBSD divert(4) socket." msgstr "" -#: ../NEWS:4459 +#: ../NEWS:4546 msgid "" ":gh:`116738`: Make the attributes in :mod:`lzma` thread-safe on the :term:" "`free threaded ` build." msgstr "" -#: ../NEWS:4462 +#: ../NEWS:4549 msgid "" ":gh:`142950`: Fix regression in :mod:`argparse` where format specifiers in " "help strings raised :exc:`ValueError`." msgstr "" -#: ../NEWS:4465 +#: ../NEWS:4552 msgid "" ":gh:`142881`: Fix concurrent and reentrant call of :func:`atexit.unregister`." msgstr "" -#: ../NEWS:4467 +#: ../NEWS:4554 msgid "" ":gh:`142615`: Fix possible crashes when initializing :class:`asyncio.Task` " "or :class:`asyncio.Future` multiple times. These classes can now be " @@ -7611,7 +7739,7 @@ msgid "" "RuntimeError. Patch by Kumar Aditya." msgstr "" -#: ../NEWS:4472 +#: ../NEWS:4559 msgid "" ":gh:`142517`: The non-``compat32`` :mod:`email` policies now correctly " "handle refolding encoded words that contain bytes that can not be decoded in " @@ -7619,7 +7747,7 @@ msgid "" "exception during folding." msgstr "" -#: ../NEWS:4477 +#: ../NEWS:4564 msgid "" ":gh:`138122`: The Tachyon profiler's live TUI now integrates with the " "experimental :mod:`!_colorize` theming system. Users can customize colors " @@ -7628,31 +7756,31 @@ msgid "" "Patch by Pablo Galindo." msgstr "" -#: ../NEWS:4483 +#: ../NEWS:4570 msgid "" ":gh:`142306`: Improve errors for :meth:`Element.remove `." msgstr "" -#: ../NEWS:4486 +#: ../NEWS:4573 msgid "" ":gh:`63016`: Add a ``flags`` parameter to :meth:`mmap.mmap.flush` to control " "synchronization behavior." msgstr "" -#: ../NEWS:4489 +#: ../NEWS:4576 msgid "" ":gh:`139262`: Some keystrokes can be swallowed in the new ``PyREPL`` on " "Windows, especially when used together with the ALT key. Fix by Chris Eibl." msgstr "" -#: ../NEWS:4493 +#: ../NEWS:4580 msgid "" ":gh:`138897`: Improved :data:`license`/:data:`copyright`/:data:`credits` " "display in the :term:`REPL`: now uses a pager." msgstr "" -#: ../NEWS:4496 +#: ../NEWS:4583 msgid "" ":gh:`135852`: Add :func:`!_winapi.RegisterEventSource`, :func:`!_winapi." "DeregisterEventSource` and :func:`!_winapi.ReportEvent`. Using these " @@ -7660,104 +7788,104 @@ msgid "" "pywin32`." msgstr "" -#: ../NEWS:4501 +#: ../NEWS:4588 msgid "" ":gh:`109263`: Starting a process from spawn context in :mod:" "`multiprocessing` no longer sets the start method globally." msgstr "" -#: ../NEWS:4504 +#: ../NEWS:4591 msgid "" ":gh:`132715`: Skip writing objects during marshalling once a failure has " "occurred." msgstr "" -#: ../NEWS:4510 +#: ../NEWS:4597 msgid ":gh:`140806`: Add documentation for :func:`enum.bin`." msgstr "" -#: ../NEWS:4515 +#: ../NEWS:4602 msgid "" ":gh:`134584`: Eliminate redundant refcounting from ``_CONTAINS_OP``, " "``_CONTAINS_OP_SET`` and ``_CONTAINS_OP_DICT``." msgstr "" -#: ../NEWS:4518 +#: ../NEWS:4605 msgid "" ":gh:`143604`: Fix a reference counting issue in the JIT tracer where the " "current executor could be prematurely freed during tracing." msgstr "" -#: ../NEWS:4521 +#: ../NEWS:4608 msgid "" ":gh:`143469`: Enable :opcode:`!LOAD_ATTR_MODULE` specialization even if :" "func:`!__getattr__` is defined in module." msgstr "" -#: ../NEWS:4524 +#: ../NEWS:4611 msgid ":gh:`134584`: Eliminate redundant refcounting from ``TO_BOOL_STR``." msgstr "" -#: ../NEWS:4526 +#: ../NEWS:4613 msgid "" ":gh:`143377`: Fix a crash in :func:`!_interpreters.capture_exception` when " "the exception is incorrectly formatted. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:4529 +#: ../NEWS:4616 msgid "" ":gh:`139757`: Add ``BINARY_OP_SUBSCR_USTR_INT`` to specialize reading an " "ASCII character from any string. Patch by Chris Eibl." msgstr "" -#: ../NEWS:4532 +#: ../NEWS:4619 msgid "" ":gh:`141504`: Factor out tracing and optimization heuristics into a single " "object. Patch by Donghee Na." msgstr "" -#: ../NEWS:4535 +#: ../NEWS:4622 msgid "" ":gh:`142982`: Specialize :opcode:`CALL_FUNCTION_EX` for Python and non-" "Python callables." msgstr "" -#: ../NEWS:4538 +#: ../NEWS:4625 msgid "" ":gh:`136924`: The interactive help mode in the :term:`REPL` no longer " "incorrectly syntax highlights text input as Python code. Contributed by Olga " "Matoula." msgstr "" -#: ../NEWS:4542 +#: ../NEWS:4629 msgid "" ":gh:`139757`: Fix unintended bytecode specialization for non-ascii string. " "Patch by Donghee Na, Ken Jin and Chris Eibl." msgstr "" -#: ../NEWS:4545 +#: ../NEWS:4632 msgid "" ":gh:`143361`: Add ``PY_VECTORCALL_ARGUMENTS_OFFSET`` to " "``_Py_CallBuiltinClass_StackRefSteal`` to avoid redundant allocations" msgstr "" -#: ../NEWS:4548 +#: ../NEWS:4635 msgid "" ":gh:`131798`: The JIT optimizer now understands more generator instructions." msgstr "" -#: ../NEWS:4550 +#: ../NEWS:4637 msgid ":gh:`134584`: Eliminate redundant refcounting from ``_LOAD_ATTR_SLOT``." msgstr "" -#: ../NEWS:4552 +#: ../NEWS:4639 msgid "" ":gh:`143189`: Fix crash when inserting a non-:class:`str` key into a split " "table dictionary when the key matches an existing key in the split table but " "has no corresponding value in the dict." msgstr "" -#: ../NEWS:4556 +#: ../NEWS:4643 msgid "" ":gh:`143228`: Fix use-after-free in perf trampoline when toggling profiling " "while threads are running or during interpreter finalization with daemon " @@ -7766,189 +7894,189 @@ msgid "" "Galindo" msgstr "" -#: ../NEWS:4562 +#: ../NEWS:4649 msgid "" ":gh:`142664`: Fix a use-after-free crash in :meth:`memoryview.__hash__ " "` when the ``__hash__`` method of the referenced object " "mutates that object or the view. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:4566 +#: ../NEWS:4653 msgid "" ":gh:`142557`: Fix a use-after-free crash in :ref:`bytearray.__mod__ ` when the :class:`!bytearray` is mutated while formatting the " "``%``-style arguments. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:4570 +#: ../NEWS:4657 msgid "" ":gh:`143195`: Fix use-after-free crashes in :meth:`bytearray.hex` and :meth:" "`memoryview.hex` when the separator's :meth:`~object.__len__` mutates the " "original object. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:4574 +#: ../NEWS:4661 msgid "" ":gh:`143183`: Fix a bug in the JIT when dealing with unsupported control-" "flow or operations." msgstr "" -#: ../NEWS:4577 +#: ../NEWS:4664 msgid "" ":gh:`142975`: Fix crash after unfreezing all objects tracked by the garbage " "collector on the :term:`free threaded ` build." msgstr "" -#: ../NEWS:4580 +#: ../NEWS:4667 msgid "" ":gh:`143135`: Set :data:`sys.flags.inspect` to ``1`` when :envvar:" "`PYTHONINSPECT` is ``0``. Previously, it was set to ``0`` in this case." msgstr "" -#: ../NEWS:4584 +#: ../NEWS:4671 msgid ":gh:`143123`: Protect the JIT against recursive tracing." msgstr "" -#: ../NEWS:4586 +#: ../NEWS:4673 msgid "" ":gh:`143092`: Fix a crash in the JIT when dealing with ``list.append(x)`` " "style code." msgstr "" -#: ../NEWS:4589 +#: ../NEWS:4676 msgid "" ":gh:`143003`: Fix an overflow of the shared empty buffer in :meth:`bytearray." "extend` when ``__length_hint__()`` returns 0 for non-empty iterator." msgstr "" -#: ../NEWS:4593 +#: ../NEWS:4680 msgid "" ":gh:`143006`: Fix a possible assertion error when comparing negative non-" "integer ``float`` and ``int`` with the same number of bits in the integer " "part." msgstr "" -#: ../NEWS:4597 +#: ../NEWS:4684 msgid ":gh:`116738`: Fix thread safety of :func:`contextvars.Context.run`." msgstr "" -#: ../NEWS:4599 +#: ../NEWS:4686 msgid "" ":gh:`142829`: Fix a use-after-free crash in :class:`contextvars.Context` " "comparison when a custom ``__eq__`` method modifies the context via :meth:" "`~contextvars.ContextVar.set`." msgstr "" -#: ../NEWS:4603 +#: ../NEWS:4690 msgid "" ":gh:`142863`: Generate optimized bytecode when calling :class:`list` or :" "class:`set` with generator expression." msgstr "" -#: ../NEWS:4606 +#: ../NEWS:4693 msgid "" ":gh:`41779`: Allowed defining any :ref:`__slots__ ` for a class " "derived from :class:`tuple` (including classes created by :func:`collections." "namedtuple`)." msgstr "" -#: ../NEWS:4610 +#: ../NEWS:4697 msgid "" ":gh:`69605`: Fix edge-cases around already imported modules in the :term:" "`REPL` auto-completion of imports." msgstr "" -#: ../NEWS:4613 +#: ../NEWS:4700 msgid "" ":gh:`138568`: Adjusted the built-in :func:`help` function so that empty " "inputs are ignored in interactive mode." msgstr "" -#: ../NEWS:4616 +#: ../NEWS:4703 msgid "" ":gh:`131798`: Remove bounds check when indexing into tuples with a constant " "index." msgstr "" -#: ../NEWS:4619 +#: ../NEWS:4706 msgid "" ":gh:`134584`: Eliminate redundant refcounting from ``_CALL_TYPE_1``. Patch " "by Tomas Roun" msgstr "" -#: ../NEWS:4622 +#: ../NEWS:4709 msgid "" ":gh:`132108`: Speed up :meth:`int.from_bytes` when passed object supports :" "ref:`buffer protocol `, like :class:`bytearray` by ~1.2x." msgstr "" -#: ../NEWS:4625 +#: ../NEWS:4712 msgid "" ":gh:`128334`: Make the :class:`slice` class subscriptable at runtime to be " "consistent with typing implementation." msgstr "" -#: ../NEWS:4631 +#: ../NEWS:4718 msgid "" ":gh:`141671`: :c:macro:`PyMODINIT_FUNC` (and the new :c:macro:" "`PyMODEXPORT_FUNC`) now adds a linkage declaration " "(``__declspec(dllexport)``) on Windows." msgstr "" -#: ../NEWS:4637 +#: ../NEWS:4724 msgid "Python 3.15.0 alpha 4" msgstr "" -#: ../NEWS:4639 +#: ../NEWS:4726 msgid "*Release date: 2026-01-13*" msgstr "" -#: ../NEWS:4644 +#: ../NEWS:4731 msgid "" ":gh:`142836`: Accommodated Solaris in ``test_pdb." "test_script_target_anonymous_pipe``." msgstr "" -#: ../NEWS:4650 +#: ../NEWS:4737 msgid "" ":gh:`122431`: Corrected the error message in :func:`readline." "append_history_file` to state that ``nelements`` must be non-negative " "instead of positive." msgstr "" -#: ../NEWS:4654 +#: ../NEWS:4741 msgid "" ":gh:`143046`: The :mod:`asyncio` REPL no longer prints copyright and version " "messages in the quiet mode (:option:`-q`). Patch by Bartosz Sławecki." msgstr "" -#: ../NEWS:4657 +#: ../NEWS:4744 msgid "" ":gh:`80744`: Fix issue where ``pdb`` would read a ``.pdbrc`` twice if " "launched from the home directory" msgstr "" -#: ../NEWS:4660 +#: ../NEWS:4747 msgid "" ":gh:`138122`: Add blocking mode to Tachyon for accurate stack traces in " "applications with many generators or fast-changing call stacks. Patch by " "Pablo Galindo." msgstr "" -#: ../NEWS:4664 +#: ../NEWS:4751 msgid "" ":gh:`143010`: Fixed a bug in :mod:`mailbox` where the precise timing of an " "external event could result in the library opening an existing file instead " "of a file it expected to create." msgstr "" -#: ../NEWS:4668 +#: ../NEWS:4755 msgid "" ":gh:`112127`: Fix possible use-after-free in :func:`atexit.unregister` when " "the callback is unregistered during comparison." msgstr "" -#: ../NEWS:4671 +#: ../NEWS:4758 msgid "" ":gh:`138122`: Fix incomplete stack traces in the Tachyon profiler's frame " "cache when profiling code with deeply nested generators. The frame cache now " @@ -7956,35 +8084,35 @@ msgid "" "broken flamegraphs. Patch by Pablo Galindo." msgstr "" -#: ../NEWS:4676 +#: ../NEWS:4763 msgid "" ":gh:`142834`: Change the :mod:`pdb` ``commands`` command to use the last " "available breakpoint instead of failing when the most recently created " "breakpoint was deleted." msgstr "" -#: ../NEWS:4680 +#: ../NEWS:4767 msgid "" ":gh:`142783`: Fix zoneinfo use-after-free with descriptor _weak_cache. a " "descriptor as _weak_cache could cause crashes during object creation. The " "fix ensures proper reference counting for descriptor-provided objects." msgstr "" -#: ../NEWS:4684 +#: ../NEWS:4771 msgid "" ":gh:`76007`: Deprecate ``VERSION`` from :mod:`xml.etree.ElementTree` and " "``version`` from :mod:`!xml.sax.expatreader` and :mod:`xml.sax.handler`. " "Patch by Hugo van Kemenade." msgstr "" -#: ../NEWS:4688 +#: ../NEWS:4775 msgid "" ":gh:`142784`: The :mod:`asyncio` REPL now properly closes the loop upon the " "end of interactive session. Previously, it could cause surprising warnings. " "Contributed by Bartosz Sławecki." msgstr "" -#: ../NEWS:4692 +#: ../NEWS:4779 msgid "" ":gh:`138122`: Add binary output format to :mod:`profiling.sampling` for " "compact storage of profiling data. The new ``--binary`` option captures " @@ -7992,7 +8120,7 @@ msgid "" "``replay`` command. Patch by Pablo Galindo" msgstr "" -#: ../NEWS:4697 +#: ../NEWS:4784 msgid "" ":gh:`142495`: :class:`collections.defaultdict` now prioritizes :meth:" "`~object.__setitem__` when inserting default values from " @@ -8000,13 +8128,13 @@ msgid "" "would overwrite a value set before ``default_factory`` returns." msgstr "" -#: ../NEWS:4702 +#: ../NEWS:4789 msgid "" ":gh:`142654`: Show the clearer error message when using ``profiling." "sampling`` on an unknown PID." msgstr "" -#: ../NEWS:4705 +#: ../NEWS:4792 msgid "" ":gh:`142560`: Fix use-after-free in :class:`bytearray` search-like methods (:" "meth:`~bytearray.find`, :meth:`~bytearray.count`, :meth:`~bytearray.index`, :" @@ -8017,20 +8145,20 @@ msgid "" "used for this." msgstr "" -#: ../NEWS:4714 +#: ../NEWS:4801 msgid "" ":gh:`142419`: :meth:`mmap.mmap.set_name` method added to annotate an " "anonymous memory map if Linux kernel supports ``PR_SET_VMA_ANON_NAME`` " "(Linux 5.17 or newer). Patch by Donghee Na." msgstr "" -#: ../NEWS:4718 +#: ../NEWS:4805 msgid "" ":gh:`139971`: :mod:`pydoc`: Ensure that the link to the online documentation " "of a :term:`stdlib` module is correct." msgstr "" -#: ../NEWS:4721 +#: ../NEWS:4808 msgid "" ":gh:`124098`: Fix issue where methods in handlers that lacked the protocol " "name but matched a valid base handler method (e.g., ``_open()`` or " @@ -8038,83 +8166,83 @@ msgid "" "OpenerDirector`'s handlers. Contributed by Andrea Mattei." msgstr "" -#: ../NEWS:4727 +#: ../NEWS:4814 msgid "" ":gh:`136282`: Add support for :const:`~configparser.UNNAMED_SECTION` when " "creating a section via the mapping protocol access" msgstr "" -#: ../NEWS:4733 +#: ../NEWS:4820 msgid "" ":gh:`143057`: Avoid locking in :c:func:`PyTraceMalloc_Track` and :c:func:" "`PyTraceMalloc_Untrack` when :mod:`tracemalloc` is not enabled." msgstr "" -#: ../NEWS:4736 +#: ../NEWS:4823 msgid "" ":gh:`139109`: Add missing terminator in certain cases when tracing in the " "new JIT compiler." msgstr "" -#: ../NEWS:4739 +#: ../NEWS:4826 msgid "" ":gh:`142961`: Fix a segfault in the JIT when constant folding ``len(tuple)``." msgstr "" -#: ../NEWS:4741 +#: ../NEWS:4828 msgid ":gh:`142776`: Fix a file descriptor leak in import.c" msgstr "" -#: ../NEWS:4743 +#: ../NEWS:4830 msgid ":gh:`139757`: Fix building JIT stencils on free-threaded builds." msgstr "" -#: ../NEWS:4745 +#: ../NEWS:4832 msgid "" ":gh:`129068`: Make concurrent iteration over the same range iterator thread-" "safe in the free threading build." msgstr "" -#: ../NEWS:4748 +#: ../NEWS:4835 msgid "" ":gh:`142543`: Fix a stack overflow on Clang JIT build configurations with " "full LTO." msgstr "" -#: ../NEWS:4751 +#: ../NEWS:4838 msgid ":gh:`142448`: Fix a bug when using monitoring with the JIT." msgstr "" -#: ../NEWS:4753 +#: ../NEWS:4840 msgid "" ":gh:`142766`: Clear the frame of a generator when :meth:`generator.close` is " "called." msgstr "" -#: ../NEWS:4756 +#: ../NEWS:4843 msgid "" ":gh:`134584`: Eliminate redundant refcounting from " "``_LOAD_ATTR_INSTANCE_VALUE``." msgstr "" -#: ../NEWS:4759 +#: ../NEWS:4846 msgid "" ":gh:`134584`: Eliminate redundant refcounting from ``_STORE_ATTR_WITH_HINT``." msgstr "" -#: ../NEWS:4761 +#: ../NEWS:4848 msgid "" ":gh:`142476`: Fix a memory leak in the experimental Tier 2 optimizer when " "creating executors. Patched by Shamil Abdulaev." msgstr "" -#: ../NEWS:4764 +#: ../NEWS:4851 msgid "" ":gh:`100964`: Fix reference cycle in exhausted generator frames. Patch by " "Savannah Ostrowski." msgstr "" -#: ../NEWS:4767 +#: ../NEWS:4854 msgid "" ":gh:`139922`: Allow building CPython with the tail calling interpreter on " "Visual Studio 2026 MSVC. This provides a performance gain over the prior " @@ -8122,15 +8250,15 @@ msgid "" "help from the MSVC team including Hulon Jenkins." msgstr "" -#: ../NEWS:4774 +#: ../NEWS:4861 msgid "Python 3.15.0 alpha 3" msgstr "" -#: ../NEWS:4776 +#: ../NEWS:4863 msgid "*Release date: 2025-12-16*" msgstr "" -#: ../NEWS:4781 +#: ../NEWS:4868 msgid "" ":gh:`141692`: Each slice of an iOS XCframework now contains a ``lib`` folder " "that contains a symlink to the libpython dylib. This allows binary modules " @@ -8138,33 +8266,33 @@ msgid "" "linking." msgstr "" -#: ../NEWS:4789 +#: ../NEWS:4876 msgid "" ":gh:`140381`: Fix flaky test_profiling tests on i686 and s390x architectures " "by increasing slow_fibonacci call frequency from every 5th iteration to " "every 2nd iteration." msgstr "" -#: ../NEWS:4793 +#: ../NEWS:4880 msgid "" ":gh:`140210`: Make ``test_sysconfig.test_parse_makefile_renamed_vars`` less " "fragile by clearing the environment variables before parsing the Makefile." msgstr "" -#: ../NEWS:4799 +#: ../NEWS:4886 msgid "" ":gh:`142145`: Remove quadratic behavior in ``xml.minidom`` node ID cache " "clearing." msgstr "" -#: ../NEWS:4802 +#: ../NEWS:4889 msgid "" ":gh:`42400`: Fix buffer overflow in ``_Py_wrealpath()`` for paths exceeding " "``MAXPATHLEN`` bytes by using dynamic memory allocation instead of fixed-" "size buffer. Patch by Shamil Abdulaev." msgstr "" -#: ../NEWS:4806 +#: ../NEWS:4893 msgid "" ":gh:`119451`: Fix a potential memory denial of service in the :mod:`http." "client` module. When connecting to a malicious server, it could cause an " @@ -8173,7 +8301,7 @@ msgid "" "processes or containers, or even system crashes." msgstr "" -#: ../NEWS:4812 +#: ../NEWS:4899 msgid "" ":gh:`119342`: Fix a potential memory denial of service in the :mod:" "`plistlib` module. When reading a Plist file received from untrusted source, " @@ -8182,7 +8310,7 @@ msgid "" "(OOM) killed processes or containers, or even system crashes." msgstr "" -#: ../NEWS:4821 +#: ../NEWS:4908 msgid "" ":gh:`142754`: Add the *ownerDocument* attribute to :mod:`xml.dom.minidom` " "elements and attributes created by directly instantiating the ``Element`` or " @@ -8191,38 +8319,38 @@ msgid "" "used instead." msgstr "" -#: ../NEWS:4827 +#: ../NEWS:4914 msgid "" ":gh:`142594`: Fix crash in ``TextIOWrapper.close()`` when the underlying " "buffer's ``closed`` property calls :meth:`~io.TextIOBase.detach`." msgstr "" -#: ../NEWS:4830 +#: ../NEWS:4917 msgid "" ":gh:`76007`: Deprecate ``__version__`` from :mod:`ctypes`. Patch by Hugo van " "Kemenade." msgstr "" -#: ../NEWS:4833 +#: ../NEWS:4920 msgid "" ":gh:`76007`: Deprecate ``__version__`` from :mod:`wsgiref.simple_server`. " "Patch by Hugo van Kemenade." msgstr "" -#: ../NEWS:4836 +#: ../NEWS:4923 msgid "" ":gh:`142651`: :mod:`unittest.mock`: fix a thread safety issue where :attr:" "`Mock.call_count ` may return inaccurate " "values when the mock is called concurrently from multiple threads." msgstr "" -#: ../NEWS:4841 +#: ../NEWS:4928 msgid "" ":gh:`76007`: Deprecate ``__version__`` from :mod:`http.server`. Patch by " "Hugo van Kemenade." msgstr "" -#: ../NEWS:4844 +#: ../NEWS:4931 msgid "" ":gh:`138122`: Add ``--subprocesses`` flag to :mod:`profiling.sampling` CLI " "to automatically profile subprocesses spawned by the target. When enabled, " @@ -8233,46 +8361,46 @@ msgid "" "by Pablo Galindo." msgstr "" -#: ../NEWS:4852 +#: ../NEWS:4939 msgid "" ":gh:`142595`: Added type check during initialization of the :mod:`decimal` " "module to prevent a crash in case of broken stdlib. Patch by Sergey B " "Kirpichev." msgstr "" -#: ../NEWS:4856 +#: ../NEWS:4943 msgid "" ":gh:`142556`: Fix crash when a task gets re-registered during finalization " "in :mod:`asyncio`. Patch by Kumar Aditya." msgstr "" -#: ../NEWS:4859 +#: ../NEWS:4946 msgid "" ":gh:`138122`: Add ``--mode=exception`` to the sampling profiler to capture " "samples only from threads with an active exception, useful for analyzing " "exception handling overhead. Patch by Pablo Galindo." msgstr "" -#: ../NEWS:4863 +#: ../NEWS:4950 msgid "" ":gh:`142539`: :mod:`traceback`: Fix location of carets in :exc:" "`SyntaxError`\\s when the source contains wide characters." msgstr "" -#: ../NEWS:4866 +#: ../NEWS:4953 msgid "" ":gh:`123241`: Avoid reference count operations in garbage collection of :mod:" "`ctypes` objects." msgstr "" -#: ../NEWS:4869 +#: ../NEWS:4956 msgid "" ":gh:`142451`: :mod:`hmac`: correctly copy :class:`~hmac.HMAC` attributes for " "objects copied through :meth:`HMAC.copy() `. Patch by " "Bénédikt Tran." msgstr "" -#: ../NEWS:4873 +#: ../NEWS:4960 msgid "" ":gh:`138122`: The ``profiling.sampling`` flamegraph profiler now supports " "inverted flamegraph view that aggregates all leaf nodes. In a standard " @@ -8285,17 +8413,17 @@ msgid "" "called from." msgstr "" -#: ../NEWS:4883 +#: ../NEWS:4970 msgid "" ":gh:`112527`: The help text for required options in :mod:`argparse` no " "longer extended with \" (default: None)\"." msgstr "" -#: ../NEWS:4886 +#: ../NEWS:4973 msgid ":gh:`142438`: Fixed a possible leaked GIL in _PySSL_keylog_callback." msgstr "" -#: ../NEWS:4888 +#: ../NEWS:4975 msgid "" ":gh:`138122`: Add bytecode-level instruction profiling to the sampling " "profiler via the new ``--opcodes`` flag. When enabled, the profiler captures " @@ -8304,20 +8432,20 @@ msgid "" "flamegraph, gecko, and live output formats. Patch by Pablo Galindo" msgstr "" -#: ../NEWS:4895 +#: ../NEWS:4982 msgid "" ":gh:`142389`: Add backtick markup support in :mod:`argparse` description and " "epilog text to highlight inline code when color output is enabled." msgstr "" -#: ../NEWS:4898 +#: ../NEWS:4985 msgid "" ":gh:`142346`: Fix usage formatting for mutually exclusive groups in :mod:" "`argparse` when they are preceded by positional arguments or followed or " "intermixed with other optional arguments." msgstr "" -#: ../NEWS:4902 +#: ../NEWS:4989 msgid "" ":gh:`142374`: Fix cumulative percentage calculation for recursive functions " "in the new sampling profiler. When profiling recursive functions, cumulative " @@ -8329,70 +8457,70 @@ msgid "" "Patch by Pablo Galindo." msgstr "" -#: ../NEWS:4911 +#: ../NEWS:4998 msgid "" ":gh:`142315`: Pdb can now run scripts from anonymous pipes used in process " "substitution. Patch by Bartosz Sławecki." msgstr "" -#: ../NEWS:4914 +#: ../NEWS:5001 msgid "" ":gh:`64532`: Subparser help now includes required optional arguments from " "the parent parser in the usage, making it clearer what arguments are needed " "to run a subcommand. Patch by Savannah Ostrowski." msgstr "" -#: ../NEWS:4918 +#: ../NEWS:5005 msgid "" ":gh:`142207`: Fix: profiling.sampling may cause assertion ``!(has_gil && " "gil_requested)``" msgstr "" -#: ../NEWS:4921 +#: ../NEWS:5008 msgid "" ":gh:`142332`: Fix usage formatting for positional arguments in mutually " "exclusive groups in :mod:`argparse`. in :mod:`argparse`." msgstr "" -#: ../NEWS:4924 +#: ../NEWS:5011 msgid "" ":gh:`142282`: Fix :func:`winreg.QueryValueEx` to not accidentally read " "garbage buffer under race condition." msgstr "" -#: ../NEWS:4927 +#: ../NEWS:5014 msgid "" ":gh:`142318`: Fix typing ``'q'`` at the help of the interactive tachyon " "profiler exiting the profiler." msgstr "" -#: ../NEWS:4930 +#: ../NEWS:5017 msgid "" ":gh:`75949`: Fix :mod:`argparse` to preserve ``|`` separators in mutually " "exclusive groups when the usage line wraps due to length." msgstr "" -#: ../NEWS:4933 +#: ../NEWS:5020 msgid "" ":gh:`142267`: Improve :mod:`argparse` performance by caching the formatter " "used for argument validation." msgstr "" -#: ../NEWS:4936 +#: ../NEWS:5023 msgid "" ":gh:`139862`: Remove ``color`` parameter from :class:`!argparse." "HelpFormatter` constructor. Color is controlled by :class:`~argparse." "ArgumentParser`." msgstr "" -#: ../NEWS:4940 +#: ../NEWS:5027 msgid "" ":gh:`68552`: ``MisplacedEnvelopeHeaderDefect`` and ``Missing header name`` " "defects are now correctly passed to the ``handle_defect`` method of " "``policy`` in :class:`~email.parser.FeedParser`." msgstr "" -#: ../NEWS:4944 +#: ../NEWS:5031 msgid "" ":gh:`142206`: The resource tracker in the :mod:`multiprocessing` module can " "now understand messages from older versions of itself. This avoids issues " @@ -8400,37 +8528,37 @@ msgid "" "upgrades are not tested.)" msgstr "" -#: ../NEWS:4949 +#: ../NEWS:5036 msgid "" ":gh:`142214`: Fix two regressions in :mod:`dataclasses` in Python 3.14.1 " "related to annotations." msgstr "" -#: ../NEWS:4952 +#: ../NEWS:5039 msgid "" "An exception is no longer raised if ``slots=True`` is used and the " "``__init__`` method does not have an ``__annotate__`` attribute (likely " "because ``init=False`` was used)." msgstr "" -#: ../NEWS:4956 +#: ../NEWS:5043 msgid "" "An exception is no longer raised if annotations are requested on the " "``__init__`` method and one of the fields is not present in the class " "annotations. This can occur in certain dynamic scenarios." msgstr "" -#: ../NEWS:4960 ../NEWS:32140 +#: ../NEWS:5047 ../NEWS:32227 msgid "Patch by Jelle Zijlstra." msgstr "" -#: ../NEWS:4962 +#: ../NEWS:5049 msgid "" ":gh:`142203`: Remove the *debug_override* parameter from :func:`importlib." "util.cache_from_source` which has been deprecated since Python 3.5." msgstr "" -#: ../NEWS:4966 +#: ../NEWS:5053 msgid "" ":gh:`138122`: The ``_remote_debugging`` module now implements frame caching " "in the ``RemoteUnwinder`` class to reduce memory reads when profiling remote " @@ -8439,26 +8567,26 @@ msgid "" "performance for deep call stacks." msgstr "" -#: ../NEWS:4972 +#: ../NEWS:5059 msgid "" ":gh:`116738`: Fix :mod:`cmath` data race when initializing trigonometric " "tables with subinterpreters." msgstr "" -#: ../NEWS:4975 +#: ../NEWS:5062 msgid "" ":gh:`141982`: Allow :mod:`pdb` to set breakpoints on async functions with " "function names." msgstr "" -#: ../NEWS:4978 +#: ../NEWS:5065 msgid "" ":gh:`74389`: When the stdin being used by a :class:`subprocess.Popen` " "instance is closed, this is now ignored in :meth:`subprocess.Popen." "communicate` instead of leaving the class in an inconsistent state." msgstr "" -#: ../NEWS:4983 +#: ../NEWS:5070 msgid "" ":gh:`87512`: Fix :func:`subprocess.Popen.communicate` timeout handling on " "Windows when writing large input. Previously, the timeout was ignored during " @@ -8467,13 +8595,13 @@ msgid "" "background thread, allowing the timeout to be properly enforced." msgstr "" -#: ../NEWS:4990 +#: ../NEWS:5077 msgid "" ":gh:`141939`: Add color to all interpolated values in :mod:`argparse` help, " "like ``%(default)s`` or ``%(choices)s``. Patch by Alex Prengère." msgstr "" -#: ../NEWS:4993 +#: ../NEWS:5080 msgid "" ":gh:`141473`: When :meth:`subprocess.Popen.communicate` was called with " "*input* and a *timeout* and is called for a second time after a :exc:" @@ -8481,63 +8609,63 @@ msgid "" "should no longer hang." msgstr "" -#: ../NEWS:4998 +#: ../NEWS:5085 msgid "" ":gh:`141999`: Correctly allow :exc:`KeyboardInterrupt` to stop the process " "when using :mod:`!profiling.sampling`." msgstr "" -#: ../NEWS:5001 +#: ../NEWS:5088 msgid "" ":gh:`142006`: Fix a bug in the :mod:`email.policy.default` folding algorithm " "which incorrectly resulted in a doubled newline when a line ending at " "exactly max_line_length was followed by an unfoldable token." msgstr "" -#: ../NEWS:5005 +#: ../NEWS:5092 msgid "" ":gh:`141968`: Remove data copy from :mod:`re` compilation of regexes with " "large charsets by using :meth:`bytearray.take_bytes`." msgstr "" -#: ../NEWS:5008 +#: ../NEWS:5095 msgid "" ":gh:`141968`: Remove data copy from :mod:`encodings.idna` :meth:`~codecs." "Codec.encode` and :meth:`~codecs.IncrementalEncoder.encode` by using :meth:" "`bytearray.take_bytes`." msgstr "" -#: ../NEWS:5012 +#: ../NEWS:5099 msgid "" ":gh:`141968`: Remove data copy from :mod:`codecs` ``punycode`` encoding by " "using :meth:`bytearray.take_bytes`." msgstr "" -#: ../NEWS:5015 +#: ../NEWS:5102 msgid "" ":gh:`141968`: Remove data copy from :func:`wave.Wave_read.readframes` and :" "func:`wave.Wave_write.writeframes` by using :meth:`bytearray.take_bytes`." msgstr "" -#: ../NEWS:5018 +#: ../NEWS:5105 msgid "" ":gh:`141968`: Remove a data copy from :func:`base64.b32decode` and :func:" "`base64.b32encode` by using :meth:`bytearray.take_bytes`." msgstr "" -#: ../NEWS:5021 +#: ../NEWS:5108 msgid "" ":gh:`59000`: Fix :mod:`pdb` breakpoint resolution for class methods when the " "module defining the class is not imported." msgstr "" -#: ../NEWS:5024 +#: ../NEWS:5111 msgid "" ":gh:`116738`: Fix thread safety issue with :mod:`re` scanner objects in free-" "threaded builds." msgstr "" -#: ../NEWS:5027 +#: ../NEWS:5114 msgid "" ":gh:`138122`: The ``profiling.sampling`` flamegraph profiler now displays " "thread status statistics showing the percentage of time threads spend " @@ -8547,55 +8675,55 @@ msgid "" "per-thread metrics." msgstr "" -#: ../NEWS:5034 +#: ../NEWS:5121 msgid "" ":gh:`141781`: Fixed an issue where pdb.line_prefix assignment was ignored if " "assigned after the module was imported." msgstr "" -#: ../NEWS:5037 +#: ../NEWS:5124 msgid "" ":gh:`141863`: Update :ref:`asyncio-streams` to use :meth:`bytearray." "take_bytes` for a over 10% performance improvement on pyperformance " "asyncio_tcp benchmark." msgstr "" -#: ../NEWS:5041 +#: ../NEWS:5128 msgid ":gh:`141817`: Add :data:`!socket.IPV6_HDRINCL` constant." msgstr "" -#: ../NEWS:5043 +#: ../NEWS:5130 msgid "" ":gh:`105836`: Fix :meth:`asyncio.run_coroutine_threadsafe` leaving " "underlying cancelled asyncio task running." msgstr "" -#: ../NEWS:5046 +#: ../NEWS:5133 msgid "" ":gh:`141570`: Support :term:`file-like object` raising :exc:`OSError` from :" "meth:`~io.IOBase.fileno` in color detection (``_colorize.can_colorize()``). " "This can occur when ``sys.stdout`` is redirected." msgstr "" -#: ../NEWS:5051 +#: ../NEWS:5138 msgid "" ":gh:`141679`: Add colour to defaults in :mod:`argparse` help. Patch by Hugo " "van Kemenade." msgstr "" -#: ../NEWS:5054 +#: ../NEWS:5141 msgid "" ":gh:`141686`: Break reference cycles created by each call to :func:`json." "dump` or :meth:`json.JSONEncoder.iterencode`." msgstr "" -#: ../NEWS:5057 +#: ../NEWS:5144 msgid "" ":gh:`141659`: Fix bad file descriptor errors from ``_posixsubprocess`` on " "AIX." msgstr "" -#: ../NEWS:5060 +#: ../NEWS:5147 msgid "" ":gh:`141645`: Add a new ``--live`` mode to the tachyon profiler in :mod:`!" "profiling.sampling` module. This mode consist of a live TUI that displays " @@ -8603,31 +8731,31 @@ msgid "" "``top``. Patch by Pablo Galindo" msgstr "" -#: ../NEWS:5065 +#: ../NEWS:5152 msgid "" ":gh:`141615`: Check ``stdin`` instead of ``stdout`` for ``use_rawinput`` in :" "mod:`pdb`." msgstr "" -#: ../NEWS:5068 +#: ../NEWS:5155 msgid "" ":gh:`69113`: Fix :mod:`doctest` to correctly report line numbers for " "doctests in ``__test__`` dictionary when formatted as triple-quoted strings " "by finding unique lines in the string and matching them in the source file." msgstr "" -#: ../NEWS:5072 +#: ../NEWS:5159 msgid ":gh:`141600`: Fix musl version detection on Void Linux." msgstr "" -#: ../NEWS:5074 +#: ../NEWS:5161 msgid "" ":gh:`48752`: Add :func:`readline.get_pre_input_hook` function to retrieve " "the current pre-input hook. This allows applications to save and restore the " "hook without overwriting user settings. Patch by Sanyam Khurana." msgstr "" -#: ../NEWS:5078 +#: ../NEWS:5165 msgid "" ":gh:`141565`: Add async-aware profiling to the Tachyon sampling profiler. " "The profiler now reconstructs and displays async task hierarchies in " @@ -8635,34 +8763,34 @@ msgid "" "Ostrowski and Pablo Galindo Salgado." msgstr "" -#: ../NEWS:5083 +#: ../NEWS:5170 msgid "" ":gh:`60107`: Remove a copy from :meth:`io.RawIOBase.read`. If the underlying " "I/O class keeps a reference to the mutable memory, raise a :exc:" "`BufferError`." msgstr "" -#: ../NEWS:5087 +#: ../NEWS:5174 msgid "" ":gh:`116738`: Make csv module thread-safe on the :term:`free threaded ` build." msgstr "" -#: ../NEWS:5090 +#: ../NEWS:5177 msgid "" ":gh:`140911`: :mod:`collections`: Ensure that the methods ``UserString." "rindex()`` and ``UserString.index()`` accept :class:`collections.UserString` " "instances as the sub argument." msgstr "" -#: ../NEWS:5094 +#: ../NEWS:5181 msgid "" ":gh:`140875`: Fix handling of unclosed character references (named and " "numerical) followed by the end of file in :class:`html.parser.HTMLParser` " "with ``convert_charrefs=False``." msgstr "" -#: ../NEWS:5098 +#: ../NEWS:5185 msgid "" ":gh:`140677`: Add heatmap visualization mode to the Tachyon sampling " "profiler. The new ``--heatmap`` output format provides a line-by-line view " @@ -8670,19 +8798,19 @@ msgid "" "interactive call graph navigation between callers and callees." msgstr "" -#: ../NEWS:5103 +#: ../NEWS:5190 msgid "" ":gh:`139946`: Distinguish stdout and stderr when colorizing output in " "argparse module." msgstr "" -#: ../NEWS:5106 +#: ../NEWS:5193 msgid "" ":gh:`76007`: :mod:`pydoc`: Fix :exc:`DeprecationWarning` being raised when " "generating doc for :term:`stdlib` modules." msgstr "" -#: ../NEWS:5109 +#: ../NEWS:5196 msgid "" ":gh:`138697`: Fix inferring *dest* from a single-dash long option in :mod:" "`argparse`. If a short option and a single-dash long option are passed to :" @@ -8690,26 +8818,26 @@ msgid "" "option." msgstr "" -#: ../NEWS:5114 +#: ../NEWS:5201 msgid "" ":gh:`138525`: Add support for single-dash long options and alternate prefix " "characters in :class:`argparse.BooleanOptionalAction`." msgstr "" -#: ../NEWS:5117 +#: ../NEWS:5204 msgid "" ":gh:`79986`: Add parsing for ``References`` and ``In-Reply-To`` headers to " "the :mod:`email` library that parses the header content as lists of message " "id tokens. This prevents them from being folded incorrectly." msgstr "" -#: ../NEWS:5121 +#: ../NEWS:5208 msgid "" ":gh:`135559`: Flag: a ``dir()`` on a ``Flag`` enumeration now shows non-" "canonical members. (i.e. aliases)." msgstr "" -#: ../NEWS:5124 +#: ../NEWS:5211 msgid "" ":gh:`134453`: Fixed :func:`subprocess.Popen.communicate` ``input=`` handling " "of :class:`memoryview` instances that were non-byte shaped on POSIX " @@ -8717,11 +8845,11 @@ msgid "" "truncating the input. Windows platforms did not have this bug." msgstr "" -#: ../NEWS:5129 +#: ../NEWS:5216 msgid ":gh:`127930`: Add ``__all__`` to :mod:`tkinter.simpledialog`." msgstr "" -#: ../NEWS:5131 +#: ../NEWS:5218 msgid "" ":gh:`115952`: Fix a potential memory denial of service in the :mod:`pickle` " "module. When reading a pickled data received from untrusted source, it could " @@ -8732,12 +8860,12 @@ msgid "" "containers, or even system crashes." msgstr "" -#: ../NEWS:5139 +#: ../NEWS:5226 msgid "" ":issue:`40350`: Fix support for namespace packages in :mod:`modulefinder`." msgstr "" -#: ../NEWS:5144 +#: ../NEWS:5231 msgid "" ":gh:`141994`: :mod:`xml.sax.handler`: Make Documentation of :data:`xml.sax." "handler.feature_external_ges` warn of opening up to `external entity attacks " @@ -8745,43 +8873,43 @@ msgid "" "Sebastian Pipping." msgstr "" -#: ../NEWS:5153 +#: ../NEWS:5240 msgid "" ":gh:`134584`: Eliminate redundant refcounting from " "``_STORE_ATTR_INSTANCE_VALUE``." msgstr "" -#: ../NEWS:5156 +#: ../NEWS:5243 msgid "" ":gh:`142718`: JIT: Fix segfault caused by not flushing the stack to memory " "at side exits." msgstr "" -#: ../NEWS:5159 +#: ../NEWS:5246 msgid "" ":gh:`142737`: Tracebacks will be displayed in fallback mode even if :func:" "`io.open` is lost. Previously, this would crash the interpreter. Patch by " "Bartosz Sławecki." msgstr "" -#: ../NEWS:5163 +#: ../NEWS:5250 msgid "" ":gh:`116738`: Make the attributes in :mod:`bz2` thread-safe on the :term:" "`free threaded ` build." msgstr "" -#: ../NEWS:5166 +#: ../NEWS:5253 msgid "" ":gh:`134584`: Eliminate redundant refcounting from ``_CALL_LIST_APPEND``." msgstr "" -#: ../NEWS:5168 +#: ../NEWS:5255 msgid "" ":gh:`142554`: Fix a crash in :func:`divmod` when :func:`!_pylong.int_divmod` " "does not return a tuple of length two exactly. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:5171 +#: ../NEWS:5258 msgid "" ":gh:`142531`: Fix a free-threaded GC performance regression. If there are " "many untracked tuples, the GC will run too often, resulting in poor " @@ -8790,25 +8918,25 @@ msgid "" "free-threaded GC must scan those too." msgstr "" -#: ../NEWS:5177 +#: ../NEWS:5264 msgid "" ":gh:`142402`: Fix reference counting when adjacent literal parts are merged " "while constructing :class:`string.templatelib.Template`, preventing the " "displaced string object from leaking." msgstr "" -#: ../NEWS:5181 +#: ../NEWS:5268 msgid "" ":gh:`116738`: Make the attributes in :mod:`zlib` thread-safe on the :term:" "`free threaded ` build." msgstr "" -#: ../NEWS:5184 +#: ../NEWS:5271 msgid "" ":gh:`142343`: Fix SIGILL crash on m68k due to incorrect assembly constraint." msgstr "" -#: ../NEWS:5186 +#: ../NEWS:5273 msgid "" ":gh:`142236`: Improve the \"Perhaps you forgot a comma?\" syntax error for " "multi-line string concatenations to point to the last string instead of the " @@ -8816,7 +8944,7 @@ msgid "" "Galindo." msgstr "" -#: ../NEWS:5191 +#: ../NEWS:5278 msgid "" ":gh:`142236`: Fix incorrect keyword suggestions for syntax errors in :mod:" "`traceback`. The keyword typo suggestion mechanism would incorrectly suggest " @@ -8824,13 +8952,13 @@ msgid "" "containing an actual typo. Patch by Pablo Galindo." msgstr "" -#: ../NEWS:5196 +#: ../NEWS:5283 msgid "" ":gh:`142305`: Decrease the size of the generated stencils and the runtime " "JIT code. Patch by Diego Russo." msgstr "" -#: ../NEWS:5199 +#: ../NEWS:5286 msgid "" ":gh:`135379`: Implement a limited form of register allocation known as \"top " "of stack caching\" in the JIT. It works by keeping 0-3 of the top items in " @@ -8840,78 +8968,78 @@ msgid "" "spilling or reloading values when needed." msgstr "" -#: ../NEWS:5206 +#: ../NEWS:5293 msgid "" ":gh:`142276`: Fix missing type watcher when promoting attribute loads to " "constants in the JIT. Patch by Ken Jin. Reproducer by Yuancheng Jiang." msgstr "" -#: ../NEWS:5209 +#: ../NEWS:5296 msgid "" ":gh:`142218`: Fix crash when inserting into a split table dictionary with a " "non :class:`str` key that matches an existing key." msgstr "" -#: ../NEWS:5212 +#: ../NEWS:5299 msgid "" ":gh:`141976`: Check against abstract stack overflow in the JIT optimizer." msgstr "" -#: ../NEWS:5214 +#: ../NEWS:5301 msgid "" ":gh:`97850`: Remove all ``*.load_module()`` usage and definitions from the " "import system and importlib. The method has been deprecated in favor of " "``importlib.abc.Loader.exec_module()`` since Python 3.4." msgstr "" -#: ../NEWS:5218 +#: ../NEWS:5305 msgid "" ":gh:`142048`: Fix quadratically increasing garbage collection delays in free-" "threaded build." msgstr "" -#: ../NEWS:5221 +#: ../NEWS:5308 msgid ":gh:`65961`: Stop setting ``__cached__`` on modules." msgstr "" -#: ../NEWS:5223 +#: ../NEWS:5310 msgid "" ":gh:`141770`: Annotate anonymous mmap usage only when supported by the Linux " "kernel and if ``-X dev`` is used or Python is built in debug mode. Patch by " "Donghee Na." msgstr "" -#: ../NEWS:5227 +#: ../NEWS:5314 msgid "" ":gh:`142029`: Raise :exc:`ModuleNotFoundError` instead of crashing when a " "nonexistent module is used as a name in ``_imp.create_builtin()``." msgstr "" -#: ../NEWS:5230 +#: ../NEWS:5317 msgid "" ":gh:`142029`: Raise :exc:`ValueError` instead of crashing when empty string " "is used as a name in ``_imp.create_builtin()``." msgstr "" -#: ../NEWS:5233 +#: ../NEWS:5320 msgid "" ":gh:`141976`: Protect against specialization failures in the tracing JIT " "compiler for performance reasons." msgstr "" -#: ../NEWS:5236 +#: ../NEWS:5323 msgid "" ":gh:`141861`: Fix invalid memory read in the ``ENTER_EXECUTOR`` instruction." msgstr "" -#: ../NEWS:5238 +#: ../NEWS:5325 msgid "" ":gh:`141930`: When importing a module, use Python's regular file object to " "ensure that writes to ``.pyc`` files are complete or an appropriate error is " "raised." msgstr "" -#: ../NEWS:5242 +#: ../NEWS:5329 msgid "" ":gh:`138122`: Add incomplete sample detection to prevent corrupted profiling " "data. Each thread state now contains an embedded base frame (sentinel at the " @@ -8922,38 +9050,38 @@ msgid "" "included as spurious data." msgstr "" -#: ../NEWS:5250 +#: ../NEWS:5337 msgid "" ":gh:`120158`: Fix inconsistent state when enabling or disabling monitoring " "events too many times." msgstr "" -#: ../NEWS:5253 +#: ../NEWS:5340 msgid "" ":gh:`140638`: Expose a ``\"candidates\"`` stat in :func:`gc.get_stats` and :" "data:`gc.callbacks`." msgstr "" -#: ../NEWS:5256 +#: ../NEWS:5343 msgid "" ":gh:`141780`: Fix :c:macro:`Py_mod_gil` with API added in :pep:`793`: :c:" "func:`!PyModule_FromSlotsAndSpec` and ``PyModExport`` hooks" msgstr "" -#: ../NEWS:5259 +#: ../NEWS:5346 msgid "" ":gh:`141732`: Ensure the :meth:`~object.__repr__` for :exc:`ExceptionGroup` " "and :exc:`BaseExceptionGroup` does not change when the exception sequence " "that was original passed in to its constructor is subsequently mutated." msgstr "" -#: ../NEWS:5263 +#: ../NEWS:5350 msgid "" ":gh:`140638`: Expose a ``\"duration\"`` stat in :func:`gc.get_stats` and :" "data:`gc.callbacks`." msgstr "" -#: ../NEWS:5266 +#: ../NEWS:5353 msgid "" ":gh:`139653`: Only raise a ``RecursionError`` or trigger a fatal error if " "the stack pointer is both below the limit pointer *and* above the stack " @@ -8961,68 +9089,68 @@ msgid "" "positives when user-space threads swap stacks." msgstr "" -#: ../NEWS:5271 +#: ../NEWS:5358 msgid "" ":gh:`41779`: Allowed defining the *__dict__* and *__weakref__* :ref:" "`__slots__ ` for any class." msgstr "" -#: ../NEWS:5274 +#: ../NEWS:5361 msgid "" ":gh:`139103`: Improve multithreaded scaling of dataclasses on the free-" "threaded build." msgstr "" -#: ../NEWS:5277 +#: ../NEWS:5364 msgid "" ":gh:`141589`: Change ``backoff counter`` to use prime numbers instead of " "powers of 2. Use only 3 bits for ``counter`` and 13 bits for ``value``. This " "allows to support values up to 8191. Patch by Mikhail Efimov." msgstr "" -#: ../NEWS:5281 +#: ../NEWS:5368 msgid "" ":gh:`137007`: Fix a bug during JIT compilation failure which caused garbage " "collection debug assertions to fail." msgstr "" -#: ../NEWS:5284 +#: ../NEWS:5371 msgid "" ":gh:`132657`: For the free-threaded build, avoid locking the :class:`set` " "object for the ``__contains__`` method." msgstr "" -#: ../NEWS:5287 +#: ../NEWS:5374 msgid ":gh:`134584`: Eliminate redundant refcounting from ``_CALL_STR_1``." msgstr "" -#: ../NEWS:5289 +#: ../NEWS:5376 msgid ":gh:`134584`: Eliminate redundant refcounting from ``_CALL_BUILTIN_O``." msgstr "" -#: ../NEWS:5291 +#: ../NEWS:5378 msgid "" ":gh:`134584`: Eliminate redundant refcounting from ``_CALL_TUPLE_1``. Patch " "by Noam Cohen" msgstr "" -#: ../NEWS:5297 +#: ../NEWS:5384 msgid "" ":gh:`142589`: Fix :c:func:`PyUnstable_Object_IsUniqueReferencedTemporary()` " "handling of tagged ints on the interpreter stack." msgstr "" -#: ../NEWS:5300 +#: ../NEWS:5387 msgid "" ":gh:`142571`: :c:func:`!PyUnstable_CopyPerfMapFile` now checks that opening " "the file succeeded before flushing." msgstr "" -#: ../NEWS:5303 +#: ../NEWS:5390 msgid ":gh:`142225`: Fixed the :c:macro:`PyABIInfo_VAR` macro." msgstr "" -#: ../NEWS:5305 +#: ../NEWS:5392 msgid "" ":gh:`141049`: :c:func:`!_PyObject_CallMethodId`, :c:func:`!" "_PyObject_GetAttrId` and :c:func:`!_PyUnicode_FromId` are deprecated since " @@ -9032,13 +9160,13 @@ msgid "" "by Victor Stinner." msgstr "" -#: ../NEWS:5312 +#: ../NEWS:5399 msgid "" ":gh:`142163`: Fix the ``HAVE_THREAD_LOCAL`` macro being defined without the " "``Py_BUILD_CORE`` macro set after including :file:`Python.h`." msgstr "" -#: ../NEWS:5315 +#: ../NEWS:5402 msgid "" ":gh:`137422`: Fix :term:`free threading` race condition in :c:func:" "`PyImport_AddModuleRef`. It was previously possible for two calls to the " @@ -9046,35 +9174,35 @@ msgid "" "`sys.modules`." msgstr "" -#: ../NEWS:5320 +#: ../NEWS:5407 msgid ":gh:`141726`: Add :c:func:`PyDict_SetDefaultRef` to the Stable ABI." msgstr "" -#: ../NEWS:5322 +#: ../NEWS:5409 msgid "" ":gh:`140042`: Removed the sqlite3_shutdown call that could cause closing " "connections for sqlite when used with multiple sub interpreters." msgstr "" -#: ../NEWS:5325 +#: ../NEWS:5412 msgid "" ":gh:`141070`: Add :c:func:`!PyUnstable_Object_Dump` to dump an object to " "``stderr``. It should only be used for debugging. Patch by Victor Stinner." msgstr "" -#: ../NEWS:5328 +#: ../NEWS:5415 msgid "" ":gh:`139165`: Expose the functions :c:func:`Py_SIZE`, :c:func:`Py_IS_TYPE` " "and :c:func:`Py_SET_SIZE` in the Stable ABI." msgstr "" -#: ../NEWS:5334 +#: ../NEWS:5421 msgid "" ":gh:`131372`: Add ``LDVERSION`` and ``EXE`` to the ``base_interpreter`` " "value of ``build-details.json``." msgstr "" -#: ../NEWS:5337 +#: ../NEWS:5424 msgid "" ":gh:`142454`: When calculating the digest of the JIT stencils input, sort " "the hashed files by filenames before adding their content to the hasher. " @@ -9082,33 +9210,33 @@ msgid "" "independent on filesystem order." msgstr "" -#: ../NEWS:5342 +#: ../NEWS:5429 msgid "" ":gh:`131372`: ``build-details.py`` will only be installed as part of the " "main install (``make install``). ``make altinstall`` will no longer include " "it." msgstr "" -#: ../NEWS:5345 +#: ../NEWS:5432 msgid "" ":gh:`142234`: Allow ``--enable-wasm-dynamic-linking`` for WASI. While " "CPython doesn't directly support it so external/downstream users do not have " "to patch in support for the flag." msgstr "" -#: ../NEWS:5349 +#: ../NEWS:5436 msgid "" ":gh:`142050`: Fixed a bug where JIT stencils produced on Windows contained " "debug data. Patch by Chris Eibl." msgstr "" -#: ../NEWS:5352 +#: ../NEWS:5439 msgid "" ":gh:`141808`: Do not generate the jit stencils twice in case of PGO builds " "on Windows." msgstr "" -#: ../NEWS:5355 +#: ../NEWS:5442 msgid "" ":gh:`141926`: ``RUNSHARED`` is no longer cleared when cross-compiling. " "Previously, ``RUNSHARED`` was cleared when cross-compiling, which breaks PGO " @@ -9116,7 +9244,7 @@ msgid "" "is otherwise executable (e.g., via transparent emulation)." msgstr "" -#: ../NEWS:5360 +#: ../NEWS:5447 msgid "" ":gh:`141808`: When running ``make clean-retain-profile``, keep the generated " "JIT stencils. That way, the stencils are not generated twice when Profile-" @@ -9124,7 +9252,7 @@ msgid "" "their own pre-built JIT stencils." msgstr "" -#: ../NEWS:5365 +#: ../NEWS:5452 msgid "" ":gh:`141784`: Fix ``_remote_debugging_module.c`` compilation on 32-bit " "Linux. Include Python.h before system headers to make sure that " @@ -9132,11 +9260,11 @@ msgid "" "by Victor Stinner." msgstr "" -#: ../NEWS:5370 +#: ../NEWS:5457 msgid ":gh:`141172`: Update to WASI SDK 29." msgstr "" -#: ../NEWS:5372 +#: ../NEWS:5459 msgid "" ":gh:`139707`: Add configure option :option:`--with-missing-stdlib-" "config=FILE` allows which distributors to pass a `JSON ` and :meth:`IPv6Network.hosts() " "` always return an iterator." msgstr "" -#: ../NEWS:5439 +#: ../NEWS:5526 msgid "" ":gh:`140938`: The :func:`statistics.stdev` and :func:`statistics.pstdev` " "functions now raise a :exc:`ValueError` when the input contains an infinity " "or a NaN." msgstr "" -#: ../NEWS:5443 +#: ../NEWS:5530 msgid "" ":gh:`124111`: Updated Tcl threading configuration in :mod:`_tkinter` to " "assume that threads are always available in Tcl 9 and later." msgstr "" -#: ../NEWS:5446 +#: ../NEWS:5533 msgid "" ":gh:`137109`: The :mod:`os.fork` and related forking APIs will no longer " "warn in the common case where Linux or macOS platform APIs return the number " @@ -9247,26 +9375,26 @@ msgid "" "register_at_fork` ``after_in_parent=`` callback (re)starts a thread." msgstr "" -#: ../NEWS:5452 +#: ../NEWS:5539 msgid "" ":gh:`141314`: Fix assertion failure in :meth:`io.TextIOWrapper.tell` when " "reading files with standalone carriage return (``\\r``) line endings." msgstr "" -#: ../NEWS:5455 +#: ../NEWS:5542 msgid "" ":gh:`141311`: Fix assertion failure in :func:`!io.BytesIO.readinto` and " "undefined behavior arising when read position is above capcity in :class:`io." "BytesIO`." msgstr "" -#: ../NEWS:5459 +#: ../NEWS:5546 msgid "" ":gh:`87710`: :mod:`mimetypes`: Update mime type for ``.ai`` files to " "``application/pdf``." msgstr "" -#: ../NEWS:5462 +#: ../NEWS:5549 msgid "" ":gh:`85524`: Update ``io.FileIO.readall``, an implementation of :meth:`io." "RawIOBase.readall`, to follow :class:`io.IOBase` guidelines and raise :exc:" @@ -9274,31 +9402,31 @@ msgid "" "`OSError`" msgstr "" -#: ../NEWS:5467 +#: ../NEWS:5554 msgid "" ":gh:`141141`: Fix a thread safety issue with :func:`base64.b85decode`. " "Contributed by Benel Tayar." msgstr "" -#: ../NEWS:5470 +#: ../NEWS:5557 msgid "" ":gh:`141018`: :mod:`mimetypes`: Update ``.exe``, ``.dll``, ``.rtf`` and " "(when ``strict=False``) ``.jpg`` to their correct IANA mime type." msgstr "" -#: ../NEWS:5473 +#: ../NEWS:5560 msgid "" ":gh:`137969`: Fix :meth:`annotationlib.ForwardRef.evaluate` returning :class:" "`~annotationlib.ForwardRef` objects which don't update with new globals." msgstr "" -#: ../NEWS:5477 +#: ../NEWS:5564 msgid "" ":gh:`75593`: Add support of :term:`path-like objects ` " "and :term:`bytes-like objects ` in :func:`wave.open`." msgstr "" -#: ../NEWS:5480 +#: ../NEWS:5567 msgid "" ":gh:`140797`: The undocumented :class:`!re.Scanner` class now forbids " "regular expressions containing capturing groups in its lexicon patterns. " @@ -9306,103 +9434,103 @@ msgid "" "segmentation fault. Use non-capturing groups (?:...) instead." msgstr "" -#: ../NEWS:5485 +#: ../NEWS:5572 msgid "" ":gh:`125115`: Refactor the :mod:`pdb` parsing issue so positional arguments " "can pass through intuitively." msgstr "" -#: ../NEWS:5488 +#: ../NEWS:5575 msgid "" ":gh:`140815`: :mod:`faulthandler` now detects if a frame or a code object is " "invalid or freed. Patch by Victor Stinner." msgstr "" -#: ../NEWS:5491 +#: ../NEWS:5578 msgid "" ":gh:`100218`: Correctly set :attr:`~OSError.errno` when :func:`socket." "if_nametoindex` or :func:`socket.if_indextoname` raise an :exc:`OSError`. " "Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:5495 +#: ../NEWS:5582 msgid "" ":gh:`140734`: :mod:`multiprocessing`: fix off-by-one error when checking the " "length of a temporary socket file path. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:5498 +#: ../NEWS:5585 msgid "" ":gh:`140873`: Add support of non-:term:`descriptor` callables in :func:" "`functools.singledispatchmethod`." msgstr "" -#: ../NEWS:5501 +#: ../NEWS:5588 msgid "" ":gh:`140874`: Bump the version of pip bundled in ensurepip to version 25.3" msgstr "" -#: ../NEWS:5503 +#: ../NEWS:5590 msgid "" ":gh:`140826`: Now :class:`!winreg.HKEYType` objects are compared by their " "underlying Windows registry handle value instead of their object identity." msgstr "" -#: ../NEWS:5506 +#: ../NEWS:5593 msgid "" ":gh:`140808`: The internal class ``mailbox._ProxyFile`` is no longer a " "parameterized generic." msgstr "" -#: ../NEWS:5509 +#: ../NEWS:5596 msgid "" ":gh:`140691`: In :mod:`urllib.request`, when opening a FTP URL fails because " "a data connection cannot be made, the control connection's socket is now " "closed to avoid a :exc:`ResourceWarning`." msgstr "" -#: ../NEWS:5513 +#: ../NEWS:5600 msgid "" ":gh:`103847`: Fix hang when cancelling process created by :func:`asyncio." "create_subprocess_exec` or :func:`asyncio.create_subprocess_shell`. Patch by " "Kumar Aditya." msgstr "" -#: ../NEWS:5517 +#: ../NEWS:5604 msgid "" ":gh:`137821`: Convert ``_json`` module to use Argument Clinic. Patched by " "Yoonho Hann." msgstr "" -#: ../NEWS:5520 +#: ../NEWS:5607 msgid "" ":gh:`140790`: Initialize all Pdb's instance variables in ``__init__``, " "remove some hasattr/getattr" msgstr "" -#: ../NEWS:5523 +#: ../NEWS:5610 msgid "" ":gh:`140766`: Add :func:`enum.show_flag_values` and ``enum.bin`` to ``enum." "__all__``." msgstr "" -#: ../NEWS:5526 +#: ../NEWS:5613 msgid ":gh:`120057`: Add :func:`os.reload_environ` to ``os.__all__``." msgstr "" -#: ../NEWS:5528 +#: ../NEWS:5615 msgid "" ":gh:`140741`: Fix ``profiling.sampling.sample()`` incorrectly handling a :" "exc:`FileNotFoundError` or :exc:`PermissionError`." msgstr "" -#: ../NEWS:5531 +#: ../NEWS:5618 msgid "" ":gh:`140228`: Avoid making unnecessary filesystem calls for frozen modules " "in :mod:`linecache` when the global module cache is not present." msgstr "" -#: ../NEWS:5534 +#: ../NEWS:5621 msgid "" ":gh:`139946`: Error and warning keywords in ``argparse.ArgumentParser`` " "messages are now colorized when color output is enabled, fixing a visual " @@ -9410,40 +9538,40 @@ msgid "" "colorized." msgstr "" -#: ../NEWS:5539 +#: ../NEWS:5626 msgid "" ":gh:`140590`: Fix arguments checking for the :meth:`!functools.partial." "__setstate__` that may lead to internal state corruption and crash. Patch by " "Sergey Miryanov." msgstr "" -#: ../NEWS:5543 +#: ../NEWS:5630 msgid "" ":gh:`125434`: Display thread name in :mod:`faulthandler` on Windows. Patch " "by Victor Stinner." msgstr "" -#: ../NEWS:5546 +#: ../NEWS:5633 msgid "" ":gh:`140634`: Fix a reference counting bug in :meth:`!os.sched_param." "__reduce__`." msgstr "" -#: ../NEWS:5549 +#: ../NEWS:5636 msgid "" ":gh:`140650`: Fix an issue where closing :class:`io.BufferedWriter` could " "crash if the closed attribute raised an exception on access or could not be " "converted to a boolean." msgstr "" -#: ../NEWS:5553 +#: ../NEWS:5640 msgid "" ":gh:`140633`: Ignore :exc:`AttributeError` when setting a module's " "``__file__`` attribute when loading an extension module packaged as Apple " "Framework." msgstr "" -#: ../NEWS:5557 +#: ../NEWS:5644 msgid "" ":gh:`140601`: :func:`xml.etree.ElementTree.iterparse` now emits a :exc:" "`ResourceWarning` when the iterator is not explicitly closed and was opened " @@ -9451,84 +9579,84 @@ msgid "" "Patch by Osama Abdelkader." msgstr "" -#: ../NEWS:5562 +#: ../NEWS:5649 msgid "" ":gh:`140593`: :mod:`xml.parsers.expat`: Fix a memory leak that could affect " "users with :meth:`~xml.parsers.expat.xmlparser.ElementDeclHandler` set to a " "custom element declaration handler. Patch by Sebastian Pipping." msgstr "" -#: ../NEWS:5566 +#: ../NEWS:5653 msgid "" ":gh:`140607`: Inside :meth:`io.RawIOBase.read`, validate that the count of " "bytes returned by :meth:`io.RawIOBase.readinto` is valid (inside the " "provided buffer)." msgstr "" -#: ../NEWS:5570 +#: ../NEWS:5657 msgid "" ":gh:`138162`: Fix :class:`logging.LoggerAdapter` with ``merge_extra=True`` " "and without the *extra* argument." msgstr "" -#: ../NEWS:5573 +#: ../NEWS:5660 msgid "" ":gh:`140481`: Improve error message when trying to iterate a Tk widget, " "image or font." msgstr "" -#: ../NEWS:5576 +#: ../NEWS:5663 msgid "" ":gh:`138774`: :func:`ast.unparse` now generates full source code when " "handling :class:`ast.Interpolation` nodes that do not have a specified " "source." msgstr "" -#: ../NEWS:5580 +#: ../NEWS:5667 msgid "" ":gh:`140474`: Fix memory leak in :class:`array.array` when creating arrays " "from an empty :class:`str` and the ``u`` type code." msgstr "" -#: ../NEWS:5583 +#: ../NEWS:5670 msgid "" ":gh:`140448`: Change the default of ``suggest_on_error`` to ``True`` in " "``argparse.ArgumentParser``." msgstr "" -#: ../NEWS:5586 +#: ../NEWS:5673 msgid "" ":gh:`137530`: :mod:`dataclasses` Fix annotations for generated ``__init__`` " "methods by replacing the annotations that were in-line in the generated " "source code with ``__annotate__`` functions attached to the methods." msgstr "" -#: ../NEWS:5590 +#: ../NEWS:5677 msgid "" ":gh:`140348`: Fix regression in Python 3.14.0 where using the ``|`` operator " "on a :class:`typing.Union` object combined with an object that is not a type " "would raise an error." msgstr "" -#: ../NEWS:5594 +#: ../NEWS:5681 msgid "" ":gh:`76007`: :mod:`decimal`: Deprecate ``__version__`` and replace with :" "data:`decimal.SPEC_VERSION`." msgstr "" -#: ../NEWS:5597 +#: ../NEWS:5684 msgid "" ":gh:`76007`: Deprecate ``__version__`` from :mod:`imaplib`. Patch by Hugo " "van Kemenade." msgstr "" -#: ../NEWS:5600 +#: ../NEWS:5687 msgid "" ":gh:`140272`: Fix memory leak in the :meth:`!clear` method of the :mod:`dbm." "gnu` database." msgstr "" -#: ../NEWS:5603 +#: ../NEWS:5690 msgid "" ":gh:`129117`: :mod:`unicodedata`: Add :func:`~unicodedata.isxidstart` and :" "func:`~unicodedata.isxidcontinue` functions to check whether a character can " @@ -9536,13 +9664,13 @@ msgid "" "reports/tr31/>`_ identifier." msgstr "" -#: ../NEWS:5608 +#: ../NEWS:5695 msgid "" ":gh:`140251`: Colorize the default import statement ``import asyncio`` in " "asyncio REPL." msgstr "" -#: ../NEWS:5611 +#: ../NEWS:5698 msgid "" ":gh:`140212`: Calendar's HTML formatting now accepts year and month as " "options. Previously, running ``python -m calendar -t html 2025 10`` would " @@ -9550,7 +9678,7 @@ msgid "" "calendar for the specified month. Contributed by Pål Grønås Drange." msgstr "" -#: ../NEWS:5616 +#: ../NEWS:5703 msgid "" ":gh:`135801`: Improve filtering by module in :func:`warnings.warn_explicit` " "if no *module* argument is passed. It now tests the module regular " @@ -9560,25 +9688,25 @@ msgid "" "Windows, ``.pyw`` stripped)." msgstr "" -#: ../NEWS:5623 +#: ../NEWS:5710 msgid "" ":gh:`139707`: Improve :exc:`ModuleNotFoundError` error message when a :term:" "`standard library` module is missing." msgstr "" -#: ../NEWS:5626 +#: ../NEWS:5713 msgid "" ":gh:`140041`: Fix import of :mod:`ctypes` on Android and Cygwin when ABI " "flags are present." msgstr "" -#: ../NEWS:5629 +#: ../NEWS:5716 msgid "" ":gh:`140120`: Fixed a memory leak in :mod:`hmac` when it was using the hacl-" "star backend. Discovered by ``@ashm-dev`` using AddressSanitizer." msgstr "" -#: ../NEWS:5632 +#: ../NEWS:5719 msgid "" ":gh:`140141`: The :py:class:`importlib.metadata.PackageNotFoundError` " "traceback raised when ``importlib.metadata.Distribution.from_name`` cannot " @@ -9586,11 +9714,11 @@ msgid "" "exception trace." msgstr "" -#: ../NEWS:5637 +#: ../NEWS:5724 msgid "Contributed by Bartosz Sławecki in :gh:`140142`." msgstr "" -#: ../NEWS:5639 +#: ../NEWS:5726 msgid "" ":gh:`140166`: :mod:`mimetypes`: Per the `IANA assignment `_, update the MIME type for " @@ -9598,32 +9726,32 @@ msgid "" "instead of ``application/x-texinfo``." msgstr "" -#: ../NEWS:5644 +#: ../NEWS:5731 msgid "" ":gh:`140135`: Speed up :meth:`io.RawIOBase.readall` by using PyBytesWriter " "API (about 4x faster)" msgstr "" -#: ../NEWS:5647 +#: ../NEWS:5734 msgid "" ":gh:`76007`: :mod:`zlib`: Deprecate ``__version__`` and schedule for removal " "in Python 3.20." msgstr "" -#: ../NEWS:5650 +#: ../NEWS:5737 msgid "" ":gh:`136702`: :mod:`encodings`: Deprecate passing a non-ascii *encoding* " "name to :func:`encodings.normalize_encoding` and schedule removal of support " "for Python 3.17." msgstr "" -#: ../NEWS:5654 +#: ../NEWS:5741 msgid "" ":gh:`139940`: Print clearer error message when using ``pdb`` to attach to a " "non-existing process." msgstr "" -#: ../NEWS:5657 +#: ../NEWS:5744 msgid "" ":gh:`139462`: When a child process in a :class:`concurrent.futures." "ProcessPoolExecutor` terminates abruptly, the resulting traceback will now " @@ -9631,97 +9759,97 @@ msgid "" "Jonathan Berg." msgstr "" -#: ../NEWS:5662 +#: ../NEWS:5749 msgid "" ":gh:`63161`: Fix :func:`tokenize.detect_encoding`. Support non-UTF-8 shebang " "and comments if non-UTF-8 encoding is specified. Detect decoding error for " "non-UTF-8 encoding. Detect null bytes in source code." msgstr "" -#: ../NEWS:5666 +#: ../NEWS:5753 msgid "" ":gh:`101828`: Fix ``'shift_jisx0213'``, ``'shift_jis_2004'``, " "``'euc_jisx0213'`` and ``'euc_jis_2004'`` codecs truncating null chars as " "they were treated as part of multi-character sequences." msgstr "" -#: ../NEWS:5670 +#: ../NEWS:5757 msgid ":gh:`139246`: fix: paste zero-width in default repl width is wrong." msgstr "" -#: ../NEWS:5672 +#: ../NEWS:5759 msgid "" ":gh:`83714`: Implement :func:`os.statx` on Linux kernel versions 4.11 and " "later with glibc versions 2.28 and later. Contributed by Jeffrey Bosboom " "and Victor Stinner." msgstr "" -#: ../NEWS:5676 +#: ../NEWS:5763 msgid "" ":gh:`138891`: Fix ``SyntaxError`` when ``inspect.get_annotations(f, " "eval_str=True)`` is called on a function annotated with a :pep:`646` " "``star_expression``" msgstr "" -#: ../NEWS:5680 +#: ../NEWS:5767 msgid "" ":gh:`138859`: Fix generic type parameterization raising a :exc:`TypeError` " "when omitting a :class:`ParamSpec` that has a default which is not a list of " "types." msgstr "" -#: ../NEWS:5684 +#: ../NEWS:5771 msgid "" ":gh:`138764`: Prevent :func:`annotationlib.call_annotate_function` from " "calling ``__annotate__`` functions that don't support " "``VALUE_WITH_FAKE_GLOBALS`` in a fake globals namespace with empty globals." msgstr "" -#: ../NEWS:5689 +#: ../NEWS:5776 msgid "" "Make ``FORWARDREF`` and ``STRING`` annotations fall back to using ``VALUE`` " "annotations in the case that neither their own format, nor " "``VALUE_WITH_FAKE_GLOBALS`` are supported." msgstr "" -#: ../NEWS:5693 +#: ../NEWS:5780 msgid "" ":gh:`138775`: Use of ``python -m`` with :mod:`base64` has been fixed to " "detect input from a terminal so that it properly notices EOF." msgstr "" -#: ../NEWS:5696 +#: ../NEWS:5783 msgid "" ":gh:`98896`: Fix a failure in multiprocessing resource_tracker when " "SharedMemory names contain colons. Patch by Rani Pinchuk." msgstr "" -#: ../NEWS:5699 +#: ../NEWS:5786 msgid "" ":gh:`138425`: Fix partial evaluation of :class:`annotationlib.ForwardRef` " "objects which rely on names defined as globals." msgstr "" -#: ../NEWS:5702 +#: ../NEWS:5789 msgid "" ":gh:`138151`: In :mod:`annotationlib`, improve evaluation of forward " "references to nonlocal variables that are not yet defined when the " "annotations are initially evaluated." msgstr "" -#: ../NEWS:5706 +#: ../NEWS:5793 msgid "" ":gh:`69528`: The :attr:`~io.FileIO.mode` attribute of files opened in the " "``'wb+'`` mode is now ``'wb+'`` instead of ``'rb+'``." msgstr "" -#: ../NEWS:5709 +#: ../NEWS:5796 msgid "" ":gh:`137627`: Speed up :meth:`csv.Sniffer.sniff` delimiter detection by up " "to 1.6x." msgstr "" -#: ../NEWS:5712 +#: ../NEWS:5799 msgid "" ":gh:`55531`: :mod:`encodings`: Improve :func:`~encodings.normalize_encoding` " "performance by implementing the function in C using the private " @@ -9729,57 +9857,57 @@ msgid "" "conversion optional." msgstr "" -#: ../NEWS:5717 +#: ../NEWS:5804 msgid "" ":gh:`136057`: Fixed the bug in :mod:`pdb` and :mod:`bdb` where ``next`` and " "``step`` can't go over the line if a loop exists in the line." msgstr "" -#: ../NEWS:5720 +#: ../NEWS:5807 msgid "" ":gh:`133390`: Support table, index, trigger, view, column, function, and " "schema completion for :mod:`sqlite3`'s :ref:`command-line interface `." msgstr "" -#: ../NEWS:5724 +#: ../NEWS:5811 msgid "" ":gh:`135307`: :mod:`email`: Fix exception in ``set_content()`` when encoding " "text and max_line_length is set to ``0`` or ``None`` (unlimited)." msgstr "" -#: ../NEWS:5727 +#: ../NEWS:5814 msgid "" ":gh:`133789`: Fix unpickling of :mod:`pathlib` objects that were pickled in " "Python 3.13." msgstr "" -#: ../NEWS:5730 +#: ../NEWS:5817 msgid "" ":gh:`133601`: Remove deprecated :func:`!typing.no_type_check_decorator`." msgstr "" -#: ../NEWS:5732 +#: ../NEWS:5819 msgid "" ":gh:`132686`: Add parameters *inherit_class_doc* and *fallback_to_class_doc* " "for :func:`inspect.getdoc`." msgstr "" -#: ../NEWS:5735 +#: ../NEWS:5822 msgid "" ":gh:`131116`: :func:`inspect.getdoc` now correctly returns an inherited " "docstring on :class:`~functools.cached_property` objects if none is given in " "a subclass." msgstr "" -#: ../NEWS:5739 +#: ../NEWS:5826 msgid "" ":gh:`130693`: Add support for ``-nolinestop``, and ``-strictlimits`` options " "to :meth:`!tkinter.Text.search`. Also add the :meth:`!tkinter.Text." "search_all` method for ``-all`` and ``-overlap`` options." msgstr "" -#: ../NEWS:5744 +#: ../NEWS:5831 msgid "" ":gh:`122255`: In the :mod:`linecache` module and in the Python " "implementation of the :mod:`warnings` module, a ``DeprecationWarning`` is " @@ -9787,162 +9915,162 @@ msgid "" "the C implementation of the :mod:`!warnings` module)." msgstr "" -#: ../NEWS:5749 +#: ../NEWS:5836 msgid "" ":gh:`121011`: :func:`math.log` now supports arbitrary large integer-like " "arguments in the same way as arbitrary large integer arguments." msgstr "" -#: ../NEWS:5752 +#: ../NEWS:5839 msgid "" ":gh:`119668`: Publicly expose and document :class:`importlib.machinery." "NamespacePath`." msgstr "" -#: ../NEWS:5755 +#: ../NEWS:5842 msgid "" ":gh:`102431`: Clarify constraints for \"logical\" arguments in methods of :" "class:`decimal.Context`." msgstr "" -#: ../NEWS:5758 +#: ../NEWS:5845 msgid ":gh:`81313`: Add the :mod:`math.integer` module (:pep:`791`)." msgstr "" -#: ../NEWS:5763 +#: ../NEWS:5850 msgid "" ":gh:`141579`: Fix :func:`sys.activate_stack_trampoline` to properly support " "the ``perf_jit`` backend. Patch by Pablo Galindo." msgstr "" -#: ../NEWS:5766 +#: ../NEWS:5853 msgid "" ":gh:`114203`: Skip locking if object is already locked by two-mutex critical " "section." msgstr "" -#: ../NEWS:5769 +#: ../NEWS:5856 msgid "" ":gh:`141528`: Suggest using :meth:`concurrent.interpreters.Interpreter." "close` instead of the private ``_interpreters.destroy`` function when " "warning about remaining subinterpreters. Patch by Sergey Miryanov." msgstr "" -#: ../NEWS:5773 +#: ../NEWS:5860 msgid "" ":gh:`141367`: Specialize ``CALL_LIST_APPEND`` instruction only for lists, " "not for list subclasses, to avoid unnecessary deopt. Patch by Mikhail Efimov." msgstr "" -#: ../NEWS:5776 +#: ../NEWS:5863 msgid "" ":gh:`141312`: Fix the assertion failure in the ``__setstate__`` method of " "the range iterator when a non-integer argument is passed. Patch by Sergey " "Miryanov." msgstr "" -#: ../NEWS:5780 +#: ../NEWS:5867 msgid "" ":gh:`140643`: Add support for ```` and ```` frames to :mod:`!" "profiling.sampling` output to denote active garbage collection and calls to " "native code." msgstr "" -#: ../NEWS:5787 +#: ../NEWS:5874 msgid "" ":gh:`140942`: Add ``.cjs`` to :mod:`mimetypes` to give CommonJS modules a " "MIME type of ``application/node``." msgstr "" -#: ../NEWS:5793 +#: ../NEWS:5880 msgid ":gh:`140479`: Update JIT compilation to use LLVM 21 at build time." msgstr "" -#: ../NEWS:5795 +#: ../NEWS:5882 msgid "" ":gh:`140939`: Fix memory leak when :class:`bytearray` or :class:`bytes` is " "formated with the ``%*b`` format with a large width that results in a :exc:" "`MemoryError`." msgstr "" -#: ../NEWS:5802 +#: ../NEWS:5889 msgid "" ":gh:`140260`: Fix :mod:`struct` data race in endian table initialization " "with subinterpreters. Patch by Shamil Abdulaev." msgstr "" -#: ../NEWS:5808 +#: ../NEWS:5895 msgid "" ":gh:`140530`: Fix a reference leak when ``raise exc from cause`` fails. " "Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:5814 +#: ../NEWS:5901 msgid "" ":gh:`90344`: Replace :class:`io.IncrementalNewlineDecoder` with non " "incremental newline decoders in codebase where :meth:`!io." "IncrementalNewlineDecoder.decode` was being called once." msgstr "" -#: ../NEWS:5821 +#: ../NEWS:5908 msgid "" ":gh:`140373`: Correctly emit ``PY_UNWIND`` event when generator object is " "closed. Patch by Mikhail Efimov." msgstr "" -#: ../NEWS:5824 +#: ../NEWS:5911 msgid "" ":gh:`140729`: Fix pickling error in the sampling profiler when using " "``concurrent.futures.ProcessPoolExecutor`` script can not be properly " "pickled and executed in worker processes." msgstr "" -#: ../NEWS:5828 +#: ../NEWS:5915 msgid "" ":gh:`131527`: Dynamic borrow checking for stackrefs is added to " "``Py_STACKREF_DEBUG`` mode. Patch by Mikhail Efimov." msgstr "" -#: ../NEWS:5831 +#: ../NEWS:5918 msgid "" ":gh:`140576`: Fixed crash in :func:`tokenize.generate_tokens` in case of " "specific incorrect input. Patch by Mikhail Efimov." msgstr "" -#: ../NEWS:5834 +#: ../NEWS:5921 msgid "" ":gh:`140544`: Speed up accessing interpreter state by caching it in a thread " "local variable. Patch by Kumar Aditya." msgstr "" -#: ../NEWS:5837 +#: ../NEWS:5924 msgid "" ":gh:`140551`: Fixed crash in :class:`dict` if :meth:`dict.clear` is called " "at the lookup stage. Patch by Mikhail Efimov and Inada Naoki." msgstr "" -#: ../NEWS:5840 +#: ../NEWS:5927 msgid "" ":gh:`140517`: Fixed a reference leak when iterating over the result of :func:" "`map` with ``strict=True`` when the input iterables have different lengths. " "Patch by Mikhail Efimov." msgstr "" -#: ../NEWS:5844 +#: ../NEWS:5931 msgid "" ":gh:`133467`: Fix race when updating :attr:`!type.__bases__` that could " "allow a read of :attr:`!type.__base__` to observe an inconsistent value on " "the free threaded build." msgstr "" -#: ../NEWS:5848 +#: ../NEWS:5935 msgid "" ":gh:`140471`: Fix potential buffer overflow in :class:`ast.AST` node " "initialization when encountering malformed :attr:`~ast.AST._fields` " "containing non-:class:`str`." msgstr "" -#: ../NEWS:5855 +#: ../NEWS:5942 msgid "" ":gh:`140443`: The logarithm functions (such as :func:`math.log10` and :func:" "`math.log`) may now produce slightly different results for extremely large " @@ -9951,7 +10079,7 @@ msgid "" "overall error distribution." msgstr "" -#: ../NEWS:5864 +#: ../NEWS:5951 msgid "" ":gh:`140431`: Fix a crash in Python's :term:`garbage collector ` due to partially initialized :term:`coroutine` objects when " @@ -9959,20 +10087,20 @@ msgid "" "set_coroutine_origin_tracking_depth`)." msgstr "" -#: ../NEWS:5869 +#: ../NEWS:5956 msgid "" ":gh:`140476`: Optimize :c:func:`PySet_Add` for :class:`frozenset` in :term:" "`free threaded ` build." msgstr "" -#: ../NEWS:5872 +#: ../NEWS:5959 msgid "" ":gh:`135904`: Add special labels to the assembly created during stencil " "creation to support relocations that the native object file format does not " "support. Specifically, 19 bit branches for AArch64 in Mach-O object files." msgstr "" -#: ../NEWS:5880 +#: ../NEWS:5967 msgid "" ":gh:`140398`: Fix memory leaks in :mod:`readline` functions :func:`~readline." "read_init_file`, :func:`~readline.read_history_file`, :func:`~readline." @@ -9980,13 +10108,13 @@ msgid "" "`PySys_Audit` fails." msgstr "" -#: ../NEWS:5888 +#: ../NEWS:5975 msgid "" ":gh:`140406`: Fix memory leak when an object's :meth:`~object.__hash__` " "method returns an object that isn't an :class:`int`." msgstr "" -#: ../NEWS:5891 +#: ../NEWS:5978 msgid "" ":gh:`140358`: Restore elapsed time and unreachable object count in GC debug " "output. These were inadvertently removed during a refactor of ``gc.c``. The " @@ -9994,112 +10122,112 @@ msgid "" "unreachable objects. Contributed by Pål Grønås Drange." msgstr "" -#: ../NEWS:5896 +#: ../NEWS:5983 msgid ":gh:`136895`: Update JIT compilation to use LLVM 20 at build time." msgstr "" -#: ../NEWS:5898 +#: ../NEWS:5985 msgid "" ":gh:`139109`: A new tracing frontend for the JIT compiler has been " "implemented. Patch by Ken Jin. Design for CPython by Ken Jin, Mark Shannon " "and Brandt Bucher." msgstr "" -#: ../NEWS:5902 +#: ../NEWS:5989 msgid "" ":gh:`140306`: Fix memory leaks in cross-interpreter channel operations and " "shared namespace handling." msgstr "" -#: ../NEWS:5905 +#: ../NEWS:5992 msgid "" ":gh:`116738`: Make _suggestions module thread-safe on the :term:`free " "threaded ` build." msgstr "" -#: ../NEWS:5908 +#: ../NEWS:5995 msgid ":gh:`140301`: Fix memory leak of ``PyConfig`` in subinterpreters." msgstr "" -#: ../NEWS:5910 +#: ../NEWS:5997 msgid "" ":gh:`140257`: Fix data race between interpreter_clear() and take_gil() on " "eval_breaker during finalization with daemon threads." msgstr "" -#: ../NEWS:5913 +#: ../NEWS:6000 msgid "" ":gh:`139951`: Fixes a regression in GC performance for a growing heap " "composed mostly of small tuples." msgstr "" -#: ../NEWS:5916 +#: ../NEWS:6003 msgid "" "Counts number of actually tracked objects, instead of trackable objects. " "This ensures that untracking tuples has the desired effect of reducing GC " "overhead." msgstr "" -#: ../NEWS:5918 +#: ../NEWS:6005 msgid "" "Does not track most untrackable tuples during creation. This prevents large " "numbers of small tuples causing excessive GCs." msgstr "" -#: ../NEWS:5921 +#: ../NEWS:6008 msgid "" ":gh:`140253`: Wrong placement of a double-star pattern inside a mapping " "pattern now throws a specialized syntax error. Contributed by Bartosz " "Sławecki in :gh:`140253`." msgstr "" -#: ../NEWS:5925 +#: ../NEWS:6012 msgid "" ":gh:`140104`: Fix a bug with exception handling in the JIT. Patch by Ken " "Jin. Bug reported by Daniel Diniz." msgstr "" -#: ../NEWS:5928 +#: ../NEWS:6015 msgid "" ":gh:`140149`: Speed up parsing bytes literals concatenation by using " "PyBytesWriter API and a single memory allocation (about 3x faster)." msgstr "" -#: ../NEWS:5931 +#: ../NEWS:6018 msgid "" ":gh:`140061`: Fixing the checking of whether an object is uniquely " "referenced to ensure free-threaded compatibility. Patch by Sergey Miryanov." msgstr "" -#: ../NEWS:5934 +#: ../NEWS:6021 msgid "" ":gh:`140080`: Fix hang during finalization when attempting to call :mod:" "`atexit` handlers under no memory." msgstr "" -#: ../NEWS:5937 +#: ../NEWS:6024 msgid "" ":gh:`139871`: Update :class:`bytearray` to use a :class:`bytes` under the " "hood as its buffer and add :meth:`bytearray.take_bytes` to take it out." msgstr "" -#: ../NEWS:5940 +#: ../NEWS:6027 msgid ":gh:`140067`: Fix memory leak in sub-interpreter creation." msgstr "" -#: ../NEWS:5942 +#: ../NEWS:6029 msgid "" ":gh:`139914`: Restore support for HP PA-RISC, which has an upwards-growing " "stack." msgstr "" -#: ../NEWS:5945 +#: ../NEWS:6032 msgid "" ":gh:`139817`: Attribute ``__qualname__`` is added to :class:`typing." "TypeAliasType`. Patch by Mikhail Efimov." msgstr "" -#: ../NEWS:5948 +#: ../NEWS:6035 msgid "" ":gh:`135801`: Many functions related to compiling or parsing Python code, " "such as :func:`compile`, :func:`ast.parse`, :func:`symtable.symtable`, and :" @@ -10108,78 +10236,78 @@ msgid "" "syntax warnings by module name." msgstr "" -#: ../NEWS:5954 +#: ../NEWS:6041 msgid "" ":gh:`139640`: :func:`ast.parse` no longer emits syntax warnings for " "``return``/``break``/``continue`` in ``finally`` (see :pep:`765`) -- they " "are only emitted during compilation." msgstr "" -#: ../NEWS:5958 +#: ../NEWS:6045 msgid "" ":gh:`139640`: Fix swallowing some syntax warnings in different modules if " "they accidentally have the same message and are emitted from the same line. " "Fix duplicated warnings in the ``finally`` block." msgstr "" -#: ../NEWS:5962 +#: ../NEWS:6049 msgid "" ":gh:`139475`: Changes in stackref debugging mode when ``Py_STACKREF_DEBUG`` " "is set. We use the same pattern of refcounting for stackrefs as in " "production build." msgstr "" -#: ../NEWS:5966 +#: ../NEWS:6053 msgid "" ":gh:`139269`: Fix undefined behavior when using unaligned store in JIT's " "``patch_*`` functions." msgstr "" -#: ../NEWS:5969 +#: ../NEWS:6056 msgid "" ":gh:`138944`: Fix :exc:`SyntaxError` message when invalid syntax appears on " "the same line as a valid ``import ... as ...`` or ``from ... import ... " "as ...`` statement. Patch by Brian Schubert." msgstr "" -#: ../NEWS:5973 +#: ../NEWS:6060 msgid "" ":gh:`138857`: Improve :exc:`SyntaxError` message for ``case`` keyword placed " "outside :keyword:`match` body." msgstr "" -#: ../NEWS:5976 +#: ../NEWS:6063 msgid "" ":gh:`131253`: Support the ``--enable-pystats`` build option for the free-" "threaded build." msgstr "" -#: ../NEWS:5979 +#: ../NEWS:6066 msgid "" ":gh:`136327`: Errors when calling functions with invalid values after ``*`` " "and ``**`` now do not include the function name. Patch by Ilia Solin." msgstr "" -#: ../NEWS:5982 +#: ../NEWS:6069 msgid "" ":gh:`134786`: If :c:macro:`Py_TPFLAGS_MANAGED_DICT` and :c:macro:" "`Py_TPFLAGS_MANAGED_WEAKREF` are used, then :c:macro:`Py_TPFLAGS_HAVE_GC` " "must be used as well." msgstr "" -#: ../NEWS:5989 +#: ../NEWS:6076 msgid "" ":gh:`141341`: On Windows, rename the ``COMPILER`` macro to ``_Py_COMPILER`` " "to avoid name conflicts. Patch by Victor Stinner." msgstr "" -#: ../NEWS:5992 +#: ../NEWS:6079 msgid "" ":gh:`116146`: Add a new :c:func:`PyImport_CreateModuleFromInitfunc` C-API " "for creating a module from a *spec* and *initfunc*. Patch by Itamar Oren." msgstr "" -#: ../NEWS:5995 +#: ../NEWS:6082 msgid "" ":gh:`141042`: Make qNaN in :c:func:`PyFloat_Pack2` and :c:func:" "`PyFloat_Pack4`, if while conversion to a narrower precision floating-point " @@ -10187,37 +10315,37 @@ msgid "" "Sergey B Kirpichev." msgstr "" -#: ../NEWS:6000 +#: ../NEWS:6087 msgid "" ":gh:`141004`: :c:macro:`!Py_MATH_El` and :c:macro:`!Py_MATH_PIl` are " "deprecated." msgstr "" -#: ../NEWS:6003 +#: ../NEWS:6090 msgid "" ":gh:`141004`: The :c:macro:`!Py_INFINITY` macro is :term:`soft deprecated`." msgstr "" -#: ../NEWS:6005 +#: ../NEWS:6092 msgid "" ":gh:`140556`: :pep:`793`: Add a new entry point for C extension modules, " "``PyModExport_``." msgstr "" -#: ../NEWS:6008 +#: ../NEWS:6095 msgid "" ":gh:`140487`: Fix :c:macro:`Py_RETURN_NOTIMPLEMENTED` in limited C API 3.11 " "and older: don't treat ``Py_NotImplemented`` as immortal. Patch by Victor " "Stinner." msgstr "" -#: ../NEWS:6012 +#: ../NEWS:6099 msgid "" ":gh:`140153`: Fix :c:func:`Py_REFCNT` definition on limited C API 3.11-3.13. " "Patch by Victor Stinner." msgstr "" -#: ../NEWS:6015 +#: ../NEWS:6102 msgid "" ":gh:`139653`: Add :c:func:`PyUnstable_ThreadState_SetStackProtection` and :c:" "func:`PyUnstable_ThreadState_ResetStackProtection` functions to set the " @@ -10225,125 +10353,125 @@ msgid "" "state. Patch by Victor Stinner." msgstr "" -#: ../NEWS:6023 +#: ../NEWS:6110 msgid "" ":gh:`140454`: When building the JIT, match the jit_stencils filename " "expectations in Makefile with the generator script. This avoid needless JIT " "recompilation during ``make install``." msgstr "" -#: ../NEWS:6027 +#: ../NEWS:6114 msgid "" ":gh:`140768`: Warn when the WASI SDK version doesn't match what's supported." msgstr "" -#: ../NEWS:6029 +#: ../NEWS:6116 msgid "" ":gh:`140513`: Generate a clear compilation error when " "``_Py_TAIL_CALL_INTERP`` is enabled but either ``preserve_none`` or " "``musttail`` is not supported." msgstr "" -#: ../NEWS:6033 +#: ../NEWS:6120 msgid ":gh:`140475`: Support WASI SDK 25." msgstr "" -#: ../NEWS:6035 +#: ../NEWS:6122 msgid "" ":gh:`140239`: Check ``statx`` availability only on Linux (including Android)." msgstr "" -#: ../NEWS:6037 +#: ../NEWS:6124 msgid ":gh:`140189`: iOS builds were added to CI." msgstr "" -#: ../NEWS:6039 +#: ../NEWS:6126 msgid "" ":gh:`137618`: ``PYTHON_FOR_REGEN`` now requires Python 3.10 to Python 3.15. " "Patch by Adam Turner." msgstr "" -#: ../NEWS:6044 +#: ../NEWS:6131 msgid "Python 3.15.0 alpha 1" msgstr "" -#: ../NEWS:6046 +#: ../NEWS:6133 msgid "*Release date: 2025-10-14*" msgstr "" -#: ../NEWS:6051 +#: ../NEWS:6138 msgid ":gh:`115119`: Update macOS installer to use libmpdecimal 4.0.1." msgstr "" -#: ../NEWS:6053 +#: ../NEWS:6140 msgid ":gh:`124111`: Update macOS installer to use Tcl/Tk 9.0.2." msgstr "" -#: ../NEWS:6055 +#: ../NEWS:6142 msgid ":gh:`132339`: Update macOS installer version of OpenSSL to 3.5.4." msgstr "" -#: ../NEWS:6057 +#: ../NEWS:6144 msgid "" ":gh:`137450`: macOS installer shell path management improvements: separate " "the installer ``Shell profile updater`` postinstall script from the ``Update " "Shell Profile.command`` to enable more robust error handling." msgstr "" -#: ../NEWS:6061 +#: ../NEWS:6148 msgid "" ":gh:`137134`: Update macOS installer to ship with SQLite version 3.50.4." msgstr "" -#: ../NEWS:6066 +#: ../NEWS:6153 msgid "" ":gh:`139810`: Installing with ``py install 3[.x]-dev`` will now select final " "versions as well as prereleases." msgstr "" -#: ../NEWS:6069 +#: ../NEWS:6156 msgid ":gh:`139573`: Updated bundled version of OpenSSL to 3.0.18." msgstr "" -#: ../NEWS:6071 +#: ../NEWS:6158 msgid "" ":gh:`138896`: Fix error installing C runtime on non-updated Windows machines" msgstr "" -#: ../NEWS:6073 +#: ../NEWS:6160 msgid ":gh:`138314`: Add :func:`winreg.DeleteTree`." msgstr "" -#: ../NEWS:6075 +#: ../NEWS:6162 msgid "" ":gh:`137136`: Suppress build warnings when build on Windows with ``--" "experimental-jit-interpreter``." msgstr "" -#: ../NEWS:6078 +#: ../NEWS:6165 msgid ":gh:`137134`: Update Windows installer to ship with SQLite 3.50.4." msgstr "" -#: ../NEWS:6080 +#: ../NEWS:6167 msgid "" ":gh:`135099`: Fix a crash that could occur on Windows when a background " "thread waits on a :c:type:`PyMutex` while the main thread is shutting down " "the interpreter." msgstr "" -#: ../NEWS:6084 +#: ../NEWS:6171 msgid "" ":gh:`130727`: Fix a race in internal calls into WMI that can result in an " "\"invalid handle\" exception under high load. Patch by Chris Eibl." msgstr "" -#: ../NEWS:6087 +#: ../NEWS:6174 msgid "" ":gh:`76023`: Make :func:`os.path.realpath` ignore Windows error 1005 when in " "non-strict mode." msgstr "" -#: ../NEWS:6090 +#: ../NEWS:6177 msgid "" ":gh:`133779`: Reverts the change to generate different :file:`pyconfig.h` " "files based on compiler settings, as it was frequently causing extension " @@ -10354,113 +10482,113 @@ msgid "" "with that flag or not." msgstr "" -#: ../NEWS:6098 +#: ../NEWS:6185 msgid "" ":gh:`133626`: Ensures packages are not accidentally bundled into the " "traditional installer." msgstr "" -#: ../NEWS:6101 +#: ../NEWS:6188 msgid "" ":gh:`133580`: Fix :func:`sys.getwindowsversion` failing without setting an " "exception when called on some WinAPI partitions." msgstr "" -#: ../NEWS:6104 +#: ../NEWS:6191 msgid "" ":gh:`133572`: Avoid LsaNtStatus to WinError conversion on unsupported WinAPI " "partitions." msgstr "" -#: ../NEWS:6107 +#: ../NEWS:6194 msgid "" ":gh:`133568`: Fix compile error when using a WinAPI partition that doesn't " "support the RPC runtime library." msgstr "" -#: ../NEWS:6110 +#: ../NEWS:6197 msgid "" ":gh:`133562`: Disable handling of security descriptors by :func:`os.mkdir` " "with mode ``0o700`` on WinAPI partitions that do not support it. This only " "affects custom builds for specialized targets." msgstr "" -#: ../NEWS:6114 +#: ../NEWS:6201 msgid "" ":gh:`133537`: Avoid using console I/O in WinAPI partitions that don’t " "support it" msgstr "" -#: ../NEWS:6117 +#: ../NEWS:6204 msgid "" ":gh:`131942`: Use the Python-specific :c:macro:`Py_DEBUG` macro rather than :" "c:macro:`!_DEBUG` in Windows-related C code. Patch by Xuehai Pan." msgstr "" -#: ../NEWS:6123 +#: ../NEWS:6210 msgid "" ":gh:`139330`: SBOM generation tool didn't cross-check the version and " "checksum values against the ``Modules/expat/refresh.sh`` script, leading to " "the values becoming out-of-date during routine updates." msgstr "" -#: ../NEWS:6127 +#: ../NEWS:6214 msgid "" ":gh:`132006`: XCframeworks now include privacy manifests to satisfy Apple " "App Store submission requirements." msgstr "" -#: ../NEWS:6130 +#: ../NEWS:6217 msgid "" ":gh:`138171`: A script for building an iOS XCframework was added. As part of " "this change, the top level ``iOS`` folder has been moved to be a " "subdirectory of the ``Apple`` folder." msgstr "" -#: ../NEWS:6134 +#: ../NEWS:6221 msgid "" ":gh:`137873`: The iOS test runner has been simplified, resolving some issues " "that have been observed using the runner in GitHub Actions and Azure " "Pipelines test environments." msgstr "" -#: ../NEWS:6138 +#: ../NEWS:6225 msgid "" ":gh:`137484`: Have ``Tools/wasm/wasi`` put the build Python into a directory " "named after the build triple instead of \"build\"." msgstr "" -#: ../NEWS:6141 +#: ../NEWS:6228 msgid "" ":gh:`137025`: The ``wasm_build.py`` script has been removed. ``Tools/wasm/" "emscripten`` and ``Tools/wasm/wasi`` should be used instead, as described in " "the `Dev Guide `__." msgstr "" -#: ../NEWS:6146 +#: ../NEWS:6233 msgid "" ":gh:`137248`: Add a ``--logdir`` option to ``Tools/wasm/wasi`` for " "specifying where to write log files." msgstr "" -#: ../NEWS:6149 +#: ../NEWS:6236 msgid "" ":gh:`137243`: Have Tools/wasm/wasi detect a WASI SDK install in /opt when it " "was directly extracted from a release tarball." msgstr "" -#: ../NEWS:6152 +#: ../NEWS:6239 msgid "" ":gh:`136251`: Fixes and usability improvements for ``Tools/wasm/emscripten/" "web_example``" msgstr "" -#: ../NEWS:6155 +#: ../NEWS:6242 msgid "" ":gh:`135968`: Stubs for ``strip`` are now provided as part of an iOS install." msgstr "" -#: ../NEWS:6157 +#: ../NEWS:6244 msgid "" ":gh:`135379`: The cases generator no longer accepts type annotations on " "stack items. Conversions to non-default types are now done explicitly in " @@ -10468,94 +10596,94 @@ msgid "" "for top-of-stack caching and other future features." msgstr "" -#: ../NEWS:6162 +#: ../NEWS:6249 msgid "" ":gh:`134215`: :term:`REPL` import autocomplete only suggests private modules " "when explicitly specified." msgstr "" -#: ../NEWS:6168 +#: ../NEWS:6255 msgid "" ":gh:`139208`: Fix regrtest ``--fast-ci --verbose``: don't ignore the ``--" "verbose`` option anymore. Patch by Victor Stinner." msgstr "" -#: ../NEWS:6171 +#: ../NEWS:6258 msgid "" ":gh:`138313`: Restore skipped test and add janky workaround to prevent " "select buildbots from failing with a ResourceWarning." msgstr "" -#: ../NEWS:6174 +#: ../NEWS:6261 msgid "" ":gh:`135966`: The iOS testbed now handles the ``app_packages`` folder as a " "site directory." msgstr "" -#: ../NEWS:6177 +#: ../NEWS:6264 msgid "" ":gh:`135494`: Fix regrtest to support excluding tests from ``--pgo`` tests. " "Patch by Victor Stinner." msgstr "" -#: ../NEWS:6180 +#: ../NEWS:6267 msgid "" ":gh:`132815`: Fix test__opcode: add ``JUMP_BACKWARD`` to specialization " "stats." msgstr "" -#: ../NEWS:6183 +#: ../NEWS:6270 msgid "" ":gh:`135489`: Show verbose output for failing tests during PGO profiling " "step with --enable-optimizations." msgstr "" -#: ../NEWS:6186 +#: ../NEWS:6273 msgid "" ":gh:`135401`: Add a new GitHub CI job to test the :mod:`ssl` module with " "`AWS-LC `_ as the backing cryptography and " "TLS library." msgstr "" -#: ../NEWS:6190 +#: ../NEWS:6277 msgid ":gh:`135120`: Add :func:`!test.support.subTests`." msgstr "" -#: ../NEWS:6192 +#: ../NEWS:6279 msgid "" ":gh:`134567`: Expose log formatter to users in TestCase.assertLogs. :func:" "`unittest.TestCase.assertLogs` will now optionally accept a formatter that " "will be used to format the strings in output if provided." msgstr "" -#: ../NEWS:6196 +#: ../NEWS:6283 msgid "" ":gh:`133744`: Fix multiprocessing interrupt test. Add an event to " "synchronize the parent process with the child process: wait until the child " "process starts sleeping. Patch by Victor Stinner." msgstr "" -#: ../NEWS:6200 +#: ../NEWS:6287 msgid "" ":gh:`133682`: Fixed test case ``test.test_annotationlib.TestStringFormat." "test_displays`` which ensures proper handling of complex data structures " "(lists, sets, dictionaries, and tuples) in string annotations." msgstr "" -#: ../NEWS:6205 +#: ../NEWS:6292 msgid "" ":gh:`133639`: Fix ``TestPyReplAutoindent.test_auto_indent_default()`` " "doesn't run ``input_code``." msgstr "" -#: ../NEWS:6211 +#: ../NEWS:6298 msgid "" ":gh:`139700`: Check consistency of the zip64 end of central directory " "record. Support records with \"zip64 extensible data\" if there are no bytes " "prepended to the ZIP file." msgstr "" -#: ../NEWS:6215 +#: ../NEWS:6302 msgid "" ":gh:`139400`: :mod:`xml.parsers.expat`: Make sure that parent Expat parsers " "are only garbage-collected once they are no longer referenced by subparsers " @@ -10563,7 +10691,7 @@ msgid "" "Patch by Sebastian Pipping." msgstr "" -#: ../NEWS:6221 +#: ../NEWS:6308 msgid "" ":gh:`139283`: :mod:`sqlite3`: correctly handle maximum number of rows to " "fetch in :meth:`Cursor.fetchmany ` and reject " @@ -10571,54 +10699,54 @@ msgid "" "Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:6226 +#: ../NEWS:6313 msgid "" ":gh:`136053`: :mod:`marshal`: fix a possible crash when deserializing :class:" "`slice` objects." msgstr "" -#: ../NEWS:6229 +#: ../NEWS:6316 msgid "" ":gh:`135661`: Fix parsing start and end tags in :class:`html.parser." "HTMLParser` according to the HTML5 standard." msgstr "" -#: ../NEWS:6232 +#: ../NEWS:6319 msgid "" "Whitespaces no longer accepted between ```` does not end the script section." msgstr "" -#: ../NEWS:6235 +#: ../NEWS:6322 msgid "" "Vertical tabulation (``\\v``) and non-ASCII whitespaces no longer recognized " "as whitespaces. The only whitespaces are ``\\t\\n\\r\\f`` and space." msgstr "" -#: ../NEWS:6238 +#: ../NEWS:6325 msgid "Null character (U+0000) no longer ends the tag name." msgstr "" -#: ../NEWS:6240 +#: ../NEWS:6327 msgid "" "Attributes and slashes after the tag name in end tags are now ignored, " "instead of terminating after the first ``>`` in quoted attribute value. E.g. " "``\"/>``." msgstr "" -#: ../NEWS:6244 +#: ../NEWS:6331 msgid "" "Multiple slashes and whitespaces between the last attribute and closing " "``>`` are now ignored in both start and end tags. E.g. ````." msgstr "" -#: ../NEWS:6247 +#: ../NEWS:6334 msgid "" "Multiple ``=`` between attribute name and value are no longer collapsed. E." "g. ```` produces attribute \"foo\" with value \"=bar\"." msgstr "" -#: ../NEWS:6250 +#: ../NEWS:6337 msgid "" ":gh:`135661`: Fix CDATA section parsing in :class:`html.parser.HTMLParser` " "according to the HTML5 standard: ``] ]>`` and ``]] >`` no longer end the " @@ -10627,7 +10755,7 @@ msgid "" "content (SVG or MathML) or as a bogus comment in the HTML namespace." msgstr "" -#: ../NEWS:6257 +#: ../NEWS:6344 msgid "" ":gh:`102555`: Fix comment parsing in :class:`html.parser.HTMLParser` " "according to the HTML5 standard. ``--!>`` now ends the comment. ``-- >`` no " @@ -10635,7 +10763,7 @@ msgid "" "and ``<--->``." msgstr "" -#: ../NEWS:6262 +#: ../NEWS:6349 msgid "" ":gh:`135462`: Fix quadratic complexity in processing specially crafted input " "in :class:`html.parser.HTMLParser`. End-of-file errors are now handled " @@ -10643,65 +10771,65 @@ msgid "" "closed, tags are ignored." msgstr "" -#: ../NEWS:6267 +#: ../NEWS:6354 msgid "" ":gh:`118350`: Fix support of escapable raw text mode (elements \"textarea\" " "and \"title\") in :class:`html.parser.HTMLParser`." msgstr "" -#: ../NEWS:6270 +#: ../NEWS:6357 msgid "" ":gh:`135034`: Fixes multiple issues that allowed ``tarfile`` extraction " "filters (``filter=\"data\"`` and ``filter=\"tar\"``) to be bypassed using " "crafted symlinks and hard links." msgstr "" -#: ../NEWS:6274 +#: ../NEWS:6361 msgid "" "Addresses :cve:`2024-12718`, :cve:`2025-4138`, :cve:`2025-4330`, and :cve:" "`2025-4517`." msgstr "" -#: ../NEWS:6277 +#: ../NEWS:6364 msgid "" ":gh:`133767`: Fix use-after-free in the \"unicode-escape\" decoder with a " "non-\"strict\" error handler." msgstr "" -#: ../NEWS:6280 +#: ../NEWS:6367 msgid "" ":gh:`133623`: Indicate through :data:`ssl.HAS_PSK_TLS13` whether the :mod:" "`ssl` module supports \"External PSKs\" in TLSv1.3, as described in RFC " "9258. Patch by Will Childs-Klein." msgstr "" -#: ../NEWS:6284 +#: ../NEWS:6371 msgid "" ":gh:`128840`: Short-circuit the processing of long IPv6 addresses early in :" "mod:`ipaddress` to prevent excessive memory consumption and a minor denial-" "of-service." msgstr "" -#: ../NEWS:6291 +#: ../NEWS:6378 msgid "" ":gh:`139482`: Optimize :data:`os.environ.clear() ` by calling :" "manpage:`clearenv(3)` when this function is available. Patch by Victor " "Stinner." msgstr "" -#: ../NEWS:6295 +#: ../NEWS:6382 msgid "" ":gh:`139958`: The ``application/toml`` mime type is now supported by :mod:" "`mimetypes`. Patch by Gil Forcada." msgstr "" -#: ../NEWS:6298 +#: ../NEWS:6385 msgid "" ":gh:`139823`: :mod:`ensurepip` now fails with a nicer error message when " "the :mod:`zlib` module is not available." msgstr "" -#: ../NEWS:6301 +#: ../NEWS:6388 msgid "" ":gh:`139905`: Add suggestion to error message for :class:`typing.Generic` " "subclasses when ``cls.__parameters__`` is missing due to a parent class " @@ -10709,38 +10837,38 @@ msgid "" "__init_subclass__>` in its ``__init_subclass__``." msgstr "" -#: ../NEWS:6306 +#: ../NEWS:6393 msgid "" ":gh:`139894`: Fix incorrect sharing of current task with the child process " "while forking in :mod:`asyncio`. Patch by Kumar Aditya." msgstr "" -#: ../NEWS:6309 +#: ../NEWS:6396 msgid "" ":gh:`139845`: Fix to not print KeyboardInterrupt twice in default asyncio " "REPL." msgstr "" -#: ../NEWS:6312 +#: ../NEWS:6399 msgid "" ":gh:`139783`: Fix :func:`inspect.getsourcelines` for the case when a " "decorator is followed by a comment or an empty line." msgstr "" -#: ../NEWS:6315 +#: ../NEWS:6402 msgid "" ":gh:`139809`: Prevent premature colorization of subparser ``prog`` in :meth:" "`argparse.ArgumentParser.add_subparsers` to respect color environment " "variable changes after parser creation." msgstr "" -#: ../NEWS:6319 +#: ../NEWS:6406 msgid "" ":gh:`139736`: Fix excessive indentation in the default :mod:`argparse` :" "class:`!HelpFormatter`. Patch by Alexander Edland." msgstr "" -#: ../NEWS:6322 +#: ../NEWS:6409 msgid "" ":gh:`70765`: :mod:`http.server`: fix default handling of HTTP/0.9 requests " "in :class:`~http.server.BaseHTTPRequestHandler`. Previously, :meth:`!" @@ -10748,36 +10876,36 @@ msgid "" "request although those are not supported in HTTP/0.9. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:6328 +#: ../NEWS:6415 msgid "" ":gh:`139322`: Fix :func:`os.getlogin` error handling: fix the error number. " "Patch by Victor Stinner." msgstr "" -#: ../NEWS:6331 +#: ../NEWS:6418 msgid "" ":gh:`135953`: Add a Gecko format output to the tachyon profiler via ``--" "gecko``." msgstr "" -#: ../NEWS:6334 +#: ../NEWS:6421 msgid "" ":gh:`139184`: :func:`os.forkpty` does now make the returned file descriptor " "non-inheritable." msgstr "" -#: ../NEWS:6337 +#: ../NEWS:6424 msgid "" ":gh:`139391`: Fix an issue when, on non-Windows platforms, it was not " "possible to gracefully exit a ``python -m asyncio`` process suspended by " "Ctrl+Z and later resumed by :manpage:`fg` other than with :manpage:`kill`." msgstr "" -#: ../NEWS:6341 +#: ../NEWS:6428 msgid ":gh:`139374`: :mod:`timeit`: Add color to error tracebacks." msgstr "" -#: ../NEWS:6343 +#: ../NEWS:6430 msgid "" ":gh:`90949`: Add :meth:`~xml.parsers.expat.xmlparser." "SetBillionLaughsAttackProtectionActivationThreshold` and :meth:`~xml.parsers." @@ -10787,17 +10915,17 @@ msgid "" "attacks. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:6352 +#: ../NEWS:6439 msgid ":gh:`139312`: Upgrade bundled libexpat to 2.7.3" msgstr "" -#: ../NEWS:6354 +#: ../NEWS:6441 msgid "" ":gh:`139289`: Do a real lazy-import on :mod:`rlcompleter` in :mod:`pdb` and " "restore the existing completer after importing :mod:`rlcompleter`." msgstr "" -#: ../NEWS:6357 +#: ../NEWS:6444 msgid "" ":gh:`90949`: Add :meth:`~xml.parsers.expat.xmlparser." "SetAllocTrackerActivationThreshold` and :meth:`~xml.parsers.expat.xmlparser." @@ -10806,7 +10934,7 @@ msgid "" "memory usage from within an Expat parser. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:6365 +#: ../NEWS:6452 msgid "" ":gh:`67795`: Functions that take timestamp or timeout arguments now accept " "any real numbers (such as :class:`~decimal.Decimal` and :class:`~fractions." @@ -10814,38 +10942,38 @@ msgid "" "precision." msgstr "" -#: ../NEWS:6370 +#: ../NEWS:6457 msgid "" ":gh:`95953`: A CSS class, ``diff_changed``, was added to the changed lines " "in the ``make_table`` output of :class:`difflib.HtmlDiff`. Patch by Katie " "Gardner." msgstr "" -#: ../NEWS:6374 +#: ../NEWS:6461 msgid "" ":gh:`139210`: Fix use-after-free when reporting unknown event in :func:`xml." "etree.ElementTree.iterparse`. Patch by Ken Jin." msgstr "" -#: ../NEWS:6377 +#: ../NEWS:6464 msgid "" ":gh:`138860`: Lazy import :mod:`rlcompleter` in :mod:`pdb` to avoid deadlock " "in subprocess." msgstr "" -#: ../NEWS:6380 +#: ../NEWS:6467 msgid "" ":gh:`112729`: Fix crash when calling :func:`concurrent.interpreters.create` " "when the process is out of memory." msgstr "" -#: ../NEWS:6383 +#: ../NEWS:6470 msgid "" ":gh:`126016`: Fix an assertion failure when sending :exc:`KeyboardInterrupt` " "to a Python process running a subinterpreter in a separate thread." msgstr "" -#: ../NEWS:6386 +#: ../NEWS:6473 msgid "" ":gh:`118803`: :class:`collections.abc.ByteString` has been removed from " "``collections.abc.__all__``, and :class:`typing.ByteString` has been removed " @@ -10854,7 +10982,7 @@ msgid "" "scheduled for removal in Python 3.17." msgstr "" -#: ../NEWS:6392 +#: ../NEWS:6479 msgid "" "Additionally, the following statements now cause ``DeprecationWarning``\\ s " "to be emitted at runtime: ``from collections.abc import ByteString``, ``from " @@ -10866,50 +10994,50 @@ msgid "" "merely imported or accessed from their respective modules." msgstr "" -#: ../NEWS:6402 +#: ../NEWS:6489 msgid "" ":gh:`135729`: Fix unraisable exception during finalization when using :mod:" "`concurrent.interpreters` in the REPL." msgstr "" -#: ../NEWS:6405 +#: ../NEWS:6492 msgid "" ":gh:`139076`: Fix a bug in the :mod:`pydoc` module that was hiding functions " "in a Python module if they were implemented in an extension module and the " "module did not have ``__all__``." msgstr "" -#: ../NEWS:6409 +#: ../NEWS:6496 msgid ":gh:`139090`: Add :data:`os.RWF_DONTCACHE` constant for Linux 6.14+." msgstr "" -#: ../NEWS:6411 +#: ../NEWS:6498 msgid "" ":gh:`139065`: Fix trailing space before a wrapped long word if the line " "length is exactly *width* in :mod:`textwrap`." msgstr "" -#: ../NEWS:6414 +#: ../NEWS:6501 msgid "" ":gh:`139001`: Fix race condition in :class:`pathlib.Path` on the internal " "``_raw_paths`` field." msgstr "" -#: ../NEWS:6417 +#: ../NEWS:6504 msgid "" ":gh:`138813`: :class:`!multiprocessing.BaseProcess` defaults ``kwargs`` to " "``None`` instead of a shared dictionary." msgstr "" -#: ../NEWS:6420 +#: ../NEWS:6507 msgid ":gh:`138998`: Update bundled libexpat to 2.7.2" msgstr "" -#: ../NEWS:6422 +#: ../NEWS:6509 msgid ":gh:`138993`: Dedent :data:`credits` text." msgstr "" -#: ../NEWS:6424 +#: ../NEWS:6511 msgid "" ":gh:`118803`: Add back :class:`collections.abc.ByteString` and :class:" "`typing.ByteString`. Both had been removed in prior alpha, beta and release " @@ -10917,55 +11045,55 @@ msgid "" "Python 3.17." msgstr "" -#: ../NEWS:6429 +#: ../NEWS:6516 msgid "" ":gh:`130567`: Fix possible crash in :func:`locale.strxfrm` due to a platform " "bug on macOS." msgstr "" -#: ../NEWS:6432 +#: ../NEWS:6519 msgid "" ":gh:`137226`: Fix :func:`typing.get_type_hints` calls on generic :class:" "`typing.TypedDict` classes defined with string annotations." msgstr "" -#: ../NEWS:6435 +#: ../NEWS:6522 msgid "" ":gh:`138899`: Executing ``quit`` command in :mod:`pdb` will raise :exc:`bdb." "BdbQuit` when :mod:`pdb` is started from an asyncio console using :func:" "`breakpoint` or :func:`pdb.set_trace`." msgstr "" -#: ../NEWS:6439 +#: ../NEWS:6526 msgid "" ":gh:`138804`: Raise :exc:`TypeError` instead of :exc:`AttributeError` when " "an argument of incorrect type is passed to :func:`shlex.quote`. This " "restores the behavior of the function prior to 3.14." msgstr "" -#: ../NEWS:6443 +#: ../NEWS:6530 msgid "" ":gh:`138779`: Support device numbers larger than ``2**63-1`` for the :attr:" "`~os.stat_result.st_rdev` field of the :class:`os.stat_result` structure." msgstr "" -#: ../NEWS:6447 +#: ../NEWS:6534 msgid "" ":gh:`138682`: Added symmetric difference support to :class:`collections." "Counter` objects." msgstr "" -#: ../NEWS:6450 +#: ../NEWS:6537 msgid ":gh:`138712`: Add :const:`os.NODEV`." msgstr "" -#: ../NEWS:6452 +#: ../NEWS:6539 msgid "" ":gh:`128636`: Fix crash in PyREPL when os.environ is overwritten with an " "invalid value for mac" msgstr "" -#: ../NEWS:6455 +#: ../NEWS:6542 msgid "" ":gh:`138720`: Fix an issue where :class:`io.BufferedWriter` and :class:`io." "BufferedRandom` had different definitions of \"closed\" for :meth:`~io." @@ -10973,41 +11101,41 @@ msgid "" "when close called flush but flush thought the file was already closed." msgstr "" -#: ../NEWS:6461 +#: ../NEWS:6548 msgid ":gh:`138706`: Update :mod:`unicodedata` database to Unicode 17.0.0." msgstr "" -#: ../NEWS:6463 +#: ../NEWS:6550 msgid "" ":gh:`76007`: Deprecate ``__version__`` from a number of standard library " "modules. Patch by Hugo van Kemenade." msgstr "" -#: ../NEWS:6466 +#: ../NEWS:6553 msgid "" ":gh:`138535`: Speed up :func:`os.stat` for files with reasonable timestamps. " "Contributed by Jeffrey Bosboom." msgstr "" -#: ../NEWS:6469 +#: ../NEWS:6556 msgid "" ":gh:`116946`: :mod:`curses.panel`: the type of :func:`curses.panel." "new_panel` is now immutable. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:6472 +#: ../NEWS:6559 msgid "" ":gh:`116946`: :mod:`zlib`: the types of :func:`zlib.compressobj` and :func:" "`zlib.decompressobj` are now immutable. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:6475 +#: ../NEWS:6562 msgid "" ":gh:`116946`: :mod:`os`: the :class:`os.DirEntry` type and the type of :func:" "`os.scandir` are now immutable. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:6478 +#: ../NEWS:6565 msgid "" ":gh:`116946`: :mod:`tkinter`: the types :class:`!_tkinter.Tcl_Obj` (wrapper " "for Tcl objects), :class:`!_tkinter.tktimertoken` (obtained by calling " @@ -11016,20 +11144,20 @@ msgid "" "immutable. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:6484 +#: ../NEWS:6571 msgid "" ":gh:`138514`: Raise :exc:`ValueError` when a multi-character string is " "passed to the *echo_char* parameter of :func:`getpass.getpass`. Patch by " "Benjamin Johnson." msgstr "" -#: ../NEWS:6488 +#: ../NEWS:6575 msgid "" ":gh:`137706`: Fix the partial evaluation of annotations that use ``typing." "Annotated[T, x]`` where ``T`` is a forward reference." msgstr "" -#: ../NEWS:6491 +#: ../NEWS:6578 msgid "" ":gh:`88375`: Fix normalization of the ``robots.txt`` rules and URLs in the :" "mod:`urllib.robotparser` module. No longer ignore trailing ``?``. " @@ -11037,23 +11165,23 @@ msgid "" "encoded ones." msgstr "" -#: ../NEWS:6496 +#: ../NEWS:6583 msgid ":gh:`138515`: :mod:`email` is added to Emscripten build." msgstr "" -#: ../NEWS:6498 +#: ../NEWS:6585 msgid "" ":gh:`99948`: :func:`ctypes.util.find_library` now works in Emscripten build." msgstr "" -#: ../NEWS:6500 +#: ../NEWS:6587 msgid "" ":gh:`111788`: Fix parsing errors in the :mod:`urllib.robotparser` module. " "Don't fail trying to parse weird paths. Don't fail trying to decode non-" "UTF-8 ``robots.txt`` files." msgstr "" -#: ../NEWS:6504 +#: ../NEWS:6591 msgid "" ":gh:`138432`: :meth:`zoneinfo.reset_tzpath` will now convert any :class:`os." "PathLike` objects it receives into strings before adding them to ``TZPATH``. " @@ -11063,44 +11191,44 @@ msgid "" "and present a more informative error message." msgstr "" -#: ../NEWS:6511 +#: ../NEWS:6598 msgid "" ":gh:`132657`: Improve the scaling of :func:`copy.copy` and :func:`copy." "deepcopy` in the free-threading build." msgstr "" -#: ../NEWS:6514 +#: ../NEWS:6601 msgid "" ":gh:`116946`: The types of :func:`select.poll` and :func:`select.epoll` " "objects are now immutable. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:6517 +#: ../NEWS:6604 msgid "" ":gh:`116946`: The :class:`!_random.Random` C type is now immutable. Patch by " "Bénédikt Tran." msgstr "" -#: ../NEWS:6520 +#: ../NEWS:6607 msgid "" ":gh:`57911`: When extracting tar files on Windows, slashes in symlink " "targets will be replaced by backslashes to prevent corrupted links." msgstr "" -#: ../NEWS:6523 +#: ../NEWS:6610 msgid "" ":gh:`138205`: Removed the :meth:`~mmap.mmap.resize` method on platforms that " "don't support the underlying syscall, instead of raising a :exc:" "`SystemError`." msgstr "" -#: ../NEWS:6527 +#: ../NEWS:6614 msgid "" ":gh:`138008`: Fix segmentation faults in the :mod:`ctypes` module due to " "invalid :attr:`~ctypes._CFuncPtr.argtypes`. Patch by Dung Nguyen." msgstr "" -#: ../NEWS:6530 +#: ../NEWS:6617 msgid "" ":gh:`138252`: :mod:`ssl`: :class:`~ssl.SSLContext` objects can now set " "client and server TLS signature algorithms. If Python has been built with " @@ -11108,39 +11236,39 @@ msgid "" "signature algorithms selected on a connection." msgstr "" -#: ../NEWS:6535 +#: ../NEWS:6622 msgid "" ":gh:`138253`: Add the *block* parameter in the :meth:`!put` and :meth:`!get` " "methods of the :mod:`concurrent.interpreters` queues for compatibility with " "the :class:`queue.Queue` interface." msgstr "" -#: ../NEWS:6539 +#: ../NEWS:6626 msgid "" ":gh:`60462`: Fix :func:`locale.strxfrm` on Solaris (and possibly other " "platforms)." msgstr "" -#: ../NEWS:6542 +#: ../NEWS:6629 msgid "" ":gh:`138239`: The REPL now highlights :keyword:`type` as a soft keyword in :" "ref:`type statements `." msgstr "" -#: ../NEWS:6545 +#: ../NEWS:6632 msgid "" ":gh:`78502`: :class:`mmap.mmap` now has a *trackfd* parameter on Windows; if " "it is ``False``, the file handle corresponding to *fileno* will not be " "duplicated." msgstr "" -#: ../NEWS:6549 +#: ../NEWS:6636 msgid "" ":gh:`138204`: Forbid expansion of shared anonymous :mod:`memory maps ` " "on Linux, which caused a bus error." msgstr "" -#: ../NEWS:6552 +#: ../NEWS:6639 msgid "" ":gh:`138010`: Fix an issue where defining a class with a :deco:`warnings." "deprecated`-decorated base class may not invoke the correct :meth:`~object." @@ -11148,53 +11276,53 @@ msgid "" "Brian Schubert." msgstr "" -#: ../NEWS:6557 +#: ../NEWS:6644 msgid "" ":gh:`134716`: Add support of regular expressions in the :option:`-W` option " "and the :envvar:`PYTHONWARNINGS` environment variable." msgstr "" -#: ../NEWS:6560 +#: ../NEWS:6647 msgid "" ":gh:`138133`: Prevent infinite traceback loop when sending CTRL^C to Python " "through ``strace``." msgstr "" -#: ../NEWS:6563 +#: ../NEWS:6650 msgid "" ":gh:`138122`: Implement :pep:`799` -- A dedicated profiling package for " "organizing Python profiling tools. Patch by Pablo Galindo." msgstr "" -#: ../NEWS:6566 +#: ../NEWS:6653 msgid "" ":gh:`138092`: Fixed a bug in :meth:`mmap.mmap.flush` where calling with only " "an offset parameter would fail." msgstr "" -#: ../NEWS:6569 +#: ../NEWS:6656 msgid "" ":gh:`138044`: Remove compatibility shim for deprecated parameter *package* " "in :func:`importlib.resources.files`. Patch by Semyon Moroz." msgstr "" -#: ../NEWS:6572 +#: ../NEWS:6659 msgid ":gh:`86819`: :mod:`socket`: Add missing constants for ISO-TP sockets." msgstr "" -#: ../NEWS:6574 +#: ../NEWS:6661 msgid "" ":gh:`137884`: Add :func:`threading.get_native_id` support for Illumos/" "Solaris. Patch by Yüce Tekol." msgstr "" -#: ../NEWS:6577 +#: ../NEWS:6664 msgid "" ":gh:`134869`: Fix an issue where pressing Ctrl+C during tab completion in " "the REPL would leave the autocompletion menu in a corrupted state." msgstr "" -#: ../NEWS:6580 +#: ../NEWS:6667 msgid "" ":gh:`137840`: :class:`typing.TypedDict` now supports the ``closed`` and " "``extra_items`` keyword arguments (as described in :pep:`728`) to control " @@ -11202,7 +11330,7 @@ msgid "" "type." msgstr "" -#: ../NEWS:6585 +#: ../NEWS:6672 msgid "" ":gh:`132947`: Applied changes to ``importlib.metadata`` from " "`importlib_metadata 8.7 ` was blocked in one thread, and then " @@ -11273,26 +11401,26 @@ msgid "" "socket.send>`) was subsequently called in another thread." msgstr "" -#: ../NEWS:6626 +#: ../NEWS:6713 msgid "" ":gh:`92936`: Update regex used by ``http.cookies.SimpleCookie`` to handle " "values containing double quotes." msgstr "" -#: ../NEWS:6629 +#: ../NEWS:6716 msgid "" ":gh:`137426`: Remove the code deprecation of ``importlib.abc." "ResourceLoader``. It is documented as deprecated, but left for backwards " "compatibility with other classes in ``importlib.abc``." msgstr "" -#: ../NEWS:6633 +#: ../NEWS:6720 msgid "" ":gh:`137490`: Handle :data:`~errno.ECANCELED` in the same way as :data:" "`~errno.EINTR` in :func:`signal.sigwaitinfo` on NetBSD." msgstr "" -#: ../NEWS:6636 +#: ../NEWS:6723 msgid "" ":gh:`137512`: Add new constants in the :mod:`resource` module: :data:" "`~resource.RLIMIT_NTHR`, :data:`~resource.RLIMIT_UMTXP`, :data:`~resource." @@ -11300,7 +11428,7 @@ msgid "" "RLIM_SAVED_CUR`, and :data:`~resource.RLIM_SAVED_MAX`." msgstr "" -#: ../NEWS:6641 +#: ../NEWS:6728 msgid "" ":gh:`137044`: :data:`resource.RLIM_INFINITY` is now always a positive " "integer. On all supported platforms, it is larger than any limited resource " @@ -11308,26 +11436,26 @@ msgid "" "could be negative, such as -1 or -3, depending on platform." msgstr "" -#: ../NEWS:6646 +#: ../NEWS:6733 msgid "" ":gh:`137477`: Fix :func:`!inspect.getblock`, :func:`inspect.getsourcelines` " "and :func:`inspect.getsource` for generator expressions." msgstr "" -#: ../NEWS:6649 +#: ../NEWS:6736 msgid "" ":gh:`137481`: Calendar uses the lengths of the locale's weekdays to decide " "if the width requires abbreviation." msgstr "" -#: ../NEWS:6652 +#: ../NEWS:6739 msgid "" ":gh:`137466`: Remove undocumented :func:`!glob.glob0` and :func:`!glob." "glob1` functions, which have been deprecated since Python 3.13. Use :func:" "`glob.glob` and pass a directory to its *root_dir* argument instead." msgstr "" -#: ../NEWS:6656 +#: ../NEWS:6743 msgid "" ":gh:`137044`: Return large limit values as positive integers instead of " "negative integers in :func:`resource.getrlimit`. Accept large values and " @@ -11335,18 +11463,18 @@ msgid "" "in :func:`resource.setrlimit`." msgstr "" -#: ../NEWS:6661 +#: ../NEWS:6748 msgid ":gh:`115766`: Fix :attr:`!ipaddress.IPv4Interface.is_unspecified`." msgstr "" -#: ../NEWS:6663 +#: ../NEWS:6750 msgid "" ":gh:`75989`: :func:`tarfile.TarFile.extractall` and :func:`tarfile.TarFile." "extract` now overwrite symlinks when extracting hardlinks. (Contributed by " "Alexander Enrique Urieles Nieto in :gh:`75989`.)" msgstr "" -#: ../NEWS:6668 +#: ../NEWS:6755 msgid "" ":gh:`137017`: Fix :obj:`threading.Thread.is_alive` to remain ``True`` until " "the underlying OS thread is fully cleaned up. This avoids false negatives in " @@ -11354,13 +11482,13 @@ msgid "" "is_alive` calls." msgstr "" -#: ../NEWS:6673 +#: ../NEWS:6760 msgid "" ":gh:`137273`: Fix debug assertion failure in :func:`locale.setlocale` on " "Windows." msgstr "" -#: ../NEWS:6676 +#: ../NEWS:6763 msgid "" ":gh:`137191`: Fix how type parameters are collected, when :class:`typing." "Protocol` are specified with explicit parameters. Now, :class:`typing." @@ -11368,87 +11496,87 @@ msgid "" "and parameter ordering of types. Previous behavior was a bug." msgstr "" -#: ../NEWS:6682 +#: ../NEWS:6769 msgid "" ":gh:`137282`: Fix tab completion and :func:`dir` on :mod:`concurrent." "futures`." msgstr "" -#: ../NEWS:6685 +#: ../NEWS:6772 msgid "" ":gh:`137257`: Bump the version of pip bundled in ensurepip to version 25.2" msgstr "" -#: ../NEWS:6687 +#: ../NEWS:6774 msgid "" ":gh:`137239`: :mod:`heapq`: Update :data:`!heapq.__all__` with ``*_max`` " "functions." msgstr "" -#: ../NEWS:6690 +#: ../NEWS:6777 msgid "" ":gh:`124503`: :func:`ast.literal_eval` is 10-20% faster for small inputs." msgstr "" -#: ../NEWS:6692 +#: ../NEWS:6779 msgid "" ":gh:`137226`: Fix behavior of :meth:`annotationlib.ForwardRef.evaluate` when " "the *type_params* parameter is passed and the name of a type param is also " "present in an enclosing scope." msgstr "" -#: ../NEWS:6696 +#: ../NEWS:6783 msgid "" ":gh:`137197`: :class:`~ssl.SSLContext` objects can now set TLS 1.3 cipher " "suites via :meth:`~ssl.SSLContext.set_ciphersuites`." msgstr "" -#: ../NEWS:6699 +#: ../NEWS:6786 msgid "" ":gh:`81325`: :class:`tarfile.TarFile` now accepts a :term:`path-like ` when working on a tar archive. (Contributed by Alexander " "Enrique Urieles Nieto in :gh:`81325`.)" msgstr "" -#: ../NEWS:6703 +#: ../NEWS:6790 msgid "" ":gh:`137185`: Fix a potential async-signal-safety issue in :mod:" "`faulthandler` when printing C stack traces." msgstr "" -#: ../NEWS:6706 +#: ../NEWS:6793 msgid "" ":gh:`133951`: Remove lib64-lib symlink creation when creating new virtual " "environments in :mod:`venv` module" msgstr "" -#: ../NEWS:6709 +#: ../NEWS:6796 msgid "" ":gh:`130522`: Fix unraisable :exc:`TypeError` raised during :term:" "`interpreter shutdown` in the :mod:`threading` module." msgstr "" -#: ../NEWS:6712 +#: ../NEWS:6799 msgid "" ":gh:`137059`: Fix handling of file URLs with a Windows drive letter in the " "URL authority by :func:`urllib.request.url2pathname`. This fixes a " "regression in earlier pre-releases of Python 3.14." msgstr "" -#: ../NEWS:6716 +#: ../NEWS:6803 msgid "" ":gh:`136980`: Remove unused C tracing code in bdb for event type ``c_call``, " "``c_return`` and ``c_exception``" msgstr "" -#: ../NEWS:6719 +#: ../NEWS:6806 msgid "" ":gh:`130577`: :mod:`tarfile` now validates archives to ensure member offsets " "are non-negative. (Contributed by Alexander Enrique Urieles Nieto in :gh:" "`130577`.)" msgstr "" -#: ../NEWS:6723 +#: ../NEWS:6810 msgid "" ":gh:`136170`: Removed the unreleased ``zipfile.ZipFile.data_offset`` " "property added in 3.14.0a7 as it wasn't fully clear which behavior it should " @@ -11456,14 +11584,14 @@ msgid "" "expect." msgstr "" -#: ../NEWS:6727 +#: ../NEWS:6814 msgid "" ":gh:`121237`: Support ``%:z`` directive for :meth:`datetime.datetime." "strptime`, :meth:`datetime.time.strptime` and :func:`time.strptime`. Patch " "by Lucas Esposito and Semyon Moroz." msgstr "" -#: ../NEWS:6731 +#: ../NEWS:6818 msgid "" ":gh:`136929`: Ensure that hash functions guaranteed to be always *available* " "exist as attributes of :mod:`hashlib` even if they will not work at runtime " @@ -11472,30 +11600,30 @@ msgid "" "has been built without MD5 support. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:6738 +#: ../NEWS:6825 msgid ":gh:`124621`: pyrepl now works in Emscripten." msgstr "" -#: ../NEWS:6740 +#: ../NEWS:6827 msgid "" ":gh:`136914`: Fix retrieval of :attr:`doctest.DocTest.lineno` for objects " "decorated with :func:`functools.cache` or :class:`functools.cached_property`." msgstr "" -#: ../NEWS:6744 +#: ../NEWS:6831 msgid "" ":gh:`136912`: :func:`hmac.digest` now properly handles large keys and " "messages by falling back to the pure Python implementation when necessary. " "Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:6748 +#: ../NEWS:6835 msgid "" ":gh:`83424`: Allows creating a :class:`ctypes.CDLL` without name when " "passing a handle as an argument." msgstr "" -#: ../NEWS:6751 +#: ../NEWS:6838 msgid "" ":gh:`135228`: When :mod:`dataclasses` replaces a class with a slotted " "dataclass, the original class can now be garbage collected again. Earlier " @@ -11503,13 +11631,13 @@ msgid "" "together with the replacement class synthesized by :mod:`dataclasses`." msgstr "" -#: ../NEWS:6756 +#: ../NEWS:6843 msgid "" ":gh:`136874`: Discard URL query and fragment in :func:`urllib.request." "url2pathname`." msgstr "" -#: ../NEWS:6759 +#: ../NEWS:6846 msgid "" ":gh:`136787`: :mod:`hashlib`: improve exception messages when a hash " "algorithm is not recognized, blocked by the current security policy or " @@ -11517,11 +11645,11 @@ msgid "" "SHAKE). Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:6764 +#: ../NEWS:6851 msgid ":gh:`130645`: Enable color help by default in :mod:`argparse`." msgstr "" -#: ../NEWS:6766 +#: ../NEWS:6853 msgid "" ":gh:`131724`: In :mod:`http.client`, a new *max_response_headers* keyword-" "only parameter has been added to :class:`~http.client.HTTPConnection` and :" @@ -11530,7 +11658,7 @@ msgid "" "service attacks." msgstr "" -#: ../NEWS:6773 +#: ../NEWS:6860 msgid "" ":gh:`135427`: With :option:`-Werror <-W>`, the DeprecationWarning emitted " "by :py:func:`os.fork` and :py:func:`os.forkpty` in mutli-threaded processes " @@ -11538,24 +11666,24 @@ msgid "" "Rani Pinchuk." msgstr "" -#: ../NEWS:6778 +#: ../NEWS:6865 msgid "" ":gh:`136234`: Fix :meth:`asyncio.WriteTransport.writelines` to be robust to " "connection failure, by using the same behavior as :meth:`~asyncio." "WriteTransport.write`." msgstr "" -#: ../NEWS:6782 +#: ../NEWS:6869 msgid ":gh:`53144`: :mod:`!encodings.aliases`: Add ``latin_N`` aliases" msgstr "" -#: ../NEWS:6784 +#: ../NEWS:6871 msgid "" ":gh:`136669`: :mod:`!_asyncio` is now statically linked for improved " "performance." msgstr "" -#: ../NEWS:6787 +#: ../NEWS:6874 msgid "" ":gh:`136134`: :meth:`!SMTP.auth_cram_md5` now raises an :exc:`~smtplib." "SMTPException` instead of a :exc:`ValueError` if Python has been built " @@ -11564,88 +11692,88 @@ msgid "" "it. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:6793 +#: ../NEWS:6880 msgid "" ":gh:`136134`: :meth:`IMAP4.login_cram_md5 ` " "now raises an :exc:`IMAP4.error ` if CRAM-MD5 " "authentication is not supported. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:6797 +#: ../NEWS:6884 msgid "" ":gh:`136591`: :mod:`!_hashlib`: avoid using deprecated functions :manpage:" "`ERR_func_error_string` and :manpage:`EVP_MD_CTX_md` when using OpenSSL 3.0 " "and later. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:6801 +#: ../NEWS:6888 msgid "" ":gh:`136571`: :meth:`datetime.date.fromisocalendar` can now raise " "OverflowError for out of range arguments." msgstr "" -#: ../NEWS:6804 +#: ../NEWS:6891 msgid ":gh:`136549`: Fix signature of :func:`threading.excepthook`." msgstr "" -#: ../NEWS:6806 +#: ../NEWS:6893 msgid "" ":gh:`136492`: Expose :pep:`667`'s :data:`~types.FrameLocalsProxyType` in " "the :mod:`types` module." msgstr "" -#: ../NEWS:6809 +#: ../NEWS:6896 msgid ":gh:`83336`: ``utf8_sig`` is now aliased to :mod:`encodings.utf_8_sig`" msgstr "" -#: ../NEWS:6811 +#: ../NEWS:6898 msgid "" ":gh:`136523`: Fix :class:`wave.Wave_write` emitting an unraisable when open " "raises." msgstr "" -#: ../NEWS:6814 +#: ../NEWS:6901 msgid ":gh:`136507`: Fix mimetypes CLI to handle multiple file parameters." msgstr "" -#: ../NEWS:6816 +#: ../NEWS:6903 msgid "" ":gh:`52876`: Add missing ``keepends`` (default ``True``) parameter to :meth:" "`!codecs.StreamReaderWriter.readline` and :meth:`!codecs.StreamReaderWriter." "readlines`." msgstr "" -#: ../NEWS:6820 +#: ../NEWS:6907 msgid "" ":gh:`136470`: Correct :class:`concurrent.futures.InterpreterPoolExecutor`'s " "default thread name." msgstr "" -#: ../NEWS:6823 +#: ../NEWS:6910 msgid "" ":gh:`136476`: Fix a bug that was causing the ``get_async_stack_trace`` " "function to miss some frames in the stack trace." msgstr "" -#: ../NEWS:6826 +#: ../NEWS:6913 msgid "" ":gh:`136434`: Fix docs generation of ``UnboundItem`` in :mod:`concurrent." "interpreters` when running with :option:`-OO`." msgstr "" -#: ../NEWS:6829 +#: ../NEWS:6916 msgid "" ":gh:`136380`: Raises :exc:`AttributeError` when accessing :class:`concurrent." "futures.InterpreterPoolExecutor` and subinterpreters are not available." msgstr "" -#: ../NEWS:6833 +#: ../NEWS:6920 msgid "" ":gh:`72327`: Suggest using the system command prompt when ``pip install`` is " "typed into the REPL. Patch by Tom Viner, Richard Si, and Brian Schubert." msgstr "" -#: ../NEWS:6836 +#: ../NEWS:6923 msgid "" ":gh:`135953`: Implement a new high-frequency runtime profiler that leverages " "the existing remote debugging functionality to collect detailed execution " @@ -11658,142 +11786,142 @@ msgid "" "applications." msgstr "" -#: ../NEWS:6846 +#: ../NEWS:6933 msgid "" ":gh:`136021`: Make ``type_params`` parameter required in :func:`!typing." "_eval_type` after a deprecation period for not providing this parameter. " "Also remove the :exc:`DeprecationWarning` for the old behavior." msgstr "" -#: ../NEWS:6851 +#: ../NEWS:6938 msgid "" ":gh:`136286`: Fix pickling failures for protocols 0 and 1 for many objects " "related to subinterpreters." msgstr "" -#: ../NEWS:6854 +#: ../NEWS:6941 msgid "" ":gh:`136047`: Fix issues with :mod:`typing` when the C implementation of :" "mod:`abc` is not available." msgstr "" -#: ../NEWS:6857 +#: ../NEWS:6944 msgid "" ":gh:`136316`: Improve support for evaluating nested forward references in :" "func:`typing.evaluate_forward_ref`." msgstr "" -#: ../NEWS:6860 +#: ../NEWS:6947 msgid "" ":gh:`136306`: :mod:`ssl` can now get and set groups used for key agreement." msgstr "" -#: ../NEWS:6862 +#: ../NEWS:6949 msgid "" ":gh:`136156`: :func:`tempfile.TemporaryFile` no longer uses :data:`os." "O_EXCL` with :data:`os.O_TMPFILE`, so it's possible to use ``linkat()`` on " "the file descriptor. Patch by Victor Stinner." msgstr "" -#: ../NEWS:6866 +#: ../NEWS:6953 msgid "" ":gh:`133982`: Update Python implementation of :class:`io.BytesIO` to be " "thread safe." msgstr "" -#: ../NEWS:6869 +#: ../NEWS:6956 msgid "" ":gh:`136193`: Improve :exc:`TypeError` error message, when richcomparing " "two :class:`types.SimpleNamespace` objects." msgstr "" -#: ../NEWS:6872 +#: ../NEWS:6959 msgid "" ":gh:`136097`: Fix potential infinite recursion and KeyError in ``sysconfig --" "generate-posix-vars``." msgstr "" -#: ../NEWS:6875 +#: ../NEWS:6962 msgid "" ":gh:`85702`: If ``zoneinfo._common.load_tzdata`` is given a package without " "a resource a :exc:`zoneinfo.ZoneInfoNotFoundError` is raised rather than a :" "exc:`PermissionError`. Patch by Victor Stinner." msgstr "" -#: ../NEWS:6879 +#: ../NEWS:6966 msgid "" ":gh:`90733`: Improve error messages when reporting invalid parameters in :" "func:`hashlib.scrypt`. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:6882 +#: ../NEWS:6969 msgid "" ":gh:`134759`: Fix :exc:`UnboundLocalError` in :func:`email.message.Message." "get_payload` when the payload to decode is a :class:`bytes` object. Patch by " "Kliment Lamonov." msgstr "" -#: ../NEWS:6886 +#: ../NEWS:6973 msgid "" ":gh:`136028`: Fix parsing month names containing \"İ\" (U+0130, LATIN " "CAPITAL LETTER I WITH DOT ABOVE) in :func:`time.strptime`. This affects " "locales az_AZ, ber_DZ, ber_MA and crh_UA." msgstr "" -#: ../NEWS:6890 +#: ../NEWS:6977 msgid "" ":gh:`87135`: Acquiring a :class:`threading.Lock` or :class:`threading.RLock` " "at interpreter shutdown will raise :exc:`PythonFinalizationError` if Python " "can determine that it would otherwise deadlock." msgstr "" -#: ../NEWS:6894 +#: ../NEWS:6981 msgid "" ":gh:`135995`: In the palmos encoding, make byte ``0x9b`` decode to ``›`` " "(U+203A - SINGLE RIGHT-POINTING ANGLE QUOTATION MARK)." msgstr "" -#: ../NEWS:6897 +#: ../NEWS:6984 msgid "" ":gh:`105456`: Removed :mod:`!sre_compile`, :mod:`!sre_constants` and :mod:`!" "sre_parse` modules." msgstr "" -#: ../NEWS:6900 +#: ../NEWS:6987 msgid "" ":gh:`53203`: Fix :func:`time.strptime` for ``%c`` and ``%x`` formats on " "locales byn_ER, wal_ET and lzh_TW, and for ``%X`` format on locales ar_SA, " "bg_BG and lzh_TW." msgstr "" -#: ../NEWS:6904 +#: ../NEWS:6991 msgid "" ":gh:`135878`: Fixes a crash of :class:`types.SimpleNamespace` on :term:`free " "threading` builds, when several threads were calling its :meth:`~object." "__repr__` method at the same time." msgstr "" -#: ../NEWS:6908 +#: ../NEWS:6995 msgid "" ":gh:`135853`: Add :func:`math.fmax` and :func:`math.fmin` to get the larger " "and smaller of two floating-point values. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:6911 +#: ../NEWS:6998 msgid "" ":gh:`135836`: Fix :exc:`IndexError` in :meth:`asyncio.loop." "create_connection` that could occur when non-\\ :exc:`OSError` exception is " "raised during connection and socket's ``close()`` raises :exc:`!OSError`." msgstr "" -#: ../NEWS:6915 +#: ../NEWS:7002 msgid "" ":gh:`135853`: :mod:`math`: expose C99 :func:`~math.signbit` function to " "determine whether the sign bit of a floating-point value is set. Patch by " "Bénédikt Tran." msgstr "" -#: ../NEWS:6919 +#: ../NEWS:7006 msgid "" ":gh:`134531`: :mod:`hmac`: use the :manpage:`EVP_MAC(3ssl)` interface for " "HMAC when Python is built with OpenSSL 3.0 and later instead of the " @@ -11801,34 +11929,34 @@ msgid "" "Tran." msgstr "" -#: ../NEWS:6924 +#: ../NEWS:7011 msgid "" ":gh:`135836`: Fix :exc:`IndexError` in :meth:`asyncio.loop." "create_connection` that could occur when the Happy Eyeballs algorithm " "resulted in an empty exceptions list during connection attempts." msgstr "" -#: ../NEWS:6928 +#: ../NEWS:7015 msgid "" ":gh:`135855`: Raise :exc:`TypeError` instead of :exc:`SystemError` when :" "func:`!_interpreters.set___main___attrs` is passed a non-dict object. Patch " "by Brian Schubert." msgstr "" -#: ../NEWS:6932 +#: ../NEWS:7019 msgid "" ":gh:`135823`: :mod:`netrc`: improve the error message when the security " "check for the ownership of the default configuration file ``~/.netrc`` " "fails. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:6936 +#: ../NEWS:7023 msgid "" ":gh:`135815`: :mod:`netrc`: skip security checks if :func:`os.getuid` is " "missing. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:6939 +#: ../NEWS:7026 msgid "" ":gh:`135640`: Address bug where it was possible to call :func:`xml.etree." "ElementTree.ElementTree.write` on an ElementTree object with an invalid root " @@ -11836,12 +11964,12 @@ msgid "" "existed." msgstr "" -#: ../NEWS:6944 +#: ../NEWS:7031 msgid "" ":gh:`90117`: Speed up :mod:`pprint` for :class:`list` and :class:`tuple`." msgstr "" -#: ../NEWS:6946 +#: ../NEWS:7033 msgid "" ":gh:`135759`: :mod:`hashlib`: reject negative digest lengths in OpenSSL-" "based SHAKE objects by raising a :exc:`ValueError`. Previously, negative " @@ -11849,128 +11977,128 @@ msgid "" "`SystemError`. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:6951 +#: ../NEWS:7038 msgid "" ":gh:`123471`: Make concurrent iterations over :class:`itertools.chain` safe " "under :term:`free threading`." msgstr "" -#: ../NEWS:6954 +#: ../NEWS:7041 msgid "" ":gh:`135645`: Added ``supports_isolated_interpreters`` field to :data:`sys." "implementation`." msgstr "" -#: ../NEWS:6957 +#: ../NEWS:7044 msgid "" ":gh:`135646`: Raise consistent :exc:`NameError` exceptions in :func:" "`annotationlib.ForwardRef.evaluate`" msgstr "" -#: ../NEWS:6960 +#: ../NEWS:7047 msgid "" ":gh:`135557`: Fix races on :mod:`heapq` updates and :class:`list` reads on " "the :term:`free threaded ` build." msgstr "" -#: ../NEWS:6963 +#: ../NEWS:7050 msgid "" ":gh:`119180`: Only fetch globals and locals if necessary in :func:" "`annotationlib.get_annotations`" msgstr "" -#: ../NEWS:6966 +#: ../NEWS:7053 msgid "" ":gh:`135561`: Fix a crash on DEBUG builds when an HACL* HMAC routine fails. " "Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:6969 +#: ../NEWS:7056 msgid "" ":gh:`135386`: Fix opening a :mod:`dbm.sqlite3` database for reading from " "read-only file or directory." msgstr "" -#: ../NEWS:6972 +#: ../NEWS:7059 msgid "" ":gh:`135444`: Fix :meth:`asyncio.DatagramTransport.sendto` to account for " "datagram header size when data cannot be sent." msgstr "" -#: ../NEWS:6975 +#: ../NEWS:7062 msgid "" ":gh:`65697`: :class:`configparser`'s error message when attempting to write " "an invalid key is now more helpful." msgstr "" -#: ../NEWS:6978 +#: ../NEWS:7065 msgid "" ":gh:`135497`: Fix :func:`os.getlogin` failing for longer usernames on BSD-" "based platforms." msgstr "" -#: ../NEWS:6981 +#: ../NEWS:7068 msgid "" ":gh:`135487`: Fix :meth:`!reprlib.Repr.repr_int` when given integers with " "more than :func:`sys.get_int_max_str_digits` digits. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:6985 +#: ../NEWS:7072 msgid "" ":gh:`135429`: Fix the argument mismatch in ``_lsprof`` for ``PY_THROW`` " "event." msgstr "" -#: ../NEWS:6988 +#: ../NEWS:7075 msgid "" ":gh:`135368`: Fix :class:`unittest.mock.Mock` generation on :func:" "`dataclasses.dataclass` objects. Now all special attributes are set as it " "was before :gh:`124429`." msgstr "" -#: ../NEWS:6992 +#: ../NEWS:7079 msgid "" ":gh:`135336`: :mod:`json` now encodes strings up to 2.2x faster if they " "consist solely of characters that don’t require escaping." msgstr "" -#: ../NEWS:6995 +#: ../NEWS:7082 msgid "" ":gh:`135335`: :mod:`multiprocessing`: Flush ``stdout`` and ``stderr`` after " "preloading modules in the ``forkserver``." msgstr "" -#: ../NEWS:6998 +#: ../NEWS:7085 msgid "" ":gh:`126631`: Fix :mod:`multiprocessing` ``forkserver`` bug which prevented " "``__main__`` from being preloaded." msgstr "" -#: ../NEWS:7001 +#: ../NEWS:7088 msgid "" ":gh:`133967`: Do not normalize :mod:`locale` name 'C.UTF-8' to 'en_US.UTF-8'." msgstr "" -#: ../NEWS:7003 +#: ../NEWS:7090 msgid "" ":gh:`130870`: Preserve :class:`types.GenericAlias` subclasses in :func:" "`typing.get_type_hints`" msgstr "" -#: ../NEWS:7006 +#: ../NEWS:7093 msgid "" ":gh:`135321`: Raise a correct exception for values greater than 0x7fffffff " "for the ``BINSTRING`` opcode in the C implementation of :mod:`pickle`." msgstr "" -#: ../NEWS:7009 +#: ../NEWS:7096 msgid "" ":gh:`121914`: Changed the names of the symbol tables for lambda expressions " "and generator expressions to \"\" and \"\" respectively to " "avoid conflicts with user-defined names." msgstr "" -#: ../NEWS:7013 +#: ../NEWS:7100 msgid "" ":gh:`135276`: Synchronized zipfile.Path with zipp 3.23, including improved " "performance of :meth:`zipfile.Path.open` for non-reading modes, rely on :" @@ -11980,7 +12108,7 @@ msgid "" "working with a zipfile on disk." msgstr "" -#: ../NEWS:7020 +#: ../NEWS:7107 msgid "" ":gh:`135234`: :mod:`hashlib`: improve exception messages when an OpenSSL " "function failed. When memory allocation fails on OpenSSL's side, a :exc:" @@ -11988,7 +12116,7 @@ msgid "" "Tran." msgstr "" -#: ../NEWS:7025 +#: ../NEWS:7112 msgid "" ":gh:`135244`: :mod:`uuid`: when the MAC address cannot be determined, the 48-" "bit node ID is now generated with a cryptographically-secure pseudo-random " @@ -11997,52 +12125,52 @@ msgid "" "uuid6`." msgstr "" -#: ../NEWS:7031 +#: ../NEWS:7118 msgid "" ":gh:`135241`: The :code:`INT` opcode of the C accelerator :mod:`!_pickle` " "module was updated to look only for \"00\" and \"01\" to push booleans onto " "the stack, aligning with the Python :mod:`pickle` module." msgstr "" -#: ../NEWS:7035 +#: ../NEWS:7122 msgid ":gh:`133934`: Improve :mod:`sqlite3` CLI's ``.help`` message." msgstr "" -#: ../NEWS:7037 +#: ../NEWS:7124 msgid "" ":gh:`135069`: Fix the \"Invalid error handling\" exception in :class:`!" "encodings.idna.IncrementalDecoder` to correctly replace the 'errors' " "parameter." msgstr "" -#: ../NEWS:7041 +#: ../NEWS:7128 msgid "" ":gh:`130662`: +Accept leading zeros in precision and width fields for +:" "class:`~decimal.Decimal` formatting, for example ``format(Decimal(1.25), " "'.016f')``." msgstr "" -#: ../NEWS:7045 +#: ../NEWS:7132 msgid "" ":gh:`130662`: Accept leading zeros in precision and width fields for :class:" "`~fractions.Fraction` formatting, for example ``format(Fraction(1, 3), " "'.016f')``." msgstr "" -#: ../NEWS:7049 +#: ../NEWS:7136 msgid "" ":gh:`135004`: Rewrite and cleanup the internal :mod:`!_blake2` module. Some " "exception messages were changed but their types were left untouched. Patch " "by Bénédikt Tran." msgstr "" -#: ../NEWS:7053 +#: ../NEWS:7140 msgid "" ":gh:`134953`: Expand ``_colorize`` theme with ``keyword_constant`` and " "implement in :term:`repl`." msgstr "" -#: ../NEWS:7056 +#: ../NEWS:7143 msgid "" ":gh:`134978`: :mod:`hashlib`: Supporting the ``string`` keyword parameter in " "hash function constructors such as :func:`~hashlib.new` or the direct hash-" @@ -12052,55 +12180,55 @@ msgid "" "Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:7063 +#: ../NEWS:7150 msgid "" ":gh:`134970`: Fix the \"unknown action\" exception in :meth:`argparse." "ArgumentParser.add_argument_group` to correctly replace the action class." msgstr "" -#: ../NEWS:7067 +#: ../NEWS:7154 msgid "" ":gh:`134718`: By default, omit optional ``Load()`` values in :func:`ast." "dump`." msgstr "" -#: ../NEWS:7070 +#: ../NEWS:7157 msgid "" ":gh:`134718`: :func:`ast.dump` now only omits ``None`` and ``[]`` values if " "they are default values." msgstr "" -#: ../NEWS:7073 +#: ../NEWS:7160 msgid "" ":gh:`134939`: Add the :mod:`concurrent.interpreters` module. See :pep:`734`." msgstr "" -#: ../NEWS:7075 +#: ../NEWS:7162 msgid "" ":gh:`108885`: Run each example as a subtest in unit tests synthesized by :" "func:`doctest.DocFileSuite` and :func:`doctest.DocTestSuite`. Add the :meth:" "`doctest.DocTestRunner.report_skip` method." msgstr "" -#: ../NEWS:7079 +#: ../NEWS:7166 msgid "" ":gh:`134885`: Fix possible crash in the :mod:`compression.zstd` module " "related to setting parameter types. Patch by Jelle Zijlstra." msgstr "" -#: ../NEWS:7082 +#: ../NEWS:7169 msgid "" ":gh:`134857`: Improve error report for :mod:`doctest`\\ s run with :mod:" "`unittest`. Remove :mod:`!doctest` module frames from tracebacks and " "redundant newline character from a failure message." msgstr "" -#: ../NEWS:7086 +#: ../NEWS:7173 msgid "" ":gh:`128840`: Fix parsing long IPv6 addresses with embedded IPv4 address." msgstr "" -#: ../NEWS:7088 +#: ../NEWS:7175 msgid "" ":gh:`133579`: :mod:`curses`: Consistently report failures of curses C API " "calls in module-level methods by raising a :exc:`curses.error`. This " @@ -12111,7 +12239,7 @@ msgid "" "Bénédikt Tran." msgstr "" -#: ../NEWS:7096 +#: ../NEWS:7183 msgid "" ":gh:`133579`: :meth:`curses.window.refresh` and :meth:`curses.window." "noutrefresh` now raise a :exc:`TypeError` instead of :exc:`curses.error` " @@ -12119,7 +12247,7 @@ msgid "" "and-pads>`. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:7101 +#: ../NEWS:7188 msgid "" ":gh:`133579`: :ref:`curses.window `: Consistently " "report failures of curses C API calls in Window methods by raising a :exc:" @@ -12130,19 +12258,19 @@ msgid "" "insstr` and :meth:`~curses.window.insnstr`. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:7110 +#: ../NEWS:7197 msgid "" ":gh:`134771`: The ``time_clockid_converter()`` function now selects correct " "type for ``clockid_t`` on Cygwin which fixes a build error." msgstr "" -#: ../NEWS:7113 +#: ../NEWS:7200 msgid "" ":gh:`134637`: Fix performance regression in calling a :mod:`ctypes` function " "pointer in :term:`free threading`." msgstr "" -#: ../NEWS:7116 +#: ../NEWS:7203 msgid "" ":gh:`134696`: Built-in HACL* and OpenSSL implementations of hash function " "constructors now correctly accept the same *documented* named arguments. For " @@ -12151,127 +12279,127 @@ msgid "" "implementation but these calls were not compatible. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:7123 +#: ../NEWS:7210 msgid "" ":gh:`132710`: If possible, ensure that :func:`uuid.getnode` returns the same " "result even across different processes. Previously, the result was constant " "only within the same process. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:7127 +#: ../NEWS:7214 msgid "" ":gh:`134531`: :mod:`!_hashlib`: Rename internal C functions for :class:`!" "_hashlib.HASH` and :class:`!_hashlib.HASHXOF` objects. Patch by Bénédikt " "Tran." msgstr "" -#: ../NEWS:7131 +#: ../NEWS:7218 msgid "" ":gh:`134698`: Fix a crash when calling methods of :class:`ssl.SSLContext` " "or :class:`ssl.SSLSocket` across multiple threads." msgstr "" -#: ../NEWS:7134 +#: ../NEWS:7221 msgid "" ":gh:`134151`: :mod:`email`: Fix :exc:`TypeError` in :func:`email.utils." "decode_params` when sorting :rfc:`2231` continuations that contain an " "unnumbered section." msgstr "" -#: ../NEWS:7138 +#: ../NEWS:7225 msgid "" ":gh:`134635`: :mod:`zlib`: Allow to combine Adler-32 and CRC-32 checksums " "via :func:`~zlib.adler32_combine` and :func:`~zlib.crc32_combine`. Patch by " "Callum Attryde and Bénédikt Tran." msgstr "" -#: ../NEWS:7142 +#: ../NEWS:7229 msgid "" ":gh:`134657`: :mod:`asyncio`: Remove some private names from ``asyncio." "__all__``." msgstr "" -#: ../NEWS:7145 +#: ../NEWS:7232 msgid "" ":gh:`134210`: :func:`curses.window.getch` now correctly handles signals. " "Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:7148 +#: ../NEWS:7235 msgid "" ":gh:`80334`: :func:`multiprocessing.freeze_support` now checks for work on " "any \"spawn\" start method platform rather than only on Windows." msgstr "" -#: ../NEWS:7151 +#: ../NEWS:7238 msgid "" ":gh:`134582`: Fix tokenize.untokenize() round-trip errors related to t-" "strings braces escaping" msgstr "" -#: ../NEWS:7154 +#: ../NEWS:7241 msgid "" ":gh:`134580`: Improved the styling of HTML diff pages generated by the :" "class:`difflib.HtmlDiff` class, and migrated the output to the HTML5 " "standard." msgstr "" -#: ../NEWS:7158 +#: ../NEWS:7245 msgid "" ":gh:`134565`: :func:`unittest.doModuleCleanups` no longer swallows all but " "first exception raised in the cleanup code, but raises a :exc:" "`ExceptionGroup` if multiple errors occurred." msgstr "" -#: ../NEWS:7162 +#: ../NEWS:7249 msgid "" ":gh:`134546`: Ensure :mod:`pdb` remote debugging script is readable by " "remote Python process." msgstr "" -#: ../NEWS:7165 +#: ../NEWS:7252 msgid "" ":gh:`134451`: Converted ``asyncio.tools.CycleFoundException`` from dataclass " "to a regular exception type." msgstr "" -#: ../NEWS:7168 +#: ../NEWS:7255 msgid "" ":gh:`114177`: Fix :mod:`asyncio` to not close subprocess pipes which would " "otherwise error out when the event loop is already closed." msgstr "" -#: ../NEWS:7171 +#: ../NEWS:7258 msgid "" ":gh:`90871`: Fixed an off by one error concerning the backlog parameter in :" "meth:`~asyncio.loop.create_unix_server`. Contributed by Christian Harries." msgstr "" -#: ../NEWS:7175 +#: ../NEWS:7262 msgid ":gh:`134323`: Fix the :meth:`threading.RLock.locked` method." msgstr "" -#: ../NEWS:7177 +#: ../NEWS:7264 msgid "" ":gh:`86802`: Fixed asyncio memory leak in cancelled shield tasks. For " "shielded tasks where the shield was cancelled, log potential exceptions " "through the exception handler. Contributed by Christian Harries." msgstr "" -#: ../NEWS:7181 +#: ../NEWS:7268 msgid "" ":gh:`71189`: Add support of the all-but-last mode in :func:`os.path." "realpath`." msgstr "" -#: ../NEWS:7184 +#: ../NEWS:7271 msgid "" ":gh:`72902`: Improve speed (x1.1-1.8) of the :class:`~fractions.Fraction` " "constructor for typical inputs (:class:`float`'s, :class:`~decimal." "Decimal`'s or strings)." msgstr "" -#: ../NEWS:7188 +#: ../NEWS:7275 msgid "" ":gh:`134209`: :mod:`curses`: The :meth:`curses.window.instr` and :meth:" "`curses.window.getstr` methods now allocate their internal buffer on the " @@ -12279,104 +12407,104 @@ msgid "" "from 1023 to 2047." msgstr "" -#: ../NEWS:7193 +#: ../NEWS:7280 msgid "" ":gh:`88994`: Change :func:`datetime.datetime.now` to half-even rounding for " "consistency with :func:`datetime.datetime.fromtimestamp`. Patch by John " "Keith Hohm." msgstr "" -#: ../NEWS:7197 +#: ../NEWS:7284 msgid "" ":gh:`80184`: The default queue size is now ``socket.SOMAXCONN`` for :class:" "`socketserver.TCPServer`." msgstr "" -#: ../NEWS:7200 +#: ../NEWS:7287 msgid "" ":gh:`132983`: Add :mod:`!compression.zstd` version information to ``test." "pythoninfo``." msgstr "" -#: ../NEWS:7203 +#: ../NEWS:7290 msgid "" ":gh:`134235`: Updated tab completion on REPL to include builtin modules. " "Contributed by Tom Wang, Hunter Young" msgstr "" -#: ../NEWS:7206 +#: ../NEWS:7293 msgid "" ":gh:`134152`: Fixed :exc:`UnboundLocalError` that could occur during :mod:" "`email` header parsing if an expected trailing delimiter is missing in some " "contexts." msgstr "" -#: ../NEWS:7210 +#: ../NEWS:7297 msgid "" ":gh:`134152`: :mod:`email`: Fix parsing of email message ID with invalid " "domain." msgstr "" -#: ../NEWS:7213 +#: ../NEWS:7300 msgid "" ":gh:`134168`: :mod:`http.server`: Fix IPv6 address binding and :option:`--" "directory ` handling when using HTTPS." msgstr "" -#: ../NEWS:7216 +#: ../NEWS:7303 msgid "" ":gh:`62184`: Remove import of C implementation of :class:`io.FileIO` from " "Python implementation which has its own implementation" msgstr "" -#: ../NEWS:7219 +#: ../NEWS:7306 msgid "" ":gh:`134087`: Remove support for arbitrary positional or keyword arguments " "in the C implementation of :class:`threading.RLock` objects. This was " "deprecated since Python 3.14. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:7223 +#: ../NEWS:7310 msgid "" ":gh:`134173`: Speed up :mod:`asyncio` performance of transferring state from " "thread pool :class:`concurrent.futures.Future` by up to 4.4x. Patch by J. " "Nick Koston." msgstr "" -#: ../NEWS:7227 +#: ../NEWS:7314 msgid "" ":gh:`133982`: Emit :exc:`RuntimeWarning` in the Python implementation of :" "mod:`io` when the :term:`file-like object ` is not closed " "explicitly in the presence of multiple I/O layers." msgstr "" -#: ../NEWS:7231 +#: ../NEWS:7318 msgid "" ":gh:`133890`: The :mod:`tarfile` module now handles :exc:" "`UnicodeEncodeError` in the same way as :exc:`OSError` when cannot extract a " "member." msgstr "" -#: ../NEWS:7234 +#: ../NEWS:7321 msgid "" ":gh:`134097`: Fix interaction of the new :term:`REPL` and :option:`-X " "showrefcount <-X>` command line option." msgstr "" -#: ../NEWS:7237 +#: ../NEWS:7324 msgid "" ":gh:`133889`: The generated directory listing page in :class:`http.server." "SimpleHTTPRequestHandler` now only shows the decoded path component of the " "requested URL, and not the query and fragment." msgstr "" -#: ../NEWS:7241 +#: ../NEWS:7328 msgid "" ":gh:`134098`: Fix handling paths that end with a percent-encoded slash " "(``%2f`` or ``%2F``) in :class:`http.server.SimpleHTTPRequestHandler`." msgstr "" -#: ../NEWS:7244 +#: ../NEWS:7331 msgid "" ":gh:`132124`: On POSIX-compliant systems, :func:`!multiprocessing.util." "get_temp_dir` now ignores :envvar:`TMPDIR` (and similar environment " @@ -12386,34 +12514,34 @@ msgid "" "Tran." msgstr "" -#: ../NEWS:7251 +#: ../NEWS:7338 msgid "" ":gh:`134062`: :mod:`ipaddress`: fix collisions in :meth:`~object.__hash__` " "for :class:`~ipaddress.IPv4Network` and :class:`~ipaddress.IPv6Network` " "objects." msgstr "" -#: ../NEWS:7255 +#: ../NEWS:7342 msgid "" ":gh:`134004`: :mod:`shelve` as well as underlying :mod:`!dbm.dumb` and :mod:" "`!dbm.sqlite` now have :meth:`!reorganize` methods to recover unused free " "space previously occupied by deleted entries." msgstr "" -#: ../NEWS:7259 +#: ../NEWS:7346 msgid "" ":gh:`133970`: Make :class:`!string.templatelib.Template` and :class:`!string." "templatelib.Interpolation` generic." msgstr "" -#: ../NEWS:7262 +#: ../NEWS:7349 msgid "" ":gh:`71253`: Raise :exc:`ValueError` in :func:`open` if *opener* returns a " "negative file-descriptor in the Python implementation of :mod:`io` to match " "the C implementation." msgstr "" -#: ../NEWS:7266 +#: ../NEWS:7353 msgid "" ":gh:`133960`: Simplify and improve :func:`typing.evaluate_forward_ref`. It " "now no longer raises errors on certain invalid types. In several situations, " @@ -12421,24 +12549,24 @@ msgid "" "unsupported." msgstr "" -#: ../NEWS:7271 +#: ../NEWS:7358 msgid "" ":gh:`133925`: Make the private class ``typing._UnionGenericAlias`` hashable." msgstr "" -#: ../NEWS:7273 +#: ../NEWS:7360 msgid "" ":gh:`133604`: Remove :func:`!platform.java_ver` which was deprecated since " "Python 3.13." msgstr "" -#: ../NEWS:7276 +#: ../NEWS:7363 msgid "" ":gh:`133875`: Removed deprecated :meth:`!pathlib.PurePath.is_reserved`. Use :" "func:`os.path.isreserved` to detect reserved paths on Windows." msgstr "" -#: ../NEWS:7279 +#: ../NEWS:7366 msgid "" ":gh:`133873`: Remove the deprecated ``getmark()``, ``setmark()`` and " "``getmarkers()`` methods of the :class:`~wave.Wave_read` and :class:`~wave." @@ -12446,33 +12574,33 @@ msgid "" "Bénédikt Tran." msgstr "" -#: ../NEWS:7284 +#: ../NEWS:7371 msgid "" ":gh:`133866`: Remove the undocumented function :func:`!ctypes." "SetPointerType`, which has been deprecated since Python 3.13. Patch by " "Bénédikt Tran." msgstr "" -#: ../NEWS:7288 +#: ../NEWS:7375 msgid "" ":gh:`133823`: Remove support for ``TD = TypedDict(\"TD\")`` and ``TD = " "TypedDict(\"TD\", None)`` calls for constructing :class:`typing.TypedDict` " "objects with zero field. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:7292 +#: ../NEWS:7379 msgid "" ":gh:`125996`: Fix thread safety of :class:`collections.OrderedDict`. Patch " "by Kumar Aditya." msgstr "" -#: ../NEWS:7295 +#: ../NEWS:7382 msgid "" ":gh:`133817`: Remove support for creating :class:`~typing.NamedTuple` " "classes via the undocumented keyword argument syntax. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:7298 +#: ../NEWS:7385 msgid "" ":gh:`133653`: Fix :class:`argparse.ArgumentParser` with the " "*formatter_class* argument. Fix TypeError when *formatter_class* is a custom " @@ -12482,71 +12610,71 @@ msgid "" "class:`!HelpFormatter`." msgstr "" -#: ../NEWS:7305 +#: ../NEWS:7392 msgid "" ":gh:`133810`: Remove :class:`!http.server.CGIHTTPRequestHandler` and ``--" "cgi`` flag from the :program:`python -m http.server` command-line interface. " "They were deprecated in Python 3.13. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:7309 +#: ../NEWS:7396 msgid "" ":gh:`132641`: Fixed a race in :func:`functools.lru_cache` under free-" "threading." msgstr "" -#: ../NEWS:7312 +#: ../NEWS:7399 msgid "" ":gh:`133783`: Fix bug with applying :func:`copy.replace` to :mod:`ast` " "objects. Attributes that default to ``None`` were incorrectly treated as " "required for manually created AST nodes." msgstr "" -#: ../NEWS:7316 +#: ../NEWS:7403 msgid "" ":gh:`133684`: Fix bug where :func:`annotationlib.get_annotations` would " "return the wrong result for certain classes that are part of a class " "hierarchy where ``from __future__ import annotations`` is used." msgstr "" -#: ../NEWS:7320 +#: ../NEWS:7407 msgid "" ":gh:`77057`: Fix handling of invalid markup declarations in :class:`html." "parser.HTMLParser`." msgstr "" -#: ../NEWS:7323 +#: ../NEWS:7410 msgid "" ":gh:`130328`: Speedup pasting in ``PyREPL`` on Windows in a legacy console. " "Patch by Chris Eibl." msgstr "" -#: ../NEWS:7326 +#: ../NEWS:7413 msgid "" ":gh:`133701`: Fix bug where :class:`typing.TypedDict` classes defined under " "``from __future__ import annotations`` and inheriting from another " "``TypedDict`` had an incorrect ``__annotations__`` attribute." msgstr "" -#: ../NEWS:7330 +#: ../NEWS:7417 msgid "" ":gh:`133656`: Remove deprecated :meth:`!zipimport.zipimporter.load_module`. " "Use :meth:`zipimport.zipimporter.exec_module` instead." msgstr "" -#: ../NEWS:7333 +#: ../NEWS:7420 msgid "" ":gh:`133722`: Added a *color* option to :func:`difflib.unified_diff` that " "colors output similar to :program:`git diff`." msgstr "" -#: ../NEWS:7336 +#: ../NEWS:7423 msgid "" ":gh:`133489`: :func:`random.getrandbits` can now generate more that 2 :sup:" "`31` bits. :func:`random.randbytes` can now generate more that 256 MiB." msgstr "" -#: ../NEWS:7340 +#: ../NEWS:7427 msgid "" ":gh:`133595`: Clean up :class:`sqlite3.Connection` APIs. All parameters of :" "func:`sqlite3.connect` except *database* are now keyword-only. The first " @@ -12557,7 +12685,7 @@ msgid "" "set_trace_callback` is now positional-only." msgstr "" -#: ../NEWS:7348 +#: ../NEWS:7435 msgid "" ":gh:`133581`: Improve unparsing of t-strings in :func:`ast.unparse` and " "``from __future__ import annotations``. Empty t-strings now round-trip " @@ -12565,57 +12693,57 @@ msgid "" "Zijlstra." msgstr "" -#: ../NEWS:7353 +#: ../NEWS:7440 msgid "" ":gh:`133577`: Add parameter ``formatter`` to :func:`logging.basicConfig`." msgstr "" -#: ../NEWS:7355 +#: ../NEWS:7442 msgid "" ":gh:`92897`: Removed the ``check_home`` parameter from :func:`sysconfig." "is_python_build`, deprecated since Python 3.12." msgstr "" -#: ../NEWS:7358 +#: ../NEWS:7445 msgid "" ":gh:`133551`: Support t-strings (:pep:`750`) in :mod:`annotationlib`. Patch " "by Jelle Zijlstra." msgstr "" -#: ../NEWS:7361 +#: ../NEWS:7448 msgid "" ":gh:`133517`: Remove :func:`os.listdrives`, :func:`os.listvolumes` and :func:" "`os.listmounts` in non Windows desktop builds since the underlying " "functionality is missing." msgstr "" -#: ../NEWS:7365 +#: ../NEWS:7452 msgid "" ":gh:`133439`: Fix dot commands with trailing spaces are mistaken for multi-" "line SQL statements in the sqlite3 command-line interface." msgstr "" -#: ../NEWS:7368 +#: ../NEWS:7455 msgid ":gh:`133447`: Add basic color to :mod:`sqlite3` CLI interface." msgstr "" -#: ../NEWS:7370 +#: ../NEWS:7457 msgid ":gh:`133253`: Fix thread-safety issues in :mod:`linecache`." msgstr "" -#: ../NEWS:7372 +#: ../NEWS:7459 msgid "" ":gh:`133390`: Support keyword completion in the :mod:`sqlite3` command-line " "interface and add :data:`sqlite3.SQLITE_KEYWORDS` constant." msgstr "" -#: ../NEWS:7375 +#: ../NEWS:7462 msgid "" ":gh:`132493`: Avoid accessing ``__annotations__`` unnecessarily in :func:" "`inspect.signature`." msgstr "" -#: ../NEWS:7378 +#: ../NEWS:7465 msgid "" ":gh:`133017`: Improve the error message of :func:`multiprocessing." "sharedctypes.Array`, :func:`multiprocessing.sharedctypes.RawArray`, :func:" @@ -12623,13 +12751,13 @@ msgid "" "RawValue` when an invalid typecode is passed. Patch by Tomas Roun" msgstr "" -#: ../NEWS:7385 +#: ../NEWS:7472 msgid "" ":gh:`132813`: Improve error messages for incorrect types and values of :" "class:`csv.Dialect` attributes." msgstr "" -#: ../NEWS:7388 +#: ../NEWS:7475 msgid "" ":gh:`132969`: Prevent the :class:`~concurrent.futures.ProcessPoolExecutor` " "executor thread, which remains running when :meth:`shutdown(wait=False) " @@ -12641,7 +12769,7 @@ msgid "" "pool." msgstr "" -#: ../NEWS:7397 +#: ../NEWS:7484 msgid "" ":gh:`132876`: ``ldexp()`` on Windows doesn't round subnormal results before " "Windows 11, but should. Python's :func:`math.ldexp` wrapper now does round " @@ -12649,62 +12777,62 @@ msgid "" "on Windows versions before 11." msgstr "" -#: ../NEWS:7402 +#: ../NEWS:7489 msgid "" ":gh:`133009`: :mod:`xml.etree.ElementTree`: Fix a crash in :meth:`Element." "__deepcopy__ ` when the element is concurrently " "mutated. Patch by Bénédikt Tran." msgstr "" -#: ../NEWS:7406 +#: ../NEWS:7493 msgid "" ":gh:`132908`: Add :func:`math.isnormal` and :func:`math.issubnormal` " "functions. Patch by Sergey B Kirpichev." msgstr "" -#: ../NEWS:7409 +#: ../NEWS:7496 msgid "" ":gh:`95380`: :func:`fcntl.fcntl` and :func:`fcntl.ioctl`: Remove the 1024 " "bytes limit on the size of not mutated bytes-like argument." msgstr "" -#: ../NEWS:7412 +#: ../NEWS:7499 msgid "" ":gh:`122781`: Fix ``%z`` directive in :func:`datetime.datetime.strptime` to " "allow for no provided offset as was documented." msgstr "" -#: ../NEWS:7415 +#: ../NEWS:7502 msgid "" ":gh:`123471`: Make concurrent iterations over :class:`itertools." "combinations` and :class:`itertools.product` safe under free-threading." msgstr "" -#: ../NEWS:7418 +#: ../NEWS:7505 msgid "" ":gh:`127081`: Fix libc thread safety issues with :mod:`dbm` by performing " "stateful operations in critical sections." msgstr "" -#: ../NEWS:7421 +#: ../NEWS:7508 msgid "" ":gh:`127081`: Fix libc thread safety issues with :mod:`os` by replacing " "``getlogin`` with ``getlogin_r`` re-entrant version." msgstr "" -#: ../NEWS:7424 +#: ../NEWS:7511 msgid "" ":gh:`127081`: Fix libc thread safety issues with :mod:`pwd` by locking " "access to ``getpwall``." msgstr "" -#: ../NEWS:7427 +#: ../NEWS:7514 msgid "" ":gh:`132551`: Make :class:`io.BytesIO` safe in :term:`free-threaded ` build." msgstr "" -#: ../NEWS:7430 +#: ../NEWS:7517 msgid "" ":gh:`107583`: Fix :class:`!Flag` inversion when flag set has missing values " "(:class:`!IntFlag` still flips all bits); fix negative assigned values " @@ -12712,40 +12840,40 @@ msgid "" "missing values)." msgstr "" -#: ../NEWS:7435 +#: ../NEWS:7522 msgid "" ":gh:`87790`: Support underscore and comma as thousands separators in the " "fractional part for :class:`~fractions.Fraction`'s formatting. Patch by " "Sergey B Kirpichev." msgstr "" -#: ../NEWS:7439 +#: ../NEWS:7526 msgid "" ":gh:`87790`: Support underscore and comma as thousands separators in the " "fractional part for :class:`~decimal.Decimal`'s formatting. Patch by Sergey " "B Kirpichev." msgstr "" -#: ../NEWS:7443 +#: ../NEWS:7530 msgid "" ":gh:`131884`: Fix formatting issues in :func:`json.dump` when both *indent* " "and *skipkeys* are used." msgstr "" -#: ../NEWS:7446 +#: ../NEWS:7533 msgid "" ":gh:`131788`: Make ``ResourceTracker.send`` from :mod:`multiprocessing` re-" "entrant safe" msgstr "" -#: ../NEWS:7449 +#: ../NEWS:7536 msgid "" ":gh:`91349`: Adjust default ``compressionlevel=`` to 6 (down from 9) in :mod:" "`gzip` and :mod:`tarfile`. It is the default level used by most compression " "tools and a better tradeoff between speed and performance." msgstr "" -#: ../NEWS:7453 +#: ../NEWS:7540 msgid "" ":gh:`131146`: Fix :class:`calendar.TextCalendar`, :class:`calendar." "HTMLCalendar`, and the :mod:`calendar` CLI to display month names in the " @@ -12755,13 +12883,13 @@ msgid "" "itself, if the locale supports it." msgstr "" -#: ../NEWS:7461 +#: ../NEWS:7548 msgid "" ":gh:`123471`: Make concurrent iterations over :class:`itertools.cycle` safe " "under free-threading." msgstr "" -#: ../NEWS:7464 +#: ../NEWS:7551 msgid "" ":gh:`130664`: Handle corner-case for :class:`~fractions.Fraction`'s " "formatting: treat zero-padding (preceding the width field by a zero " @@ -12769,76 +12897,76 @@ msgid "" "alignment type of ``'='``, just as in case of :class:`float`'s." msgstr "" -#: ../NEWS:7469 +#: ../NEWS:7556 msgid "" ":gh:`130999`: Avoid exiting the new REPL and offer suggestions even if there " "are non-string candidates when errors occur." msgstr "" -#: ../NEWS:7472 +#: ../NEWS:7559 msgid "" ":gh:`88473`: Implement a fast path for :class:`datetime.date` objects in :" "func:`datetime.date.today` which results in a 5x performance gain while " "proper subclasses retain their previous performance." msgstr "" -#: ../NEWS:7476 +#: ../NEWS:7563 msgid "" ":gh:`126883`: Add check that timezone fields are in range for :meth:" "`datetime.datetime.fromisoformat` and :meth:`datetime.time.fromisoformat`. " "Patch by Semyon Moroz." msgstr "" -#: ../NEWS:7480 +#: ../NEWS:7567 msgid "" ":gh:`125028`: :data:`functools.Placeholder` cannot be passed to :func:" "`functools.partial` as a keyword argument." msgstr "" -#: ../NEWS:7483 +#: ../NEWS:7570 msgid "" ":gh:`125843`: If possible, indicate which :mod:`curses` C function or macro " "is responsible for raising a :exc:`curses.error` exception. Patch by " "Bénédikt Tran." msgstr "" -#: ../NEWS:7487 +#: ../NEWS:7574 msgid "" ":gh:`119109`: :func:`functools.partial` calls are now faster when keyword " "arguments are used." msgstr "" -#: ../NEWS:7490 +#: ../NEWS:7577 msgid "" ":gh:`124033`: ``SimplePath`` is now presented in ``importlib.metadata." "__all__``." msgstr "" -#: ../NEWS:7493 +#: ../NEWS:7580 msgid "" ":gh:`91216`: ``importlib.metadata`` now raises a ``KeyError`` instead of " "returning ``None`` when a key is missing from the metadata." msgstr "" -#: ../NEWS:7496 +#: ../NEWS:7583 msgid "" ":gh:`120492`: ``importlib.metadata`` now prioritizes valid dists to invalid " "dists when retrieving by name." msgstr "" -#: ../NEWS:7499 +#: ../NEWS:7586 msgid "" ":gh:`99631`: The :mod:`shelve` module now accepts custom serialization and " "deserialization functions." msgstr "" -#: ../NEWS:7502 +#: ../NEWS:7589 msgid "" ":gh:`119186`: Slightly speed up :func:`os.walk` by calling :func:`os.path." "join` less often." msgstr "" -#: ../NEWS:7505 +#: ../NEWS:7592 msgid "" ":gh:`120170`: Fix an issue in the :mod:`!_pickle` extension module in which " "importing :mod:`multiprocessing` could change how pickle identifies which " @@ -12846,18 +12974,18 @@ msgid "" "objects." msgstr "" -#: ../NEWS:7510 +#: ../NEWS:7597 msgid "" ":gh:`118981`: Fix potential hang in ``multiprocessing.popen_spawn_posix`` " "that can happen when the child proc dies early by closing the child fds " "right away." msgstr "" -#: ../NEWS:7514 ../NEWS:19478 +#: ../NEWS:7601 ../NEWS:19565 msgid ":gh:`105497`: Fix flag mask inversion when unnamed flags exist." msgstr "" -#: ../NEWS:7516 +#: ../NEWS:7603 msgid "" ":gh:`99813`: :mod:`ssl` now uses ``SSL_sendfile`` internally when it is " "possible (see :data:`~ssl.OP_ENABLE_KTLS`). The function sends a file more " @@ -12865,54 +12993,54 @@ msgid "" "additional context switches. Patch by Illia Volochii." msgstr "" -#: ../NEWS:7521 +#: ../NEWS:7608 msgid "" ":gh:`62824`: Fix aliases for ``iso8859_8`` encoding. Patch by Dave Goncalves." msgstr "" -#: ../NEWS:7523 +#: ../NEWS:7610 msgid "" ":gh:`86155`: :meth:`html.parser.HTMLParser.close` no longer loses data when " "the ``